Bitcoin’s Script & Taproot

Mit Hilfe von “Hashcash” und anderen kryptografischen Ansätzen fand Nakamoto einen genialen und neuartigen Weg, finanzielle Anreize so zu setzen, dass Betrug immer zu mehr Verlusten als Gewinnen führt. Doch damit endete Entwicklung von Bitcoin noch lange nicht!

Bitcoin’s Programmiersprache Script

Satoshi Nakamoto sah die Notwendigkeit von Programmen voraus, die effizient mit der Bitcoin Blockchain interagieren, und entwickelte die Programmiersprache „Script“.

Script hat im Vergleich zu Ethereums Solidity oder generischen Sprachen wie Rust, die von Solana verwendet werden, eine eingeschränkte Funktionalität. Script läßt vor allem keine rekursiven Programme zu. Solche Schleifen sind hilfreich für Aufzählungen oder das Durcharbeiten von Datensätzen, können jedoch verwendet werden, um Konten in einer Reihe kleinerer Transaktionen schnell zu leeren.

Ethereum lernte die Nachteile von Schleifen schmerzhaft kennen, als ein Hacker bei dem „The DAO heist“ einen beachtlichen Teil aller ETH von einem schlecht konzipierten smart contract stehlen konnte.

Diese Einschränkung macht Skript „Turing Unvollständig“, da es nicht so viele Anweisungen hat wie eine generische Programmiersprache. Turing Unvollständigkeit macht Bitcoin viel sicherer, weil es das Potenzial für Fehler einschränkt. Gleichzeitig reduzieren diese Einschränkungen auch was entwickelt werden kann.

Es wird niemals native NFTs oder DeFi-Anwendungen im Bitcoin-Netzwerk geben. Clevere Entwickler mussten komplexere Lösungen schaffen, die aus Sicherheitsgründen an Bitcoin anknüpfen, aber deren Verarbeitung anderswo stattfindet, sogenannte Layer-Two- oder L2-Lösungen.

Die Entwickler von Bitcoin Core haben in der Zwischenzeit nicht geschlafen und mit dem Taproot-Upgrade Script auf Tapscript  aktualisiert, was komplexere Transaktionen ermöglicht.

Das Taproot Update

Die “Block Wars“ um die Blockgröße von Bitcoin im Jahr 2017 hinterließen ein tiefes und anhaltendes Trauma bei den Entwicklern und verhinderten Innovationen. Das Taproot Update von Bitcoin ist sowohl ein Heilungsprozess als auch ein großer Fortschritt für die Technologie des Netzwerks.

Bisher brauchten Updates eine einjährige Ankündigungsfrist, in der die Miner ihre Zustimmung signalisieren konnten. Das Overlay „Speedy Trial“ auf dem Bitcoin Improvement Proposal (BIP) 8 verkürzte diesen Zeitrahmen auf drei Monate.

Nach dem dritten Versuch signalisierten 90% der Miner am 12. Juni 2021 die Zustimmung zu BIP340 – BIP 342, bekannt als das Taproot Update. Am 14. November ging es reibungslos live. Die entsprechenden Software-Updates zu den Nodes verbreiten sich in den Monaten danach über das Netzwerk.

Taproot liefert zwei bedeutende Verbesserungen:

  1. Schnorr Signaturen: Der Schnorr Algorithmus ersetzt ECDSA Signaturen und ermöglicht es Transaktionen mit einem gemeinsamen Schlüssel zu signieren. Bitcoin wird auf diese Weise schwerer zu verfolgen, da Transaktionen, die von mehreren Parteien unterzeichnet wurden, nicht von Transaktionen mit einem einzigen Unterzeichner zu unterscheiden sind. Sie ermöglichen auch Bitcoin Skripten, Transaktionen zu signieren, wodurch die Möglichkeiten von nativen Programmen erweitert werden.
  2. Tapscript: Erweitert die Funktionalität der Script-Programmiersprache, um komplexere Transaktionsbedingungen zu erleichtern und hilft dem Lightning-Netzwerk und anderen Layer-2 Lösungen effizienter zu werden.

Vor allem aber haben die Bitcoin-Entwickler ein neues Vertrauen in ihre Fähigkeit gefunden, Innovationen zu entwickeln und die Miner umfassend zu unterstützen.

Dieses Vertrauen ist der Schlüssel, um Bitcoin auch in Zukunft mit sinnvollen Innovationen relevant zu halten.

Bei diesem Artikel handelt es sich um einen Ausschnitt aus dem über 90 Seiten umfassenden Bericht Die Zukunft von Decentralized Finance – Bleibt Ethereum die Nummer eins?, der vom Crypto Research Report und Cointelegraph Consulting mitherausgegeben wird. Der Bericht wurde von zehn Autoren erstellt und von Arcana, Brave, ANote Music, Radix, Fuse, Cryptix, Casper Labs, Coinfinity, Ambire, BitPanda und CakeDEFI unterstützt.