Bitcoin-Skript

Definition

Bitcoin Script ist eine stackbasierte, Turing-unvollständige Programmiersprache, die die Bedingungen für die Ausgabe von Bitcoin-Transaktionen definiert . Es handelt sich um ein einfaches, aber leistungsstarkes Skriptsystem, das in jede Bitcoin-Transaktionsausgabe (Sperrskript oder scriptPubKey) und -eingabe (Entsperrskript oder scriptSig) eingebettet ist. Dadurch werden programmierbare Ausgabebedingungen ermöglicht, ohne das Bitcoin-Netzwerk den Risiken einer Turing-vollständigen Smart-Contract-Plattform auszusetzen. Bitcoin Script ermöglicht Multi-Signatur-Wallets , zeitlich gesperrte Transaktionen, Hash-gesperrte Verträge, Zahlungskanäle und atomare Swaps – alles ohne die Notwendigkeit einer allgemeinen Blockchain.

 Herkunft & Geschichte

DatumEvent
2008Satoshi Nakamoto entwirft Bitcoin Script als Teil des Bitcoin-Whitepaper-Designs
2009Bitcoin Script wurde im Bitcoin-Genesis-Block bereitgestellt; Pay-to-Public-Key (P2PK) ist der erste Skripttyp.
2012BIP 16: Einführung von Pay-to-Script-Hash (P2SH), wodurch komplexe Einlöseskripte ermöglicht werden
2015CHECKLOCKTIMEVERIFY (CLTV) wurde hinzugefügt, um absolute Zeitsperren für Transaktionen zu ermöglichen.
2016CHECKSEQUENCEVERIFY (CSV) wurde hinzugefügt, um relative Zeitsperren für Zahlungskanäle zu ermöglichen.
2017SegWit führt Pay-to-Witness-Public-Key-Hash (P2WPKH) und P2WSH ein.
2021Das Taproot-Upgrade (BIP 340/341/342) führt Schnorr-Signaturen und MAST über Tapscript ein.
2023Bitcoin-Ordinalzahlen nutzen Script, um Daten in Zeugendaten einzuschreiben.
2023Die Debatte um die Wiederaufnahme von BIP 347 (OP_CAT) verschärft sich im Hinblick auf mögliche Skripterweiterungen.

 „Bitcoin Script ist bewusst eingeschränkt – und das ist Absicht, kein Fehler. Einfachheit bedeutet Sicherheit.“ – Greg Maxwell, Bitcoin Core-Entwickler

 Funktionsweise

 BITCOIN-TRANSAKTIONS-SKRIPT-AUSFÜHRUNG ═════════════════════════════════════════════════════════ SPERR-SKRIPT (scriptPubKey) — auf der UTXO-Ausgabe: OP_DUP OP_HASH160 OP_EQUALVERIFY OP_CHECKSIG (Standard P2PKH — Pay to Public Key Hash)

FREISCHALTUNGSSKRIPT (scriptSig) — bereitgestellt von spender:

AUSFÜHRUNG (stapelbasiert): Der Stapel ist anfangs leer

  1. Drücken → Stack: [sig]
  2. Drücken → Stack: [sig, pubKey]
  3. OP_DUP: Duplikat oben → Stack: [sig, pubKey, pubKey]
  4. OP_HASH160: Hash oben → Stack: [sig, pubKey, pubKeyHash]
  5. Drücken → Stack: [sig, pubKey, pubKeyHash, expected]
  6. OP_EQUALVERIFY: Vergleich → Stack: [sig, pubKey] (falls gleich)
  7. OP_CHECKSIG: Signatur überprüfen → Stack: [TRUE]

Ergebnis: WAHR = Die Transaktion ist gültig und der UTXO wurde ausgegeben

SKRIPTPYPEN: P2PK → Pay to Public Key (veraltet) P2PKH → Pay to Public Key Hash (am häufigsten) P2SH → Pay to Script Hash (Mehrfachsignatur, komplex) P2WPKH → Native SegWit (bech32) P2TR → Pay to Taproot (am effizientesten/privatsten) ═══════════════════════════════════════════════════════ 

SkripttypAdressformatLuftüberwachungDatenschutz
P2PK(keine Standardadresse)Original Bitcoin, Satoshi-MünzenNiedrig
P2PKH1… (Base58)Standard-EinzelunterschriftenzahlungenNiedrig
P2SH3… (Base58)Mehrfachsignaturen, komplexe SkripteMedium
P2WPKHbc1q… (bech32)Native SegWit, niedrigere GebührenMedium
P2WSHbc1q… (bech32)Native SegWit-SkripteMedium
P2TRbc1p… (bech32m)Taproot, Tapscript, OrdinalzahlenHoch

 Einfach ausgedrückt

  1. Schloss und SchlüsselJede Bitcoin-Ausgabe verfügt über eine Sperre (Sperrskript) – um sie auszugeben, muss der richtige Schlüssel (Entsperrskript) angegeben werden, der die Bedingungen erfüllt.
  2. StapelmaschineDas Skript wird ausgeführt, indem Werte auf einen Stapel gelegt und Operationen ausgeführt werden – es ist einfach, vorhersehbar und bewusst nicht Turing-vollständig, um Endlosschleifen zu verhindern.
  3. Beispiel für mehrere SignaturenEin 2-von-3-Multisignatur-Skript benötigt 2 von 3 festgelegten privaten Schlüsselsignaturen, um Gelder freizugeben – wird für Teamkassen und sichere Wallets verwendet.
  4. Taproot-DatenschutzTaproot ermöglicht komplexe Multi-Signatur- und Smart-Contract-Skripte Sie sehen identisch aus wie einfache Single-Sign-Transaktionen auf der Blockchain – was den Datenschutz verbessert.
  5. Bewusste BegrenzungenIm Gegensatz zu Ethereums Solidity kann Bitcoin Script nicht auf externe Daten zugreifen, Schleifen ausführen oder andere Verträge aufrufen – was es vorhersehbar und sicher macht.

 Beispiele aus der Praxis

SzenarioSkripttypVorteile
Exchange Hot WalletP2SH 2-von-3 MultisignaturZum Ausgeben werden 2 von 3 Schlüsseln benötigt – schützt vor Diebstahl mit nur einem Schlüssel
Lightning Network-KanalHTLC (Hash Time-Locked Contract)Ermöglicht sofortige BTC-Zahlungen außerhalb der Blockchain.
Atomarer Swap BTC↔LTCHTLC auf beiden KettenVertrauensloser Cross-Chain-Austausch ohne Zwischenhändler
Zeitlich gesperrte VererbungSperrzeit prüfenDie Gelder sind erst nach einem bestimmten Datum auszugeben.
Ordinalzahlen InschriftP2TR-ZeugendatenNFT/Dateninschrift im Taproot-Zeugen

 Vorteile

VorteilDetail
SicherheitTuring-unvollständiges Design verhindert komplexe Angriffsvektoren, die bei Smart Contracts möglich sind.
VorhersehbarkeitJedes Skript wird deterministisch mit beschränkter Berechnung ausgeführt.
AusdruckskraftErmöglicht Multi-Signatur, Zeitsperren und HTLCs, die für Lightning Network ausreichend sind.
WirkungsgradDie Skripte sind kompakt, wodurch Transaktionsdaten und Gebühren minimiert werden.
Datenschutz (Taproot)Komplexe Ausgabenbedingungen, die sich nicht von einfachen Zahlungen unterscheiden lassen

 Nachteile & Risiken

RisikoDetail
Begrenzte FunktionalitätKomplexe Strukturen können nicht implementiert werden Defi, Orakel oder beliebige Smart Contracts
SkriptkomplexitätFortgeschrittene Multi-Signatur-Skripte sind komplex zu implementieren.
Probleme mit älteren FormatenÄltere Skripttypen (P2PK, P2PKH) bieten einen geringeren Datenschutz als moderne Alternativen.
Deaktivierte OpcodesMehrere leistungsstarke Opcodes (OP_CAT, OP_CHECKSIGFROMSTACK) wurden aus Sicherheitsgründen deaktiviert.
Risiken durch SkriptfehlerFehler in benutzerdefinierten Skripten können Gelder dauerhaft sperren.

Tipps zum Risikomanagement:

  • Benutzerdefinierte Skriptimplementierungen sollten immer zuerst im Testnetz und dann im Hauptnetz getestet werden.
  • Verwenden Sie P2TR-Adressen (Taproot) für optimale Privatsphäre und zukünftige Kompatibilität.
  • Für Multi-Signatur-Wallets sollten Sie etablierte Implementierungen (Bitcoin Core, Sparrow Wallet) anstelle von benutzerdefinierten Skripten verwenden.
  • Speichern Sie Einlöse-Skripte (P2SH) sicher – Sie benötigen sie, um Guthaben auszugeben.

 FAQ

F: Warum ist Bitcoin Script nicht Turing-vollständig?

A: Turing-Vollständigkeit ermöglicht Endlosschleifen – gefährlich in einer Blockchain, in der alle Knoten jedes Skript ausführen müssen. Die bewusste Unvollständigkeit von Bitcoin Script gewährleistet, dass Skripte vorhersehbar beendet werden, verhindert Denial-of-Service-Angriffe und ermöglicht die formale Verifizierung von Skripten.

F: Was ist ein HTLC in Bitcoin Script?

A: Ein Hash Time-Locked Contract (HTLC) ist ein Skript, das es ermöglicht, eine Zahlung durch Offenlegung eines Geheimnisses (Preimage) zu beanspruchen, dessen Hashwert einem vorab festgelegten Wert entspricht, oder sie nach Ablauf einer bestimmten Zeit an den Absender zurückzuerstatten. HTLCs sind die grundlegenden Bausteine ​​des Lightning Networks.

F: Wie verbessert Taproot Bitcoin Script?

A: Taproot (BIP 340/341/342) führt Schnorr-Signaturen ein, die die Aggregation von Schlüsseln ermöglichen, MAST (Merklized Abstract Syntax Trees) über Tapscript, das komplexe Skripte ermöglicht, während nur ausgeführte Zweige offengelegt werden, und sorgt dafür, dass alle Taproot-Ausgaben extern identisch aussehen – was Datenschutz und Effizienz erheblich verbessert.

UPay-Tipp: Verwenden Sie beim Einrichten einer Bitcoin-Wallet Taproot-Adressen (bc1p…), um die beste Kombination aus Datenschutz, Effizienz und zukünftiger Kompatibilität zu erzielen. Die meisten modernen Wallets wie Sparrow und Phoenix unterstützen Taproot nativ.

Haftungsausschluss: Dieser Inhalt dient ausschließlich Bildungszwecken und stellt keine Finanz- oder Fachberatung dar.

UPay – Eine Krypto-Enzyklopädie

Neuigkeiten & Events