I dag markeres den offisielle utgivelsen av Bitcoin Core 0.16.0, den 16. generasjonen av Bitcoins opprinnelige programvareklient som ble lansert av Satoshi Nakamoto for litt over ni år siden. Overvåket av Bitcoin Core-hovedansvarlig Wladimir van der Laan, ble denne siste store utgivelsen utviklet av rundt 100 bidragsytere over en periode på fem måneder..
Som vanlig for nye utgivelser inkluderer Bitcoin Core 0.16.0 ytelsesforbedringer, feilrettinger og andre optimaliseringer. Spesielt denne utgivelsen inkluderer flere funksjoner i lommebokgrensesnittet. Mest bemerkelsesverdig gjør Bitcoin Core 0.16.0 Segregated Witness (SegWit) fullt tilgjengelig for lommebokbrukere, og det er det mesteparten av innsatsen var fokusert på, og det er også derfor denne utgivelsen noen ganger blir referert til som en “SegWit-spesial.”
Her er en oversikt over noen av de mest bemerkelsesverdige endringene.
Segregated Witness in the Wallet Interface
Segregated Witness var selvfølgelig den viktigste Bitcoin-protokolloppgraderingen i 2017, om ikke den største protokolloppgraderingen noensinne. Den introduserte en helt ny blokkdatastruktur for oppgraderte noder – mens ikke-oppgraderte noder kunne fortsette å fungere som normalt. Blant andre fordeler erstattet SegWit Bitcoins grense for blokkstørrelse med en “vekt” -grense, noe som åpnet for blokker med opptil 4 megabyte transaksjonsdata og dermed økt transaksjonskapasitet i nettverket.
Segregated Witness selv ble først introdusert i Bitcoin Core 0.13.1, utgitt i oktober 2016. Oppgraderingen ble aktivert i august 2017. Bitcoin Core 0.16.0 er imidlertid den første Bitcoin Core-versjonen som lar lommebokbrukerne generere SegWit-adresser for å motta betalinger. Dette betyr at når pengene som mottas på disse adressene blir brukt til en betaling senere, bruker Bitcoin Core-lommebok-brukere den ekstra blokkplassen som tilbys av SegWit. Alt annet likt, bør disse brukerne kunne betale lavere avgifter sammenlignet med ikke-SegWit-transaksjoner.
Bitcoin Core er ikke den første lommeboken som aktiverer Segregated Witness for brukere; flere andre lommebøker hadde allerede introdusert denne funksjonen de siste seks månedene. Siden Bitcoin Core-utviklingsteamet skrev og foreslo oppgraderingen, var det bemerkelsesverdig at funksjonen ikke hadde vært tilgjengelig for Bitcoin Core-lommebokbrukere – til nå.
Bech32: Bitcoins nye adresseformat
I tillegg til introduksjonen av SegWit i Bitcoin Core-lommeboken er et nytt adresseformat kjent som “bech32.” Dette adresseformatet, utviklet av den tidligere Blockstream CTO Gregory Maxwell og Blockstream-utvikleren Dr. Enda viktigere er at bech32-adresser bruker færre tegn enn gjeldende adresseformat, fordi det ikke lenger skilles mellom små og store bokstaver. Dette reduserer potensialet for menneskelige feil (for eksempel når en adresse leses høyt). Bech32-adresser er også designet for å begrense andre typer feil som disse forårsaket av skrivefeil.
I tillegg tilbyr bech32 fordeler i sammenheng med SegWit-lommebokstøtte. Så langt gjør de fleste lommebøker som tilbyr SegWit det ved å “pakke” det inn i P2SH-utganger (med adresser som starter med en 3). For å bruke mynter fra en slik adresse, må brukerne avsløre et stykke kode – “innløs skriptet” – for å vise at myntene virkelig var låst i en SegWit-utgang. Med de nye bech32-adressene kan dette trinnet hoppes over, noe som betyr at utgifter fra en SegWit-adresse vil kreve at litt mindre data overføres over Bitcoin-nettverket og inkluderes i blockchain.
Siden ikke alle Bitcoin-lommebøker støtter bech32-adresser ennå, vil brukere av Bitcoin Core 0.16.0 kunne velge om de vil generere en bech32-mottaksadresse for betaling eller en P2SH-adresse, med P2SH fortsatt som standard for nå. Bitcoin Core-lommeboken støtter selvfølgelig sending av transaksjoner til alle typer Bitcoin-adresser.
Erstatt etter gebyr som standard sendealternativ
Siden Bitcoin-blokker har blitt fylt opp de siste par årene, passer ikke alle transaksjoner i nettverket i den første tilgjengelige blokken som blir utvunnet. I stedet prioriterer gruvearbeidere vanligvis transaksjonene som inkluderer de fleste gebyrene. Hvis brukerne ønsker å få bekreftet transaksjonene sine raskt, bør de inkludere et høyt nok gebyr. For mindre presserende transaksjoner, bør et lavere gebyr være tilstrekkelig. Mange lommebøker inkluderer gebyrestimeringsalgoritmer for å beregne hvilket gebyrnivå som vil få en transaksjon bekreftet innen varierende tidsrammer.
Imidlertid håndterer Bitcoin-nettverket iboende uforutsigbarhet når det gjelder hastigheten som blokker blir funnet, og antall transaksjoner som overføres når som helst. Dette kan gjøre det vanskelig å inkludere riktig transaksjonsgebyr, noe som betyr at brukere kan måtte vente lenger på en bekreftelse enn de hadde tenkt seg.
Siden Bitcoin Core 0.15.0 har lommebokbrukere vært i stand til å legge til en “bytt ut avgift” -kode i transaksjonene. Med en slik tag vet noder og gruvearbeidere på nettverket at avsenderen kanskje vil erstatte den transaksjonen med en nyere transaksjon som inkluderer et høyere gebyr. Dette lar brukere av Bitcoin Core lommebok effektivt støte transaksjonene sine i kø for å få det bekreftet raskere.
Bitcoin Core 0.16.0 gjør erstatningsavgift standard sendealternativ for første gang. Brukere kan fortsatt velge å legge til en erstatningsmerke i transaksjonene sine ved å fjerne kryss i en rute, men transaksjonene kan byttes ut hvis de ikke fjerner avmerkingen. Dette bør forhindre at brukere uforvarende frarøver seg alternativene og bare merker når det er for sent at de lett kunne ha støttet på transaksjonene sine..
For mer informasjon om hva som er nytt i Bitcoin Core 0.16.0, se utgivelsesmerknader. Du kan laste ned Bitcoin Core 0.16.0 fra bitcoincore.org.