Wie werden Bitcoin-Daten gelesen?
Alphanumerische Formate im Bitcoin-System
Bitcoin verwendet eine Reihe von alphanumerischen Datentypen, die jeweils bestimmte Funktionen erfüllen. Sie helfen dabei, Transaktionen abzuwickeln, Guthaben zu empfangen oder Daten zu verifizieren. Jeder Typ folgt dabei spezifischen Mustern und Formaten.
Adressen
Bitcoin-Adressen dienen dem Empfang von Bitcoin. Sie treten in unterschiedlichen Varianten auf, die sich durch bestimmte Präfixe identifizieren lassen:
- “1…”: klassisches Format für P2PKH-Transaktionen, basiert auf gehashten öffentlichen Schlüsseln, kodiert in Base58
- “3…”: wird für P2SH-Transaktionen genutzt, häufig für Multisig oder verschachteltes SegWit, ebenfalls in Base58
- “bc1…”: native SegWit-Adressen mit effizienterem Gebührenmodell, basieren auf Bech32 und bestehen nur aus Kleinbuchstaben
- “2…”: Testnet-Adressen für das Bitcoin-Testnetzwerk, keine echten Bitcoin senden Beispiel für eine bekannte Adresse:
1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa (Genesis-Adresse von Satoshi)
Beispiel für eine typische SegWit-Adresse:
bc1qye9f62lnzav4znw2elxax68a55sugwfpy704dn
Öffentliche Schlüssel
Öffentliche Schlüssel werden meist durch Adressen ersetzt, bleiben aber technisch wichtig, zum Beispiel für Signaturprüfungen oder Multisig-Setups:
- “02…” oder “03…”: komprimierte öffentliche Schlüssel, standardmäßig im Bitcoin-Netzwerk
- “xpub…”, “ypub…”, “zpub…”: erweiterte öffentliche Schlüssel (xpubs), dienen zur Ableitung von Adressen in Wallets. Eine Veröffentlichung des xpubs legt den gesamten Bitcoinbestand auf allen Adressen offen. Beispiel für einen erweiterten öffentlichen Schlüssel:
xpub6CUGRUonZSQ4TWtTMmzXdrXDtypWKiKrhko4egpiMZbpiaQL2jkwSB1icqYh2cfDfVxdx4df189oLKnC5fSwqPfgyP3hooxujYzAu3fDVmz
Blöcke
Jeder Block im Bitcoin-Netzwerk enthält eine Gruppe von Transaktionen und ist eindeutig identifizierbar:
- Blockhöhe: laufende Nummer, beginnend bei 0 (Genesis-Block), heute sechsstellig.
-
Block-Hash: eindeutige Zeichenkette, abgeleitet aus den Blockdaten; beginnt oft mit mehreren Nullen als Ergebnis des Proof-of-Work
Ein Bitcoin-Block, gemined von Foundry USA. Auf Mempool.Space kann man alle Transaktionen sehen, die der Block enthält: https://mempool.space/block/0000000000000000000200f003e4a6437174ddbefbe4a6358c24cc9c938973c4
Transaktionen
Transaktionen verbinden Sender und Empfänger im Bitcoin-Netzwerk. Sie lassen sich eindeutig identifizieren:
- txid: eine 64-stellige Zeichenfolge, die durch Hashing der Transaktionsdaten entsteht
- im Gegensatz zu Block-Hashes haben Transaktions-IDs keine führenden Nullen, was sie leicht erkennbar macht
Signaturen
Signaturen bestätigen, dass eine Transaktion autorisiert wurde. Sie basieren auf kryptografischen Verfahren:
- zwischen 71 und 73 Byte lang, im DER-Format kodiert
- beginnen immer mit 30
- enthalten zwei Werte (R und S), die jeweils mit 02 eingeleitet werden
Das solltest du mitnehmen
- Bitcoin verwendet verschiedene Datentypen: Adressen, öffentliche Schlüssel, Transaktionen, Blöcke und Signaturen
- Adressen können mit 1, 3 oder bc1 beginnen; Testnet-Adressen starten mit 2
- Blöcke sind über ihre Höhe und ihren Hash eindeutig identifizierbar