The Taproot upgrade

Inledning

bitcoin taprootTaproot är en föreslagen uppgradering till Bitcoin som kommer att ge flera nya funktioner och fördelar för Bitcoin-användare. Bitcoin-gemenskapen hoppas kunna aktivera Taproot inom en snar framtid.

Taproot-uppgraderingen består faktiskt av tre Bitcoin Improvement Proposals (BIP) som definierar tre distinkta uppgraderingar till Bitcoin-protokollet: Schnorr Signatures, Taproot och Tapscript. Dessa tre uppgraderingar är dock kända som Taproot-uppgraderingen, och BIP 340, 341 och 342 kallas ofta gemensamt för BIP Taproot. Tillsammans introducerar dessa uppgraderingar nya, mer effektiva, flexibla och privata sätt att överföra bitcoin.

Schnorr Signatures

BIP 340 introducerar Schnorr signatures för användning i Bitcoin. Schnorr signatures kommer att medföra flera fördelar för Bitcoin-användare, inklusive överlägsen integritet, lägre avgifter och mer flexibel multisig.

Denna BIP specificerar också hur Schnorr publika nycklar och signaturer ska kodas för användning i Bitcoin. Offentliga nycklar som används för Schnorr-signaturer är 32 byte långa, jämfört med ECDSA:s 33-byte publika nycklar. Dessutom är Schnorr signatures 65 byte långa, jämfört med ECDSA-signaturer, som sträcker sig från 71-72 byte, inklusive en sighashflagga. Dessa små utrymmesbesparingar erbjuder avgiftsbesparingar för Bitcoin-användare som använder Taproot.

Viktiga höjdpunkter

    • Taproot är en föreslagen uppgradering till Bitcoin som kommer att introducera flera nya funktioner.
    • Taproot kommer att integrera Schnorrs digitala signaturschema i Bitcoin, vilket uppgraderar Bitcoins kärnkryptografi.
    • Taproot bygger på SegWit-uppgraderingen för att förbättra Bitcoins integritet och lägre transaktionsavgifter.
    • Taproot gör framtida Bitcoin-uppgraderingar enklare genom att reformera Bitcoins skriptspråk.

Taproot

Medan BIP 340 definierar specifikationen för att generera och koda Schnorr signatures och publika nycklar, definierar BIP 341 hur Bitcoins protokoll kommer att integrera Schnorr signatures. Specifikt måste Bitcoin Script uppdateras för att även utvärdera Schnorr signatures. Taproot integrerar också Merkelized Alternative Script Trees (MAST), som tillåter användare att låsa utdata till flera skript.

Pay-to-Taproot outputs är version 1 SegWit-outputs, och alla Taproot-transaktioner är SegWit-transaktioner.

Pay-to-taproot (P2TR)

Taproot introducerar också en ny skripttyp, ett sätt att spendera bitcoin. Pay-to-Taproot (P2TR) tillåter användare att betala till antingen en Schnorr offentlig nyckel eller Merkle root av en mängd andra skript. Med denna nya skripttyp kan en användare skapa en UTXO som kan låsas upp och spenderas av antingen ägaren till den privata nyckeln eller någon som kan uppfylla kraven för vilket skript som helst i Merkle-trädet.

Nyckelaggregation (Key Aggregation)

Schnorrs nyckelaggregationsfunktion möjliggör denna flexibla funktionalitet. När bitcoin skickas till en P2TR-output är den låst till en enda offentlig nyckel, kallad Q. Den här publika nyckeln Q är dock faktiskt en aggregering av en offentlig nyckel P och en offentlig nyckel bildad från Merkle-roten av många andra skripttyper . Vilket som helst av de alternativa skripten i Merkle-trädet kan användas för att spendera utdata.

Denna design gör det möjligt för användare att välja mellan komplexa, godtyckliga skript såväl som enkel betal-till-publik-nyckelfunktionalitet vid tidpunkten för utgifter, snarare än vid tidpunkten för mottagning. Det gör också att alla Taproot-outputs ser likadana ut. Eftersom multisig-outputs, single sig-outputs och andra komplexa smarta kontrakt alla ser likadana ut på blockkedjan, kommer många kedjeanalysheuristiker att bli oanvändbara, vilket bevarar integriteten för alla Taproot-användare.

Tapscript

För att implementera P2TR-transaktioner lägger BIP 342 till och uppdaterar flera opkoder. Dessa nya skript används för att verifiera Taproot-utgifter och Schnorr-signaturer, och de är gemensamt kända som Tapscript. Tapscript designades för att maximera framtida flexibilitet för P2TR-utgifter för att möjliggöra uppgraderingar som ännu inte är förutsedda.

Fördelarna med Taproot

Taproot-uppgraderingen erbjuder många fördelar för Bitcoin-användare som adopterar Taproot såväl som de som inte gör det. Introduktionen av Schnorr-signaturer erbjuder betydande fördelar för integritet och säkerhet, men Taproot och Tapscript ger också sina egna fördelar.

Utrymmesbesparingar

De flesta Taproot (P2TR)-outputs förbrukar mindre utrymme på blockkedjan än vanliga P2PKH-outputs, men är något större än P2WPKH-outputs. Detta beror mest på det faktum att P2TR-outputs låser bitcoin direkt till en offentlig nyckel, inte hashen för den publika nyckeln. Detta gör sändning till Taproot-outputs något dyrare, eftersom publika nycklar tar upp mer utrymme än publika nyckelhashar. Men att spendera Taproot-outputs är betydligt billigare eftersom den publika nyckeln ingår i scriptPubKey och därför inte behöver inkluderas i Script Witness.

Taproot definierade också kodningsschemat för Schnorrs publika nycklar och signaturer, vilket gjorde dem kortare än deras ECDSA-motsvarigheter, vilket ger ytterligare avgiftsbesparingar.

Sekretessfördelar

Integritetskonsekvenserna av Taproot är kanske den viktigaste delen av uppgraderingen. Genom att introducera Schnorr-signaturer och nyckelaggregation ser multisignaturkontrakt inte längre annorlunda ut än kontrakt med enstaka signaturer, vilket ger integritet till alla Taproot-användare.

Taproot introducerar också betydande integritetsfördelar genom integrationen av MAST. Som diskuterats ovan tillåter Taproot att bitcoin låses till många skript samtidigt. Men när du spenderar bitcoin från en Taproot-output behöver spenderaren inte avslöja alla möjliga skript som kunde ha låst upp bitcoin, bara manuset som de faktiskt använde. I de flesta fall kommer Taproot-användare sannolikt att använda alternativet betala-till-public-nyckel, vilket gör att de kan hålla alla säkerhetskopieringsalternativ som de kan ha planerat privata.

Eftersom Lightning Network är beroende av 2-av-2 multisig, gör Taproot det omöjligt att urskilja vilka transaktioner som skapar Lightning-kanaler.

Säkerhetsuppgraderingar

På en teknisk, teoretisk nivå anses Schnorr-signaturer vara säkrare än ECDSA-signaturer eftersom Schnorr-signaturer bevisligen är säkra med färre antaganden. Liksom alla kryptografiska scheman för elliptiska kurvor, förlitar sig både ECDSA och Schnorr på antagandet att det diskreta logaritmproblemet är svårt. ECDSA förlitar sig dock på ytterligare antaganden för att garantera sin säkerhet. Ändå har det inte funnits några exempel på att ECDSA systematiskt äventyras under Bitcoins existens.

Schnorr-signaturer eliminerar också all signaturformbarhet som kan ha funnits i ECDSA-signaturer. Även om transaktionsformbarheten löstes av SegWit-uppgraderingen, kvarstod formbarheten av signaturer som en egenskap hos ECDSA.

Aktivering av taproot

Från och med nu är Taproot fortfarande en föreslagen uppgradering och har ännu inte aktiverats på Bitcoin-nätverket. När en uppgradering till Bitcoin föreslås diskuteras den först av utvecklargemenskapen. När förslaget är formaliserat tilldelas det ett BIP-nummer. Efter att koden har skrivits, granskats, testats och sammanfogats måste Bitcoin-nodoperatörer bestämma hur och när uppgraderingen ska aktiveras.

Schnorr-, Taproot- och Tapscript-uppgraderingarna fick BIP 340, 341 och 342 i januari 2020 och har varit under diskussion och utveckling sedan dess. I slutet av 2020 slutfördes kodimplementeringen för alla tre uppgraderingarna, testades, granskades och slogs samman till Bitcoin Core.

Som det ser ut för närvarande finns all nödvändig kod för att implementera Taproot på en uppdaterad Bitcoin-nod. Nu måste gemenskapen besluta om och hur Taproot ska aktiveras och börja tillämpa de nya konsensusreglerna. Det finns flera metoder för att aktivera uppgraderingar till Bitcoin, så gemenskapen måste först välja en väg och sedan köra den.

Bitcoin aktiveringsvägar

BIP 8 och BIP 9 definierar två populära metoder för att aktivera uppgraderingar. Båda processerna börjar med att undersöka Bitcoin-miners för stöd. Om en överväldigande majoritet av miners signalerar sitt stöd genom meddelanden i blocken de bryter, aktiveras uppgraderingen. Skillnaden mellan BIP 8 och BIP 9 uppstår om minerstödet är otillräckligt. I så fall anger BIP 9 att uppgraderingen inte ska ske, medan BIP 8 anger att uppgraderingen ska aktiveras efter en fördröjningsperiod.

När aktiveras Taproot?

Taproot kommer att aktiveras när Bitcoin når en förutbestämd ”blockhöjd” på 709 632 i november.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *

Den här webbplatsen använder cookies. Genom att klicka på knappen "Acceptera" och sedan använda webbplatsen godtar du detta.