Forum: PC-Programmierung Zukunft von Closed Source Software


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Stefan H. (Firma: dm2sh) (stefan_helmert)


Lesenswert?

Hallo,

Die LLMs, wie z. B. GPT4, werden immer besser. Sie können zum Teil 
funktionsfähigen C++-Code schreiben. GitHub-Copilot ist sogar darauf 
optimiert. Nun ist es doch nur noch eine Frage der Zeit, bis sehr gute 
KI-basierte Decompiler zur Verfügung stehen, welche von umfangreichen, 
optimierten Maschinencode Kontroll- und Datenflussgrafen extrahieren 
können, welche sie normalisieren und mit gelerntem Quellcode matchen 
können, welcher das gleiche Verhalten aufweist. Eines Tages wird der 
"zurückgeholte" Quellcode sicherlich besser sein, als der originale. Er 
kann von der KI sogar dem gewünschten Coding-Style angepasst werden, 
auch Kommentare oder eine ganze Entwicklerdoku in beliebiger Sprache 
wird erzeugt werden können.

Kann es dann überhaupt noch Closed Source Software geben? Wird 
kommerzielle Software dann in die Cloud verbannt?

U. u. ist es sogar ganz legal, den entstandenen Quellcode neu 
zukomilieren und die Software selbst zu verkaufen. Decompiling ist ja 
zum Zwecke der Herstellung der Kompatibilität erlaubt. Wenn dann MS 
Office komplett dekompiliert wird, alle Hinweise auf MS entfernt, die 
Erscheinungsform und Bedienung etwas modifiziert werden, hat die KI eben 
eine kompatible Software neu entwickelt, die sowohl in Dateiformat als 
auch dem Bedienkonzept mit der kommerziellen Software kompatibel ist.

von Oliver S. (oliverso)


Lesenswert?

Stefan H. schrieb:
> Nun ist es doch nur noch eine Frage der Zeit, bis sehr gute
> KI-basierte Decompiler zur Verfügung stehen, welche von umfangreichen,
> optimierten Maschinencode Kontroll- und Datenflussgrafen extrahieren
> können, welche sie normalisieren und mit gelerntem Quellcode matchen
> können, welcher das gleiche Verhalten aufweist.

Ach so. Na dann…

Oliver

von Steve van de Grens (roehrmond)


Lesenswert?

Lass mal frische Luft rein!

von Ob S. (Firma: 1984now) (observer)


Lesenswert?

Stefan H. schrieb:

> Nun ist es doch nur noch eine Frage der Zeit, bis sehr gute
> KI-basierte Decompiler zur Verfügung stehen, welche von umfangreichen,
> optimierten Maschinencode Kontroll- und Datenflussgrafen extrahieren
> können, welche sie normalisieren und mit gelerntem Quellcode matchen
> können, welcher das gleiche Verhalten aufweist. Eines Tages wird der
> "zurückgeholte" Quellcode sicherlich besser sein, als der originale.

Na, dann warten wir doch mal ganz entspannt ab, bis es soweit ist. Ich 
werde es mit an Sicherheit grenzender Wahrscheinlichkeit nicht mehr 
erleben.

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Ich wette, diese sogenannte KI wird uns eines Tages noch deutlich mehr 
Probleme machen, als sie uns löst. Irgendwann wird man sagen der Mensch 
war mal ein Herdentier und in grauer Vorzeit gab es noch soziale 
Interaktion... und niemand wird es glauben.

von Lotta  . (mercedes)


Lesenswert?

Naja, einen ki-gestützten Decompiler zu bauen find ich
schon verdammt schwer.
Da ist ja nicht nur die Optimierung ne Baustelle, der Compiler lässt
ja auch alle Variablennamen und die Namen der Funktionen weg,
die nicht in DLLs oder vom System aus referenziert werden.

Da find ich einen ki-gesteuerten Passwordcracker schon realistischer.
Gib den Namen des Users ein, und der Cracker wertet alles aus,
was der user so im Internet macht, seine Nöte, Sorgen, seine Haustiere
seinen Charakter u.s.w. und errät dann so das Passwort des Users.


mfg

von Εrnst B. (ernst)


Lesenswert?

Lotta  . schrieb:
> Da find ich einen ki-gesteuerten Passwordcracker schon realistischer.

viel zu teuer. Wenn du die KI erst auf den User trainieren musst, geht 
da das zig-tausendfache bis millionenfache an Rechenzeit und damit 
Kosten drauf, was eine simple brute-force-Attacke kosten würde.
Wenn du eine vortrainierte KI nimmst, und die zusammengesammelten Infos 
über den User in den Kontext der KI packst, bist du zum einen durch die 
geringe Kontextgröße limitiert, und zum anderen immer noch viel zu 
teuer.

Zum Vergleich: Ein simpler Gaming-PC mit Mittelklasse-Grafikkarte testet 
(je nach Passwort-Verschlüsselung) >10.000.000.000 Passwörter pro 
Sekunde durch.
ChatGPT4 braucht ein ganzes Rechenzentrum voller 
KI-Beschleuniger-Hardware um überhaupt auf 100 Passwörter/Sekunde zu 
kommen.

Eher realistisch: automatisiert so Passwort-Reset-Fragen durchspielen 
("Wie war der Name des Hundes deiner Großmutter") oder den Chat-Bot den 
Support-Mitarbeiter zulabern lassen, bis der das Passwort zurücksetzt.

von Kurt (sommerwin)


Lesenswert?

Stefan H. schrieb:
> Decompiling ist ja zum Zwecke der Herstellung der Kompatibilität
> erlaubt. Wenn dann MS Office komplett dekompiliert wird, alle Hinweise
> auf MS entfernt, die Erscheinungsform und Bedienung etwas modifiziert
> werden, hat die KI eben eine kompatible Software neu entwickelt, die
> sowohl in Dateiformat als auch dem Bedienkonzept mit der kommerziellen
> Software kompatibel ist.

Sowas hat vor vielen Jahren mal einer mit einem meiner C64 Programme 
gemacht. Copyrigt Hinweise gefälscht, ein paar Farben verändert usw. 
Meine Antwort darauf war dann eine Anzeige wegen Copyright Verletzung. 
Da ich anhand einer Prüfsumme an einer bestimmten Stelle des Quellcodes 
nachweisen konnte, dass das Programm von mir stammte, bekam der dann 
prompt die passende Antwort bekommen. 20.000 DM Strafe und 
Schadenersatz.

von Max M. (max_mueller)


Lesenswert?

@Stefan H.
Absolut, ja, ich wette, erste Programme dieser Art werden in 2 Jahren in 
den Medien sein und nicht lange danach, zu kaufen sein.
Jemand, der nicht erkennt, das sowas einer der vielen Einsatzbereiche 
der Ki sein wird, verpennt viel Potential.

@Ben B
Und ja, ich denke ebenfalls, das die Ki und noch ganz erhebliche 
Probleme bereiten wird in vielerlei Hinsicht, leider
Und das diese teilweise auch daher kommen, das die Entwicklung rasend 
schnell gehen wird, was viele gar nicht realisiert haben, bislang.

Die Sprünge werden jedes Jahr ganz erheblich sein, und der normalbürger 
bekommt davon erstmal nur wenig mit, dann aber geht es Schlag auf Schlag 
und das große Oha,, ohh usw..

von Jack V. (jackv)


Lesenswert?

Kurt schrieb:
> Da ich anhand einer Prüfsumme an einer bestimmten Stelle des Quellcodes
> nachweisen konnte, dass das Programm von mir stammte, bekam der dann
> prompt die passende Antwort bekommen. 20.000 DM Strafe und
> Schadenersatz.

Gibt es etwas, das diese Geschichte bestätigt? Aktenzeichen, Erwähnung 
in den Medien, etc.? Welcher Art war das Programm, in welcher Sprache 
geschrieben? Wie muss man sich das mit der Prüfsumme vorstellen?

von Kurt (sommerwin)


Lesenswert?

Jack V. schrieb:
> Kurt schrieb:
>> Da ich anhand einer Prüfsumme an einer bestimmten Stelle des Quellcodes
>> nachweisen konnte, dass das Programm von mir stammte, bekam der dann
>> prompt die passende Antwort bekommen. 20.000 DM Strafe und
>> Schadenersatz.
>
> Gibt es etwas, das diese Geschichte bestätigt? Aktenzeichen, Erwähnung
> in den Medien, etc.? Welcher Art war das Programm, in welcher Sprache
> geschrieben? Wie muss man sich das mit der Prüfsumme vorstellen?

Jack V. schrieb:
> Kurt schrieb:
>> Da ich anhand einer Prüfsumme an einer bestimmten Stelle des Quellcodes
>> nachweisen konnte, dass das Programm von mir stammte, bekam der dann
>> prompt die passende Antwort bekommen. 20.000 DM Strafe und
>> Schadenersatz.
>
> Gibt es etwas, das diese Geschichte bestätigt? Aktenzeichen, Erwähnung
> in den Medien, etc.? Welcher Art war das Programm, in welcher Sprache
> geschrieben? Wie muss man sich das mit der Prüfsumme vorstellen?

Ein Aktenzeichen hab ich nicht mehr, das ist schon viel zu lange her. 
Das war ein Programm zur Auswertung von Fuchsjagden, Basic und 
Maschinencode gemischt. Ich hab das damals an den M&T Verlag geschickt. 
Dummerweise hat der Fälscher "sein Programm" ebenfalls an M&T geschickt 
und daraufhin wurde ich zur Klärung angeschrieben. Dann kam das Ganze 
ins Rollen. Eine Prüfsumme bilden geht ganz einfach: z.B. einen oder 
mehrere Blöcke aus dem Maschinenprogramm mit einem dir bekannten 
Passwort verknüpfen und das Ergebnis ans Ende des Maschinencode hängen, 
oder einfach merken. Das merkt kein Mensch und der Fälscher müsste dann 
im Ernstfall genau erklären, wie er da "zufällig" auf dasselbe Ergebnis 
kommt.

von Frank O. (frank_o)


Lesenswert?

Lotta  . schrieb:
> Naja, einen ki-gestützten Decompiler zu bauen find ich
> schon verdammt schwer.

Braucht man ja gar nicht.
Aber etwas in so einer Richtung, wie der TO fragt, wird es sicher 
irgendwann geben.
Angenommen es gibt eine alte Steuerung, für die es keine Software mehr 
gibt.
Wie macht man das heute, wenn man eine neue dafür bauen müsste?
Man würde alle Zeitabläufe und alle Sensordaten lesen und danach dann 
eine neue Steuerung bauen.
Dass das irgendwann eine spezielle KI kann, das kann ich mir gut 
vorstellen.
An eine universelle KI glaube ich allerdings nicht. Jedenfalls nicht in 
den nächsten 100 Jahren.

von Steffen K. (botnico)


Lesenswert?

Von dem vom TE geschilderten Szenario sind in erster Linie die 
Software-Entwickler betroffen, umso mehr, je weiter weg von der 
Hardware.
Also reine Software, OOP, Datenbanken usw.

Bei der Hardware-Entwicklung schaut das schon ganz anders aus. das geht 
mit der Technik, die hinter GPT steht nicht - da kommt was raus, aber 
nichts brauchbares. Man denke an die Filterung von VDDA, wo man die 
Störenfriede analysieren muss, um ein dafür genau passendes Filter zu 
entwickeln. Das funktioniert dann genau in dieser Schaltung, aber schon 
wenn man den Buck-Converter gegen einen anderen austauscht, kann schon 
wieder eine spezifische Anpassung erforderlich sein.

von Max M. (max_mueller)


Lesenswert?

Zumindest kurzfristig, ja.
Interessant sind die vielen "nicht lesenswert"
Ist das die Panik betroffener?
Wie gesagt, das es so kommen wird, dafür braucht man kein Hellseher 
sein.
Und auch wenn einige sagen es wird keine Programmierer kosten, ist das 
natürlich Unsinn, da dadurch viel besser und schneller gearbeitet werden 
kann, werden zumindest die ganzen schlechten Programmierer aussortiert 
und nur noch die besten Jobs in solchen Bereichen bekommen

von Frank O. (frank_o)


Lesenswert?

Max M. schrieb:
> Interessant sind die vielen "nicht lesenswert"

Ich glaube das kann man hier nicht mehr als Maßstab sehen.
Es gibt mindestens einen Bot. Dann gibt es noch "spezielle Fans", die 
dir pauschal immer ein Minus geben, weil sie dich nicht mögen.

Ich bewerte auch, aber meistens nur positiv. Aber ich messe dem nicht 
mehr viel Bedeutung bei.

von Peter D. (peda)


Lesenswert?

Εrnst B. schrieb:
> Ein simpler Gaming-PC mit Mittelklasse-Grafikkarte testet
> (je nach Passwort-Verschlüsselung) >10.000.000.000 Passwörter pro
> Sekunde durch.

Da gibt es eine ganz einfache Abhilfe. Bei jeder fehlerhaften 
Paßworteingabe wird die Antwortzeit verdoppelt.

von Lajos (Gast)


Lesenswert?


von Εrnst B. (ernst)


Lesenswert?

Peter D. schrieb:
> Da gibt es eine ganz einfache Abhilfe. Bei jeder fehlerhaften
> Paßworteingabe wird die Antwortzeit verdoppelt.

Warum sollte der Angreifer das tun? Aus Mitleid mit den Opfern? Als 
Handicap, weil's sonst zu leicht wäre?

Der übliche Fall ist: Angreifer bricht in Webseite X ein, zieht die 
Kundendatenbank herunter.
Hat dann Millionen an Email-Adressen mit zugehörigen verschlüsselten 
Passwörtern.
Darauf setzt er den Rechner an, lässt den (offline) ein paar Tage 
rödeln, zahlt einen Zehner an Stromkosten, und hat danach vielleicht 
100.000 Email/Passwort-Kombinationen entschlüsselt.
Mit denen geht er auf Entdeckungsreise, und klappert alle möglichen 
anderen Webseiten ab, ob da dasselbe Passwort verwendet wurde. Profit.

So ein Rate-Limit oder Sperrung bei häufiger Falscheingabe hat sowieso 
so gut wie jeder Webservice. Da ist's dann auch egal ob du 1.000.000 der 
häufigsten Passwörter  durchprobierst, oder nur 10.000 für teures Geld 
von der KI vorselektierte Vorschläge probieren willst. Beides wird nur 
sehr unwahrscheinlich zum Erfolg führen.

von Jack V. (jackv)


Lesenswert?

Εrnst B. schrieb:
> Zum Vergleich: Ein simpler Gaming-PC mit Mittelklasse-Grafikkarte testet
> (je nach Passwort-Verschlüsselung) >10.000.000.000 Passwörter pro
> Sekunde durch.

Deswegen wurden neue Schlüsselableitungsfunktionen wie beispielsweise 
Argon2id erfunden, auf die man tunlichst auch umstellen sollte, wenn man 
denn noch mit Passphrases für Verschlüsselung hantiert – da sieht dein 
Gaming-PC kein Land mehr: auf meinem Spielerechner, der 
leistungstechnisch in der oberen Mittelklasse zu verorten ist, sind’s 
genau 13 Versuche in zwei Sekunden ohne GPU, mit GPU ist’s etwa das 
Zwanzigfache. Also weit weg von 10Mrd/s …

Die zweite Stufe wären dann Hardwareschlüssel: selbst, wenn der 
Angreifer aus irgendwelchen Gründen das verschlüsselte Laufwerk und 
Schlüssel in die Finger bekommen hat, hat er dort genau drei Versuche – 
und dann war’s das für ihn, egal, was für Hardware er in der Hinterhand 
hat. Von diesen Schlüsseln lässt sich auch keine Kopie erstellen, um 
mehr Versuche zu bekommen. Kosten um die 20-30€ – zumindest mir ist’s 
das wert :)

Edits: Benchmarks nachgereicht.

: Bearbeitet durch User
von Arc N. (arc)


Lesenswert?

Stefan H. schrieb:
> Kann es dann überhaupt noch Closed Source Software geben? Wird
> kommerzielle Software dann in die Cloud verbannt?

Ja, da können sich die LLMs oder irgendwelche zukünftigen "KIs" noch so 
viel zusammenphantasieren.
https://en.wikipedia.org/wiki/Indistinguishability_obfuscation

> U. u. ist es sogar ganz legal, den entstandenen Quellcode neu
> zukomilieren und die Software selbst zu verkaufen. Decompiling ist ja
> zum Zwecke der Herstellung der Kompatibilität erlaubt. Wenn dann MS
> Office komplett dekompiliert wird, alle Hinweise auf MS entfernt, die
> Erscheinungsform und Bedienung etwas modifiziert werden, hat die KI eben
> eine kompatible Software neu entwickelt, die sowohl in Dateiformat als
> auch dem Bedienkonzept mit der kommerziellen Software kompatibel ist.

Nein.
§69e UrhG
>(1) Die Zustimmung des Rechtsinhabers ist nicht erforderlich, wenn die
>Vervielfältigung des Codes oder die Übersetzung der Codeform im Sinne des
>§69c Nr. 1 und 2 unerläßlich ist, um die erforderlichen Informationen zur
>Herstellung der Interoperabilität eines unabhängig geschaffenen
>Computerprogramms mit anderen Programmen zu erhalten, sofern folgende
>Bedingungen erfüllt sind:
>1. Die Handlungen werden von dem Lizenznehmer oder von einer anderen zur
>Verwendung eines Vervielfältigungsstücks des Programms berechtigten Person
>oder in deren Namen von einer hierzu ermächtigten Person vorgenommen;
>2. die für die Herstellung der Interoperabilität notwendigen Informationen
>sind für die in Nummer 1 genannten Personen noch nicht ohne weiteres
>zugänglich gemacht;
>3. die Handlungen beschränken sich auf die Teile des ursprünglichen
>Programms, die zur Herstellung der Interoperabilität notwendig sind.
>(2) Bei Handlungen nach Absatz 1 gewonnene Informationen dürfen nicht
>1. zu anderen Zwecken als zur Herstellung der Interoperabilität des
>unabhängig geschaffenen Programms verwendet werden,
>2. an Dritte weitergegeben werden, es sei denn, daß dies für die
>Interoperabilität des unabhängig geschaffenen Programms notwendig ist,
>3. für die Entwicklung, Herstellung oder Vermarktung eines Programms mit im
>wesentlichen ähnlicher Ausdrucksform oder für irgendwelche anderen das
> Urheberrecht verletzenden Handlungen verwendet werden.
>(3) Die Absätze 1 und 2 sind so auszulegen, daß ihre Anwendung weder die
>normale Auswertung des Werkes beeinträchtigt noch die berechtigten
>Interessen des Rechtsinhabers unzumutbar verletzt.
https://www.gesetze-im-internet.de/urhg/BJNR012730965.html

: Bearbeitet durch User
von Frank O. (frank_o)


Lesenswert?

Peter D. schrieb:
> Da gibt es eine ganz einfache Abhilfe. Bei jeder fehlerhaften
> Paßworteingabe wird die Antwortzeit verdoppelt.

Ach so, dann bist du also der, der das in so manche Geräte rein 
programmiert hat ...
SCNR

von Purzel H. (hacky)


Lesenswert?

Eigentlich macht nichts mehr einen Sinn. Wir werden ueberrollt. Der Witz 
ist aber nicht besser wie die KI zu sein. Aehnlich zu :
.. du zusammen mit deinem Freund werden von einem Baeren gejagt.. du 
musst nicht schneller wie der Baer sein, das geht gar nicht, nur 
schneller wie der Freund...
Also sei smarter wie der Rest, mit Hilfe der KI. Weshalb ein MSOffice 
klonen, wenn deine KI ja direkt den Output eines MSOffice generieren 
kann. Du willst ja gar nicht etwas wie MSOffice bedienen, wenn's ohne 
geht. Du willst eine Powerpoint Praesentation, wozu dann noch 
Powerpoint, wenn die KI ja eh den Inhalt einfuellen soll. Dann soll sie 
gleich die Praesentation machen.

: Bearbeitet durch User
von Martin H. (horo)


Lesenswert?

Purzel H. schrieb:
> .. du zusammen mit deinem Freund werden von einem Baeren gejagt.. du
> musst nicht schneller wie der Baer sein, das geht gar nicht, nur
> schneller wie der Freund...
> Also sei smarter wie der Rest

... und verwende beim Komparativ den korrekten Adjunktor als.

: Bearbeitet durch User
von Xanthippos (xanthippos)


Lesenswert?

Lässt sich so ein KI-Decompiler für Patentstreitigkeiten nutzen?

Gab mal die Ansicht, Nvidia könne die Quelltexte seiner Treiber nicht 
veröffentlichen, weil ATI darin tausende von Patentverletzungen findet.

Kann so eine KI patentierte Algorithmen im Binärcode finden?

von Lotta  . (mercedes)


Lesenswert?

Xanthippos schrieb:
> Lässt sich so ein KI-Decompiler für Patentstreitigkeiten nutzen?
>
> Gab mal die Ansicht, Nvidia könne die Quelltexte seiner Treiber nicht
> veröffentlichen, weil ATI darin tausende von Patentverletzungen findet.
>
> Kann so eine KI patentierte Algorithmen im Binärcode finden?

Es dürfte sehr schwierig sein, da sogar die zum Compiler
gehörenden Debugger den eigenen Quelltext bei hoher Optimierung
nicht mehr nachvollziehen können.

Das ist etwa bei IAR ab Stufe 3 kaum noch möglich,
und auch CLANG versteht bei der Stufe "O3", also "optimiere alles",
die Welt nicht mehr. ;-P

Was die Zukunft bringt, weiß natürlich keiner.

mfg

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.