Taproot er for tiden den mest sannsynlige neste oppgraderingen for Bitcoin. Det er en av få oppgraderinger som det nå jobbes med at brukere og utviklere håper å til slutt se aktivert på nettverket.
Alle disse oppgraderingene deler et generelt tema som sannsynligvis også vil være temaet for mange fremtidige oppgraderinger. Dette temaet er å gjøre kontrakter unicast, eller enklere sagt, flytte kontraktlogikk utenfor kjeden, og overlate det til brukeren, i stedet for nettverket, for å validere og håndheve kontrakten. Å flytte til et mer unicast-system vil gjøre Bitcoin mye mer privat og skalerbart, samtidig som Bitcoins viktigere egenskaper forblir intakte.
Disse typer oppgraderinger og systemer er perfekte for Bitcoin. Bitcoin er rett og slett et monetært nettverk, ikke et beregningsnettverk. Å være et monetært nettverk, bør dens primære funksjon være å validere at det monetære systemet blir håndhevet riktig. Når det gjelder Bitcoin, bør det være den primære funksjonen til systemet å kontrollere at brukere korrekt signerte transaksjonen og at de ikke bryter med pengepolitikken, og noe mer bør flyttes til høyere lag og bare gjøres mellom brukerne som bruker Bitcoin for mer enn økonomisk oppgjør.
MuSig og Unicast-kontrakter
MuSig er en av de mest forståte anvendelsene av flytting av kontraktlogikk for å være unicast. MuSig lar brukerne få en multisig-utgang til å se ut som en standardbrukeres single sig-utgang. Dette gjøres ved å la brukerne konstruere nøkler og signaturer utenfor kjeden og få dem til å utføre noen kryptografiske operasjoner som resulterer i en enkelt offentlig nøkkel og signatur. Dette er en enorm forbedring sammenlignet med en vanlig multisig, der brukerne trenger å kringkaste alle sine offentlige nøkler og signaturer. Ved å gjøre et vanlig multisig laster brukerne kontraktsvalidering til nettverket, og krever at den valideres og lagres på ubestemt tid. I stedet, med en MuSig, gjør brukerne håndhevelsen selv ved å konstruere signaturer seg imellom, noe som resulterer i en eneste endelig signatur som bare kan være gyldig hvis riktig antall parter var ærlige, og dermed bare krever at nettverket validerer og lagrer en enkelt signatur..
Å flytte kontraktlogikk som skal gjøres på en unicast-måte, gjør Bitcoin mer privat. I dag har de fleste kontrakter eksplisitt sin logikk i transaksjonens produksjonsskript. Dette betyr at en ekstern observatør er i stand til å se hva brukerens eksakte forbruksforhold er. Å få brukeren til å avsløre de eksakte forbruksforholdene, skader ikke bare den enkelte bruker, men påvirker også resten av brukerne på nettverket. Ved å avsløre alle tilgjengelige utgiftsveier, uttaler en bruker seg ikke bare for å bruke dem, men avslører også at de ikke bruker andre utgiftsforhold. Dette virker åpenbart, men har viktige implikasjoner. Fordi en bruker avslører at de ikke har visse forbruksforhold, ekskluderer det dem fra å dele et anonymitetssett fra brukere som bruker de andre utgiftsbetingelsene. Dette betyr at de andre brukerne ikke vil ha brukeren vår i anonymitetssettet, noe som gir dem en mindre mengde å gjemme seg blant. Hvis brukeren flyttet kontraktshåndhevelsen utenfor kjeden, kunne brukeren få sine transaksjoner og utganger til å se ut som en standardbruker og dermed dele et anonymitetssett med et større sett med brukere, og hjelpe seg selv som de andre brukerne.
Ikke bare gjør det å gjøre kontraktutførelse unicast Bitcoin mer privat, det gjør det også mer skalerbart. Flytting av validerings- og kjøringslogikk utenfor kjeden, som skal gjøres av de enkelte brukerne i kontrakten, sikrer at de ikke lenger trenger å kringkaste hele kontrakten til hele nettverket. Ved å gjøre dette, trenger ikke nettverket lenger å gjøre den faktiske verifiseringen av det som kan være en kompleks kontrakt, og i stedet bare gjøre den minimale verifiseringen, sannsynligvis bare en enkelt signaturkontroll. Siden kontrakten ikke lenger sendes til nettverket, lagrer ikke nettverket heller de nødvendige dataene for denne kontrakten. På grunn av Bitcoins grense for blokkvekt, er det en velsignelse for nettverket å redusere dataene som trengs for enhver transaksjon, da det direkte vil øke transaksjonsgjennomstrømningen, slik at mer kan gjøres med samme mengde ressurser.
Avveininger
Å fjerne behovet for å verifisere og lagre kontraktsdata kan ha betydelig innvirkning på hvordan brukerne bruker Bitcoin. Med en hvilken som helst Bitcoin-transaksjon må brukeren betale et gruvearbeid for å bli inkludert i en blokk. Denne gruvearbeidsavgiften er direkte korrelert med ressursene som trengs for å bekrefte og lagre transaksjonen. Når vi vet dette, kan vi konkludere med at brukerne ikke får anledning til å bruke komplekse skript og forbruksforhold. Dette kan ha dårlige implikasjoner – for eksempel blir en bruker som prøver å forbedre sikkerheten ved å bruke noe som multisig for å distribuere nøklene, nå straffet av nettverket for å gjøre det ved å la dem betale høyere avgifter. Eventuelle forbedringer som kan gjøres på dette, bør være forutgående for Bitcoin-brukere og utviklere.
Bruk av unicast-lignende kontrakter inkluderer også noen andre kompromisser. Fordi brukeren ikke lenger laster ut kontraktsvalidering og utførelse til nettverket, vil de i stedet bli pålagt å gjøre dette selv, eller rettere sagt, programvaren de bruker vil være. Dette betyr generelt at brukeren må sende og lagre mer data mellom sine motparter. Dette krever mer kompleks programvare og protokoller for brukeren. Det kan gjøre sikkerhetskopier mer kritiske og vanskeligere å gjøre; hvis brukeren mister disse dataene, kan motparten være i stand til å bryte kontrakten, eller i det minste kan brukeren kanskje ikke utføre kontrakten uten motpartens samarbeid. Dette er imidlertid velforståtte problemer, og det foreslås smarte løsninger for å gjøre tap av data tryggere og til og med lage måter å skjule for motparten at det var tap av data.
Avslutningsvis, i dag eksisterer Bitcoin-kontrakter primært som et kringkastingssystem, som krever at nettverket validerer og lagrer alles kontraktsutførelseslogikk. Oppgraderinger som sannsynligvis kommer til Bitcoin, er i stand til å gi oss et utsyn som flytter kontrakter for å i stedet håndheves mellom individuelle brukere, siden Bitcoin først er et monetært nettverk og først og fremst bør håndheve sine monetære egenskaper. Ting som Taproot, Lightning, DLCs og PTLCs eksemplifiserer dette perfekt og viser at Bitcoiners bygger økosystemet for å forbedre Bitcoins privatliv og skalerbarhet..