Newsticker

Schwächt das Taproot-Upgrade die Resistenz von Bitcoin gegen Quantencomputer?

Der Quantencomputer von IBM. Bild von IBM Research via flickr.com. Lizenz: Creative Commons

Langsam wird die Aktivierung des seit langem erwarteten Taproot-Upgrades für Bitcoin greiftbar. Doch es mehren sich auch kritische Stimmen. Ein Entwickler warnt, dass Taproot die Resistenz von Bitcoin gegen Quantencomputer schwächt.

Taproot. Das seit mehreren Jahren erwartete Upgrade für Bitcoin soll Smart Contracts, wie Multisig-Konstruktionen oder Lightning-Channels, effektiver und privater zugleich machen. In einem anderen Artikel haben wir bereits beschrieben, wie Taproot funktioniert und welche Vorteile es mit sich bringt.

Viele Entwickler sehnen das technisch anspruchsvolle Upgrade herbei. Es herrscht ein weitgehender Konsens darüber, dass Taproot wünschenswert ist; diskutiert wird derzeit vor allem, auf welche Weise es aktiviert wird.

Nun hat jedoch der unabhängige Bitcoin-Entwickler Mark Friedenbach einen Einspruch eingelegt. Unter dem Titel „Warum ich gegen Taproot bin“ erklärt er, was ihn an dem Upgrade stört:

„Es existieren ernstzunehmende Bedrohungen von Bitcoin durch Quantencomputer, und die vorgeschlagene Taproot-Erweiterung verschlimmert die Situation noch. Wir sollten nicht erlauben, dass Taproot aktiviert wird, und wenn, dann sollten wir User demotivieren, es zu benutzen.“

Aber wie – und warum? Beginnen wir am Anfang: Bei den Gründen, weshalb Mark Friedenbach Taproot mag.

„Der Punkt, ab dem alles ganz schrecklich schief lief.“

Das Post von Mark zählt viele Vorteile von Taproot auf: Das Upgrade ersetzt den Signaturalgorithmus ECDSA mit dem einfacheren, simpleren und patenteren Schnorr-Algorithmus. Das ist in mehr Beziehungen gut, als man aufzählen kann:

Schnorr-Signaturen werden eine Menge komplexer Operationen – etwa Multisig-Konstruktionen – vereinfachen, die Signatur-Operation beschleunigen und den Speicherbedarf senken. Darüber hinaus werden sie die Privatsphäre verbessern, da mit ihnen Smart Contracts nicht länger von Standardtransaktionen zu unterscheiden sind.

Daneben optimiert Taproot einige weitere Details im Zusammenhang mit Signaturen. An sich hat das Upgrade nur Vorteile. „So weit, so gut. Das sind alles Features, für die ich schon lange werbe, und einige beruhen sogar auf Vorschlägen von mir.“ Allerdings gehört zu Taproot auch ein Feature, welches Transaktionen noch effizienter machen soll: Es platziert einen aggregierten öffentlichen Schlüssel nackt im Output.

Um zu verstehen, was nackt in diesem Zusammenhang bedeutet, sollte man wissen, dass Adressen bei Bitcoin und anderen Kryptowährungen keine öffentlichen Schlüssel sind, sondern mathematische Ableitungen von diesen, wofür in der Regel mehrere Hash-Algorithmen zum Einsatz kommen. Wenn Taproot stattdessen den nackten öffentlichen Schlüssel verwendet, erhöht das (aus komplexen Gründen) die Privatsphäre und spart Platz. Der „clevere Hack“ macht Taproot noch ein Stückchen besser.

„Und das,“ befrüchtet Friedenbach, „ist der Punkt, von dem zukünftige Historiker sagen werden, dass nach ihm alles ganz schrecklich schief lief.“

Eine Gefahr schon Ende des Jahrzehnts?

Leider muss man ein paar Dinge über Quantencomputer wissen, um zu begreifen, warum. Quantencomputer gelten seit langem als die Zukunft des Rechnens, weil sie nicht nur Bits mit zwei Zuständen benutzen, sondern Qubits, die noch einen dritten Zustand haben können. Die Vision von Quantencomputern ist so alt, dass sie schon beinah lächerlich wird.

Aber eben nur beinah. 2019 und 2020 konnten Google und IBM die sogenannte „Quantenüberlegenheit“ demonstrieren: Sie bildeten Quantencomputer, die Probleme lösten, welche normale Computer nicht lösen können. Einer der Bereiche, in denen Quantencomputer als potenziell überlegen gelten, ist die Kryptographie. Theoretisch können Quantencomputer etwa Hashalgorithmen umkehren und den privaten Schlüssel aus dem öffentlichen Schlüssel berechnen.

Vor allem letzteres ist für Bitcoin-User ziemlich gruselig: Denn jeder Bitcoin wird durch Signaturen geschützt. Um Bitcoins zu überweisen, muss man eine Transaktion mit einem privaten Schlüssel signieren. Wenn es möglich wäre, diesen privaten Schlüssel zu errechnen, könnte man Bitcoins stehlen. Es wäre das schlimmste, was dem System passieren könnte.

Noch ist das in einigermaßen weiter Ferne. Um Bitcoin-Signaturen zu brechen, bräuchte ein Quantencomputer mindestens einige tausend Qubits, die über hunderte Milliarden von Oprationen stabil bleiben. Beides ist derzeit noch eine riesige und ungelöste Herausforderung. Doch die Technologie schreitet schnell voran; Friedenbach notiert, dass sich die Anzahl der Qubits alle 18 Monate verdoppelt, weshalb Quantencomputer schon Ende des Jahrzehnts private Bitcoin-Schlüssel errechnen könnten.

Aber was bedeutet eine Gefahr für Bitcoin konkret? Das Szenario ist nicht so schrecklich, wie man auf den ersten Blick meinen könnte – aber weiterhin ziemlich beängstigend.

„Eine Vertrauenskrise, von der wir uns vielleicht niemals erholen würden.“

In der Regel werden Bitcoins einer Adresse zugeschrieben. Diese ist eine durch mehrere Hashfunktionen abgeleitete Formulierung des öffentlichen Schlüssel, verrät diesen aber nicht. Da es für Quantencomputer noch viel schwieriger ist, Hashes zu brechen, sind Bitcoins auf Adressen sehr viel sicherer als Bitcoins, die nackten öffentlichen Schlüsseln zugeordnet sind.

Wenn Sie also Ihre Bitcoins auf einer Adresse speichern und jede Adresse nur einmal benutzen, werden Ihre Coins auch vor Dieben mit Quantencomputern sicher sein.

Derzeit gibt es allerdings 6,25 Millionen Bitcoins, für die die öffentlichen Schlüssel bekannt sind. „Wir haben also 6,25 Coins, die unmittelbar gestohlen werden können, wenn jemand Zugang zu einem Quantencomputer hat, der groß genug ist, um die Kalkulationen für den diskreten Logarithmus secp256k1 auszuführen“ (also den privaten Schlüssel zu errechnen). „Das entspricht etwa einem Drittel aller Bitcoins, die derzeit existieren.“

Immerhin sind nur 1,75 Millionen dieser Bitcoins an öffentliche Schlüssel auf der Blockchain gebunden. Es handelt sich in der Regel um nicht ausgegebene Coins von frühen Minern. Wenn diese gestohlen werden, wäre es ein gefährliches Drama, aber Bitcoin könnte es überleben. Die restlichen gut vier Millionen angreifbaren „Bitcoins sind vulnerabel, weil sie Schlüssel oder Skripte mehrfach verwenden, was eine eher neuartige Praxis ist und eine leider häufige Praxis bei einigen Treuhandservices.“ Wenn diese durch Quantencomputer gestohlen werden, „würde dies zu einer Vertrauenskrise führen, von der wir uns vielleicht niemals erholen könnten.“

Bitcoin-Entwickler sollten alles tun, um eine solche schlechte Praxis zu verhindern. In keinem Fall sollten sie eine Technologie bewerben, die User zwingt, sich eine Schwäche gegen Quantencomputer aufzuladen, um die Vorteile von Schnorr-Signaturen zu genießen. Indem Taproot öffentliche Schlüssel nackt auf die Blockchain stellt, „tauschen wir Quantenresistenz gegen kleine Effizienzsteigerungen und trendige Krypto-Eigenschaften“. Daher sollte man Taproot in der derzeiten Form „NICHT implementieren“, schließt Friedenbach.

Aber wie sehen das die anderen Entwickler?

Ein „totes Pferd“ und ein Problem, das „trivial“ zu lösen ist

Luke Dashjr hat Friedenbachs Post in der Mailingliste der Bitcoin-Entwickler geteilt. Er empfiehlt allen, es zu lesen und ernst zu nehmen, meint aber auch, dass es kein ernsthafter Grund gegen Taproot ist: „Es dürfte relativ trivial sein, mit einer weiteren Softfork eine Hash hinzuzufügen, um das Problem zu fixen.“

Matt Corallo von ChainCodeLabs erklärt, dass das Problem keineswegs neu sei. „Wir haben das Problem schon zu Tode geritten, und ich bin nicht sicher, warum wir das tote Pferd erneut satteln müssen.“ Corallo meint, dass Taproot den desaströsen Problemen, die ein plötzlich realisierter starker Quantencomputer für Bitcoin bedeuten würde, nichts hinzufügt. Dem stimmen andere Entwickler zu: Quantencomputer seien ein Problem, das man in Zukunft lösen müsse, aber kein Grund, Taproot abzulehnen.

Es scheint ein grober Konsens zu bestehen, dass die Problematik existiert, aber weniger stark gegen Taproot spricht, als Friedenbach meint. Das Upgrade wird also vermutlich wie geplant kommen – und hoffentlich, in Zukunft, Bemühungen, Bitcoin quantensicher zu machen.

Über Christoph Bergmann (2802 Artikel)
Das Bitcoinblog wird von Bitcoin.de gesponsort, ist inhaltlich aber unabhängig und gibt die Meinung des Redakteurs Christoph Bergmann wieder ---

11 Kommentare zu Schwächt das Taproot-Upgrade die Resistenz von Bitcoin gegen Quantencomputer?

  1. Kaese Quant // 19. März 2021 um 9:55 // Antworten

    „2019 und 2020 konnten Google und IBM die sogenannte „Quantenüberlegenheit“ demonstrieren.“

    Im Grossen und Ganzen haben die nichts weiter gemacht als eine Quantenverteilung zu „simulieren“. Da wurde nichts berechnet. Mit Kryptographie und Algorithmen hatte das (fast) nichts zu tun.

    Das ist, wie wenn jemand behauptet, dass ein echter Haushund einen Wolf besser „berechnet“, als ein simulierter Wolf auf einem klassischen Computer.

    Oder, man sucht sich ein Problem, dass sich mit verschränkten Quanten besonders leicht lösen lässt und liest die Ergebnisse aus. Am Ende stellt man sich hin und behauptet, dass man die Quantenüberlegenheit gezeigt hat, weil klassische Computer prinzipiell Probleme bei der Simulation von Quanteneffekten bekommen.

    Solange Qunatencomputer an der Primfaktorzerlegung dreistelliger Zahlen scheitern ist das ein Sturm im Wasserglas (die 15 wurde schon vor Jahren zerlegt).

  2. Noch mehr Käse: „Theoretisch können Quantencomputer etwa Hashalgorithmen umkehren und den privaten Schlüssel aus dem öffentlichen Schlüssel berechnen.“

    Quantencomputer können Hashalgorithmen mitnichten umkehren. Es scheint aber so zu sein, dass sie deren Sicherheit etwas schwächen (https://www.thi.uni-hannover.de/fileadmin/thi/abschlussarbeiten/hawich-ba.pdf). Deshalb sind ja bekanntlich die Coins auf Adressen ohne ausgehende Transaktionen quantencomputersicher.

    Bei einer ausgehender Transaktion einer Adresse wird der Publickey veröffentlicht, damit das enstprechende Skript die Adresse mit dem Publickey abgleichen kann. Dann wäre die Adresse natürlich ausräumbar, da Quantencomputer asymmetrische Verschlüsselungsverfahren umdrehen können und für jeden der Privatekey ersichtlich ist und wegen der allgemeinen Verifizierbarkeit einer Transaktion auch sein muss.

  3. Zusätzlich ist es auch noch wichtig zu wissen, dass eine Signatur, egal ob nun von einer Transaktion oder von einer einfachen Nachricht, mit einem (Bitcoin)Privatekey IMMER auch den Publickey veröffentlicht! Ansonsten könnten andere die Signatur nicht prüfen.

    Also macht euch klar, dass ihr niemals, also wirklich NIEMALS, Coins auf einer Adresse lasst, deren Privatekey eine öffentliche Signatur erzeugt hat (im Sinne, dass man sie im www findet).

  4. Soweit ich informiert bin habe wir ganz andere Probleme als Bitcoin Private Keys sollte „plötzlich“ Quantencomputer verfügbar sei die deartige Rechenleistungen vollbringen können.

    Passwörter, Geheimdienste, Banken, Energieunternehmen, viele Dinge nutzen heute verfügbare Kryptographie die damit dann geknackt werden kann.

  5. Gunnar Eberlein // 19. März 2021 um 13:18 // Antworten

    Ich bin nicht sicher, ob Taproot eine Verschlechterung bedeutet. Normale Transaktionen werden ja weiterhin per pay-to-public-key-hash durchgeführt werden. Bei multisig-Transaktionen liegen heute schon die Public Keys sichtbar im Output Script. Dennoch wäre es vorsichtiger gewesen, bei Taproot zu hashen.

    Sicherheitsbedenken habe ich beim vermutlich immens wichtig werdenden Lightning Network, bei dem die Funding Transaktionen per Taproot realisiert werden. Aber wie schon im Beitrag erwähnt würde hier eine kurzfristig angesetzte Softfork Abhilfe schaffen.

  6. im Forum kam die Frage auf, ob durch die Veröffentlichung des Public Keys nicht nur der Private Key berechenbar sein wird sondern auch der seed einer Wallet.
    Muss ich um sicher zu gehen bei einer ausgehenden Transaktion also nicht nur die restlichen BTC auf eine neue Adresse bringen sondern auch auf eine neue Wallet?
    Kann das jemand kompetent beantworten?

    • Wilma Kaltental // 19. März 2021 um 22:07 // Antworten

      Genausowenig wie kryptographische Hashs durch Quantencomputer ernsthaft angegriffen werden, genausowenig ist die deterministische Erzeugung der Wallet angegriffen. Besser sollte man sich Gedanken darüber machen, dass die Seed möglichst zufällig ist oder war und niemanden in die Hände fällt, den sie nichts angeht. Ausserdem sollte man Holdings nur auf Adressen haben, die keine ausgehenden Transaktionen aufweisen.

      Bis Post-Quanten-Kryptographie im Protokoll enthalten ist sollten die Holdings so ausreichend sicher sein. Dann sollte man die Coins rechtzeitig auf entsprechende Adressen verschieben.

    • Aus dem public key einer adresse, könnte ein quantencomputer vll den privatekey dieser adresse berechnen.
      Erstmal aber nicht den von anderen adressen in der gleichen Wallet.
      Also auch nicht vom Seed.

      Aber:
      Wenn er zusätzlich deinen extended public key kennt, kann er die andern adressen auch berechnen. Und dass dann auch ohne Quantencomputer.

      xpub key + einzelner private key = alle private keys
      Das ist jetzt schon so.

      Daher ist eine selbstgestrickte lösung, mit einem offline gerät, was einzelne unanhängoge adressen erzeugt und offline signiert, theroetisch etwas besser als z.b. eine hardwarewallet die den xpub ans onlinegerät schickt oder an einen server, was quatencomputer betrifft.

      Dafür vermeidet die aber andere gefahren ganz gut, z.b. fehlende backups oder schlicht das leaken vom privatekey ans onlinegerät.

  7. Also, ich erwarte mit Spannung die weiteren Fortschritte im Bereich der Quantencomputer.
    Das ist ein hochinteressanter Bereich mit noch viel Potential.

    Da erachte ich es eigentlich als dumm in einer Anwendung ein kryptographisches Verfahren schlechter zu machen als es derzeit ist. Insbesondere wenn die so abgesicherten Bitcoins
    eigentlich für Jahrzehnte Bestand haben sollten.

  8. Gunnar Eberlein // 24. März 2021 um 19:38 // Antworten

    Im heutigen Bitcoin Optech Newsletter wurde das Problem angesprochen. Hier zwei interessante Fakten:
    1) Ein nicht-hashen von Public Keys in Output Scripts soll pro Jahr 13 Gigabyte Blockchain Space einsparen (weil bei Transaktionen der Public Key im Input Script entfällt)
    2) Eine Taproot Transaktion kann über den ungehashten Key Pfad oder alternativ über den gehashten Script Pfad signiert werden. Sollten Probleme mit Quanten Computern auftauchen, könnten die Key Pfade per Softfork gesperrt und somit ein Auszahlen über die Script Pfade erzwungen werden (dann müssen die Script Pfade aber korrekte Scripte enthalten).

Schreibe eine Antwort zu Kaese QuantAntwort abbrechen

Entdecke mehr von BitcoinBlog.de - das Blog für Bitcoin und andere virtuelle Währungen

Jetzt abonnieren, um weiterzulesen und auf das gesamte Archiv zuzugreifen.

Weiterlesen