Zur Hauptseite  ..\..\..\                                                                       Zur Themenliste ..\..\                                                         Zur Bitcoin Übersicht ..\


Technische Angriffsmöglichkeiten auf Bitcoin

Werden herkömmliche Computer in der Zukunft Bitcoin brechen können? 



Wenn wir mit Bleistift und Papier etwas ausrechnen, dann brauchen wir dafür umso länger,
Man kann sagen, wir lösen die Aufgabe so, indem wir sie Schritt für Schritt abarbeiten. Daraus folgt unmittelbar, dass wir für grössere Zahlen und/oder schwierigere Aufgaben mehr Schritte benötigen als für einfache Zahlen / einfachere Aufgaben.
Computer, wie wir sie heute kennen, funktionieren im Prinzip genau so wie der Mensch, der auf Papier etwas ausrechnet. Daher gelten hier dieselben Zusammenhänge: Je grösser die Zahlen, und je schwieriger die Aufgabe, desto länger braucht der Computer. Der Flaschenhals beim Menschen ist das Gehirn; dieses arbeitet alle Rechenschritte hintereinander (seriell) ab. Beim Computer ist es der Mikroprozessor, speziell die Arithmetisch Logische Einheit (ALU), auch sie arbeitet alle Schritte seriell ab.
Computer sind zwar um Grössenordnungen schneller als Menschen, doch man braucht die Aufgabe nur schwierig genug zu machen, und die Zahlen nur gross genug, sodass auch sie die Aufgabe irgendwann nicht mehr in akzeptabler Zeit lösen können.
Der Kern des Problems, bzw. die Grenze der heute verfügbaren Computertechnik besteht folglich darin, dass mit wachsender Komplexität der Aufgabe die Zeitdauer für ihre Lösung ansteigt.
Diese trivial anmutende Feststellung ist gleichzeitig ein Vorgriff: Genau dieses Problem haben Quantencomputer nämlich nicht!


In der theoretischen Informatik werden Aufgaben ihrem Schwierigkeitsgrad entsprechend in zwei Komplexitätsklassen eingeteilt: Einfach (P) und Schwierig (NP), wer hätte das gedacht. Um zu verstehen, welche Eigenschaften eine Aufgabe "einfach" bzw. "schwierig" machen, braucht man Mathematikkenntnisse auf universitärem Niveau. An dieser Stelle muss folgendes genügen:
In der praktischen und angewandten Mathematik und Informatik ist es fast immer wünschenswert, dass Aufgaben, einfach, und daher effizient lösbar sind, weil man ja normalerweise Probleme lösen will. Es wäre also wünschenswert wenn fast alle Aufgaben der Komplexitätsklasse P angehörten.
Bei kryptographischen Anwendungen will man aber genau das Gegenteil: Die Aufgabe soll so schwierig sein, dass kein Computer, am besten nicht einmal die vereinigte irdische Rechenkapazität, in der Lage ist, die Aufgabe z.B. innerhalb von 100 Milliarden Jahren zu lösen. Das ist aber noch nicht alles. In der Kryptographie braucht man neben der praktischen Unlösbarkeit der Aufgabe noch zusätzlich folgende Eigenschaft: Lösungsvorschläge sollen nicht nur effizient, sondern sprichwörtlich in einem Augenblick überprüfbar sein.

Daraus folgt, dass kryptographischen Aufgabenstellungen der
Komplexitätsklasse NP angehören müssen. Das bekannteste Grundprinzip funktioniert bei Bitcoin wie folgt:    

Die heutige Kryptographie baut darauf,
Sollte tatsächlich einmal jemand ein Verfahren entdecken, das ECDSA effizient löst, dann wäre Bitcoin grundsätzlich angreifbar. Der Angreifer wäre grundsätzlich in der Lage, die Bitcoins vieler (bei weitem nicht aller) Adressen in seinen Besitz zu bringen. Die weiteren Zusammenhänge und Folgen werden später diskutiert.

Die weitaus schwerwiegendere Frage, gleichzeitig Gegenstand der Forschung mit sehr hohen Preisgeldern, lautet:

Ist P = NP ?

Sind die heute der Komplexitätsklasse NP angehörigen Aufgaben tatsächlich (also mathematisch beweisbar) schwierig, oder sind sie es lediglich deshalb, weil noch keine Verfahren gefunden wurden, mit denen sich diese Aufgaben in polynomialer Zeit, also effizient lösen lassen? 
Sollte die Antwort auf P = NP ? eines Tages tatsächlich einmal "Ja" lauten, dann hätte dies vermutlich keine praktischen Folgen.
Die weiteren Zusammenhänge und Folgen werden später diskutiert.

Weiter

Datenschutzhinweise
September 2020