Was passiert, wenn SHA 256 ersetzt werden muss?

MD5 war früher der Hash-Algorithmus. Jeder liebte es, aber jetzt nicht so sehr.

Was passiert mit Bitcoin, wenn in Zukunft Fehler in SHA256 gefunden werden?

Antworten (3)

Ich nehme an, Sie meinen, was mit Bitcoin passieren wird, wenn festgestellt wird, dass SHA256 nicht mehr für die Verwendung geeignet ist, wie Bitcoin es verwendet. Erstens wird so etwas wahrscheinlich sehr allmählich geschehen. Wir werden zuerst Hinweise auf Schwachstellen sehen und Angriffe, die derzeit Millionen von Jahren dauern, werden auf Tausende von Jahren und dann auf Hunderte von Jahren schrumpfen. Es bleibt also genügend Zeit, um einen Wechsel zu arrangieren.

Beachten Sie, dass Bitcoin - Adressen auch RIPEMD-160 verwenden, das wahrscheinlich schwächer als SHA-256 ist. Aufgrund der Art und Weise, wie sie verwendet werden, verursachen Schwächen in RIPEMD-160 jedoch möglicherweise keine Probleme für Bitcoin.

Grundsätzlich müssten alle erforderlichen Änderungen am Protokoll ausgearbeitet werden. Möglicherweise könnten gleichzeitig andere als vorteilhaft erachtete Änderungen vorgenommen werden, da protokollbrechende Änderungen selten sind. Einige Felder müssen möglicherweise erweitert werden.

Ein bestimmter Block würde ausgewählt, wonach die neuen Verfahren beginnen würden. Bis dahin müssten alle upgraden.

Ich denke, es würden alle Anstrengungen unternommen, um die Größe des Block-Headers gleich zu halten, damit der Mining-Algorithmus nicht geändert werden muss. Dies kann bedeuten, dass ein Zwischenheader hinzugefügt werden muss. Der Zwischenheader würde die größeren Hashes des vorherigen Blocks, des Transaktionsbaums usw. enthalten. Der Hash des Zwischenheaders würde in den Block gehen, den die Miner versuchen zu schürfen, und seine drei Hash-Felder auf nur eines reduzieren. (Und die Möglichkeit, die Nonce auf 64-Bit zu erweitern! Yay!)

Wenn sich Adressen oder Transaktionen ändern müssten, wären nach diesem gewählten Block Transaktionen neuen Stils erlaubt. Münzen, die nicht auf neue Konten übertragen werden, könnten theoretisch anfällig für Angriffe werden. Da Bitcoin-Transaktionen bereits Ein- und Ausgänge haben, die logisch unabhängig voneinander funktionieren, wäre es kein Problem, Coins mit einer alten Adresse/Signatur zu importieren und sie an eine neue Adresse zu senden.

Tatsächlich macht RIPEMD-160 das Protokoll schwächer. Es stimmt, dass es aufgrund der Implementierung sehr schwierig ist, die gehashten Daten abzurufen, aber Kollisionsangriffe werden viel einfacher gemacht. eprint.iacr.org/2004/199.pdf
Die Sache ist die, ein Kollisionsangriff auf RIPEMD-160 wird Ihnen nichts nützen. Wenn Sie Klartext finden, der denselben RIPEMD-160-Wert wie mein öffentlicher Schlüssel hat, können Sie meine Münzen nicht beanspruchen (oder überhaupt Schaden anrichten), da Sie immer noch einen privaten Schlüssel finden müssten, der diesem öffentlichen Schlüssel entspricht. (Ein Kollisionsangriff auf SHA-256 wäre jedoch katastrophal für Bitcoin. Es würde Ihnen ermöglichen, Transaktionen ungültig zu machen.)
RIPEMD-160 könnte der erste Block in einem ausgeklügelten Bitcoin-Angriff sein, der auf das Netzwerk abzielt. Was passiert, wenn ein böswilliger Angreifer zwei Schlüsselpaare mit derselben Adresse generiert? dies könnte zu doppelten Ausgaben führen. Es ist eine Frage, die es wert ist, analysiert zu werden.
Es konnte nicht zu doppelten Ausgaben führen. Es würde nur zu zwei Möglichkeiten führen, die gleichen Münzen auszugeben. Es ist nicht bekannt, wie ein Angriff auf RIPEMD-160 zu einem Angriff auf Bitcoin führen könnte. (Was natürlich nicht bedeutet, dass es unmöglich ist, zumal es einzigartig und nicht gut untersucht ist.)
Ich würde das nicht so einfach abtun. Unterschätzen Sie niemals die Kreativität des Angreifers.
Niemand sagt, dass Angreifer Bitcoin nicht angreifen werden, aber RIPEMD-160 wird nur verwendet, um den PUBLIC-Schlüssel zu hashen (zu verkürzen). Um eine Münze doppelt auszugeben oder sich als ein anderer Benutzer auszugeben, müssten Sie eine Kollision für den PRIVATE-Schlüssel finden, die nichts mit RIPEMD-160 zu tun hat. @David hat damit Recht.
Um genau zu sein, müssten Sie einen privaten Schlüssel finden, dessen SHA-256-Hash des entsprechenden öffentlichen Schlüssels selbst mit demselben RIPEMD-160-Hash verknüpft wird. Während Schwächen in RIPEMD-160 dazu beitragen könnten, würde die Interaktion mit ECDSA und SHA256 bedeuten, dass Sie zeigen müssten, dass RIPEMD-160 sehr schwach ist, damit dieser Angriff funktioniert. Wenn Bitcoin beispielsweise MD5 anstelle von RIPEMD-160 für diesen Zweck verwendet, würde es zu Recht als stark beschädigt angesehen und müsste so schnell wie möglich repariert werden, aber kein tatsächlicher Angriff wäre auch nur annähernd praktikabel.

Alles in der Theorie: Das Mooresche Gesetz wird alle Proof-of-Work-Algorithmen kompromittieren, da neuere Mining-Ausrüstung für immer weniger Miner erschwinglich wird. Letztendlich wird ein Miner 51 % Kontrolle haben und es muss kein Quantum sein.

Geben Sie hier die Bildbeschreibung ein

Quanten wäre jedoch eine definitive Antwort auf Ihre Frage, da das Mooresche Gesetz für herkömmliche CPU-Chips immer näher an seine Grenze kommt.

Ein funktionierender 10000-Qubit-Quantencomputer kann den Algorithmus von Shor und Grover ausführen: Die Anwendung unterschiedlicher Ansätze mit Shors und Grovers, um private und öffentliche Schlüssel zu verknüpfen, könnte ECDSA 256 brechen.

Der erste 10000-Qubit-Quantencomputer könnte 51 % Kontrolle über jede Blockchain erlangen, auf die er abzielt.

Wenn es Bitcoin noch so gibt, wie es ist, würde ein Fork mit bb84 passieren, aber vorher würde mit ziemlicher Sicherheit jemand die Blockchain nach Belieben angreifen, wenn er könnte .

Quantencomputer im Jahr 2019 nach Top-Qubit-Anzahl:

  • Bristlecone von Google: 72-Qubit-Gate-basiert
  • IBMs 50-Qubit
  • Intel: 49-Qubit-Test-Chip

Wie lange dauert es, bis 10000 Qubits erreicht sind? Niemand weiß es genau.

Shors Algorithmus dient der Faktorisierung. Das hat nichts mit SHA256 zu tun

Da SHA256 schon so lange verwendet wird, ist es einigermaßen sicher vor einem Kryptoanalyse-Angriff.

Es ist immer noch anfällig für einen Brute-Force-Angriff, obwohl es noch mindestens für die nächsten X Jahre (wobei X > 10) einigermaßen sicher ist.

Jedenfalls wurde diese Frage bereits gestellt und es gibt mehrere Kandidaten für die Nachfolge:

http://en.wikipedia.org/wiki/SHA-3

MD5 wurde nicht mehr verwendet, weil die Rechenkapazität im Laufe der Jahre anstieg, was die Kryptoanalyse erleichterte und so zur Entdeckung mehrerer Fehler führte.

Ich hätte mehr Angst vor Quantenrechnern, die heutige Hashing-Techniken nutzlos machen werden.

"Da X schon so lange verwendet wird, ist es einigermaßen sicher vor einem Kryptoanalyse-Angriff." Ähm .... kennen Sie sich überhaupt mit der Geschichte der Kryptographie aus? Alles wird als sicher betrachtet, bis es nicht mehr der Fall ist.
Können wir sagen, dass wir, da SHA256 umfassend analysiert wurde, einigermaßen sicher sein können, dass kein trivialer Angriff die Kollisionsresistenz stark reduzieren kann?
Man könnte argumentieren, dass die Wahrscheinlichkeit eines trivialen Angriffs durch die umfangreiche Analyse reduziert wird, aber es gibt viele mathematische Fragestellungen, die trotz jahrhundertelanger Analyse schlagartig geändert wurden. Ohne eine Antwort auf P v NP, einen formalen Schwierigkeitsnachweis usw. steht dies alles auf relativ wackeligen Beinen. Die meisten professionellen Mathematiker werden Ihnen sagen, dass es sicherer ist, auf den eventuellen Untergang einer Hash-Funktion zu setzen als auf ihren ewigen Erfolg.
Als professioneller Mathematiker bin ich der bescheidenen Meinung, dass wir die Sicherheit eines Algorithmus an seiner Exposition messen können, indem wir die Exposition als e = (Benutzer) * (Tage ohne einen kritischen Fehler) definieren. Mit dieser Metrik sage ich, dass wir uns mehr Sorgen um RIPEMD als um SHA256 machen sollten. Wenn ich das Thema von einem breiteren Pow nehme, ist meine erste Sorge Quantencomputing, das Bitcoin rechnerisch zerstören könnte, indem es den Turing-Axiomen ausweicht,
Ich würde nicht sagen, dass SHA-256 anfällig für Brute Force ist. Höllen-64-Bit-Hash ist noch nicht anfällig für Brute Force. Die gesamte globale Rechenleistung (in allen Formen) beträgt ungefähr 6,4 Millionen Petaflops. Angenommen, die Rechenleistung stieg über Nacht um den Faktor 1 Milliarde, und jeder Computer arbeitete 24/7/365 und versuchte, einen einzelnen SHA-256-Hash zu knacken. Unter der Annahme, dass die globale Rechenleistung jährlich um 30 % wächst, würde es über 300 Jahre dauern, um auch nur 1 % der potenziellen Schlüssel zu versuchen (immer noch 99 % Ausfallwahrscheinlichkeit).
Das ist die ideale Bedingung. In der Praxis lassen sich mit der Kryptoanalyse die möglichen zu prüfenden Kandidaten stark reduzieren. Die für SHA256 erforderliche Komplexität wurde bereits stark reduziert. eprint.iacr.org/2009/479.pdf