Toonaangevende Bitcoin Wallet

Uitgebreide transactieserialisatie in Electrum 2.0

Electrum 2.0 introduceert een verbeterde manier om transacties te serialiseren. Met deze nieuwe methode kunnen gebruikers niet-ondertekende of gedeeltelijk ondertekende transacties delen met andere ondertekenaars of opslaan in koude opslagapparaten.

De belangrijkste verandering in dit serialisatieformaat is te vinden in de transactie-invoer. Specifiek breidt Electrum de pubkey veld om extra informatie toe te voegen. Door deze uitbreiding kan de portemonnee transacties verwerken die nog niet volledig ondertekend zijn, waardoor het eenvoudiger wordt om multi-handtekening setups en cold storage operaties te beheren.

Uitgebreide openbare sleutels

Standaard openbare Bitcoin-sleutels beginnen met 0x02, 0x03of 0x04. Dit zijn de normale gecomprimeerde of ongecomprimeerde publieke sleutels die gebruikt worden bij Bitcoin-transacties.

Uitgebreide openbare sleutels beginnen met 0xFF, 0xFEof 0xFD. Electrum gebruikt deze om meer informatie te geven over de oorsprong en het afleidingspad van de sleutel.

Er zijn drie soorten uitgebreide openbare sleutels:

  1. Toetsen die beginnen met 0xFF zijn BIP32 uitgebreide openbare sleutels (xpubs) met hun afleidingspad.
  2. Toetsen die beginnen met 0xFE Electrum's legacy afleidingsmethode gebruiken, waarbij een publieke moedersleutel en zijn afleidingspad worden gecombineerd.
  3. Toetsen die beginnen met 0xFD vertegenwoordigen onbekende openbare sleutels waarbij alleen het Bitcoin-adres bekend is.

Soorten

  1. BIP32 Afleiding (begint met 0xFF): Dit formaat bestaat uit een uitgebreide openbare sleutel (xpub) van 78 bytes lang, gevolgd door het BIP32-derivatiepad. Het afleidingspad wordt weergegeven als een reeks gehele getallen van 4 bytes, waarbij de totale lengte tweemaal het aantal afleidingsstappen is.
  2. Legacy Electrum Afleiding (begint met 0xFE): Dit oudere formaat gebruikt een master public key (mpk) die 64 bytes lang is, gevolgd door een afgeleide waarde van 4 bytes. Deze methode is specifiek voor eerdere versies van Electrum.
  3. Alleen Bitcoin-adres (begint met 0xFD): Dit formaat wordt gebruikt als de volledige publieke sleutel niet beschikbaar is, maar we wel het Bitcoin-adres of de bijbehorende hash van het script kennen. Het slaat de 20-byte hash160 van het uitvoerscript op. Dit formaat gaat ervan uit dat de medeondertekenaar de daadwerkelijke openbare sleutel kan verstrekken wanneer dat nodig is.

Deze uitgebreide formaten zorgen ervoor dat Electrum verschillende typen portemonnees en afleidingsmethodes kan verwerken, waarbij zowel moderne BIP32-gebaseerde hiërarchische portemonnees als oudere Electrum portemonnee structuren worden ondersteund. De 0xFD formaat biedt ook flexibiliteit bij het werken met gedeeltelijk bekende transactiegegevens.

Standaard openbare sleutels

Bitcoin gebruikt specifieke formaten om openbare sleutels weer te geven. Deze formaten worden erkend als standaard in het hele Bitcoin-netwerk:

Gecomprimeerde openbare sleutels: Deze beginnen met 0x02 of 0x03gevolgd door 32 bytes aan gegevens. De startbyte geeft aan of de y-coördinaat van het punt van de openbare sleutel op de elliptische curve is even (0x02) of oneven (0x03).

Ongecomprimeerde openbare sleutels: Deze beginnen met 0x04gevolgd door 64 bytes aan gegevens. Dit formaat bevat zowel de x en y coördinaten van het punt van de openbare sleutel op de elliptische curve.

Inhoudsopgave