Segregated Witness on siirtynyt viimeiseen testausvaiheeseen ennen käyttöönottoa Bitcoin-verkossa. Tämä on hyvä uutinen ennen kaikkea siksi, että innovaatio tuo kapasiteetin kasvun mahdollistamaan enemmän tapahtumia verkossa, samalla kun se ratkaisee myös tapahtumien muovattavuuden.

Ja se esittelee komentosarjojen version – laajennuksen Bitcoin-protokollalle, joka sallii kokonaan uuden luokan innovaatioita.

Yksi näistä välittömistä innovaatioista on ollut jo jonkin aikaa useiden Bitcoin-kehittäjien toivelistojen kärjessä: Schnorr-allekirjoitukset.

Erillisen todistajan lähestyvän julkaisun myötä Schnorr-salausalgoritmin toteutus saattaa seurata pian sen jälkeen, mikä saattaa parantaa Bitcoinin skaalautuvuutta, tehokkuutta ja yksityisyyttä yhdellä kertaa.

Näin.

Allekirjoitukset

Ensinnäkin lyhyt uudelleen: mitä ovat allekirjoitukset?

Bitcoinin ytimessä on matemaattinen temppu, jota kutsutaan julkisen avaimen salaukseksi. Salausjärjestelmä, joka käyttää kahta erilaista avainta (todella numerosarjaa): yksityisiä avaimia ja julkisia avaimia.

Yksityinen avain ja julkinen avain on yhdistetty matemaattisesti. Mutta vaikka julkisen avaimen valmistaminen yksityisestä avaimesta on erittäin helppoa, yksityisen avaimen tuottaminen julkisesta avaimesta on käytännössä mahdotonta. Se on “yksisuuntainen katu”.

Voidakseen käyttää bitcoineja tietystä Bitcoin-osoitteesta, on osoitettava “omistusoikeus” (tai: tieto) yksityiseen avaimeen, joka viittaa kyseiseen osoitteeseen liittyvään julkiseen avaimeen. Ja yksityisen avaimen omistajuuden osoittamiseksi ilman salaista avainta on käytettävä salausta.

Allekirjoitus luodaan suorittamalla laskelma tapahtumadatan ja yksityisen avaimen avulla. Ja tässä tulee julkisen avaimen salauksen taika: Kun tiedät julkisen avaimen, kuka tahansa voi nähdä, onko allekirjoituksen luomiseen käytetty oikeaa yksityistä avainta. Tarvitsematta koskaan tietää itse yksityistä avainta.

Siksi yksityisen avaimen “omistaja” voi allekirjoittaa kaupan ja käyttää bitcoineja huolimatta siitä, että joku muu voi ottaa yksityisen avaimen ja varastaa bitcoinit; yksityistä avainta ei koskaan paljasteta, ja allekirjoitus on voimassa vain kyseiselle tapahtumalle.

(Jos haluat tarkemman selityksen Bitcoinin julkisen avaimen salauksesta, katso tämä artikkeli. Tai jatka vain lukemista. Vaikka allekirjoituksen peruskäsitteellä on merkitystä, yksityiskohdat eivät ole välttämättömiä tämän artikkelin kannalta.)

Schnorr

Joten mitä sitten ovat Schnorrin allekirjoitukset?

Schnorr, nimetty keksijänsä Claus-Peter Schnorrin mukaan, on allekirjoitusjärjestelmä: sarja matemaattisia sääntöjä, jotka yhdistävät yksityisen avaimen, julkisen avaimen ja allekirjoituksen. Monet salakirjoittajat pitävät Schnorr-allekirjoituksia alan parhaina, koska ne tarjoavat vahvan oikeellisuuden, eivät kärsi muokattavuudesta, ovat suhteellisen nopeasti todennettavissa ja – mikä tärkeintä – tukevat moniallekirjoitusta: useita allekirjoituksia voidaan koota yhdeksi uudeksi allekirjoitukseksi.

Tähän asti ei kuitenkaan ole ollut mahdollista käyttää Schnorria Bitcoinissa. Toinen allekirjoitusmallityyppi, elliptisen käyrän digitaalinen allekirjoitusalgoritmi (ECDSA), paistetaan Bitcoin-protokollaan, ja sen muuttaminen edellyttäisi kovaa haarukkaa.

Siellä erotettu todistaja tulee sisään.

Erotetun todistajan avulla kaikki allekirjoitustiedot siirretään erilliseen tapahtuman osaan: todistajaan, jota ei ole upotettu “vanhaan” Bitcoin-protokollaan. Ja skriptiversioiden ansiosta melkein mitä tahansa todistajassa sovellettua sääntöä voidaan muuttaa pehmeällä haarukalla. Sisältää käytetyn allekirjoitusjärjestelmän tyypin.

Tämä avaa oven Schnorrille.

Kapasiteetti

Schnorr-ominaisuus, joka hyötyy eniten Bitcoinista, on moniallekirjoitusten yhdistäminen.

Monet Bitcoin-tapahtumat sisältävät useita syötteitä, viitaten osoitteisiin, joista bitcoinit lähetetään. (Tätä voidaan verrata siihen, kuinka käteismaksut koostuvat usein useista pienemmistä laskuista ja kolikoista suuremman rahasumman maksamiseksi.) Tällä hetkellä kaikki nämä syötteet edellyttävät omaa allekirjoitusta, mikä tarkoittaa, että kaikki nämä allekirjoitukset on sisällytettävä tapahtumaan, kaikki on lähetettävä verkon kautta, ja kaikki on sisällytettävä lohkoon.

Schnorrin kanssa kaikki syötteet vaativat sen sijaan vain yhden yhdistetyn allekirjoituksen edustamaan kaikkia näitä erilaisia ​​allekirjoituksia. Tämä tarjoaa ilmeisen datan edun, koska tapahtumaan on sisällytettävä vain yksi allekirjoitus, vain yksi on lähetettävä verkon kautta ja vain yksi on sisällytettävä lohkoon. Tämä tarkoittaa, että tapahtumille on enemmän tilaa.

Esimerkiksi:

Erillinen todistaja, kuten Bitcoin Core ehdottaa, tarjoaa (noin) 75 prosentin alennuksen kaikista todistajan sisältämistä tiedoista alkuperäisen lohkon sijaan. Yksi megatavu todistajatietoja “punnitaan” 25 megatavuina, mikä jätä tilaa 75 megatavun liiketiedoille alkuperäisessä lohkossa, yhteensä 1 megatavu.

Jos yhdistetyt Schnorr-allekirjoitukset pienentävät todistajatietojen kokoa, esimerkiksi 1 megatavusta 5 megatavuun, tämä 5 megatavua diskontataan sitten 0,125 megatavuun, jolloin alkuperäisessä lohkossa jää tilaa jopa 0,875 megatavulle. (Kapasiteetin kasvu noin 17 prosenttia.)

Lisätyn huoneen tarkka määrä riippuu lohkoihin sisältyvistä tapahtumista. Mutta Bitcoin Core -kehittäjän Eric Lombrozon karkeat arviot viittaavat siihen, että Schnorr-allekirjoitukset voisivat lopulta lisätä kokonaiskapasiteettia vähintään 40 prosenttia – tämä on lisättyä 60–100 prosenttia, jonka Segregated Witness jo tarjoaa.

Multisig

Edellä kuvattu kapasiteetin lisäys pätee tavallisiin tapahtumiin, koska monet tapahtumat sisältävät useamman kuin yhden syötteen. Mutta etu voi olla vieläkin suurempi multisig-tapahtumien tapauksessa – tapahtumat, joissa yksi tulo itse vaatii useita allekirjoituksia (tyypillisesti eri ihmisiltä).

Kuten tavallisissa tapahtumissa, mihinkään multisig-tapahtumaan ei tarvitse sisällyttää enempää kuin yksi allekirjoitus. Riippumatta siitä, kuinka monta allekirjoitusta vaaditaan, riippumatta siitä, kuinka monta osallistujaa on mukana.

Tämä avaa oven huomattavasti monimutkaisemmille älykkäille sopimusrakenteille murto-osalle normaalisti tarvittavista tiedoista. Olipa kyse kahdesta kolmesta, kolmesta viidestätoista tai sadasta sadasta multisig-tapahtumasta, kaikki sisältävät saman määrän allekirjoitustietoja kuin tyypillinen yhden allekirjoituksen tapahtuma.

Yksityisyys

Ja kolmanneksi, Schnorr-allekirjoitukset voisivat tarjota toisen mielenkiintoisen edun: kannustettu yksityisyys.

Kuten mainittiin, yksi tapahtuma voi sisältää useita syötteitä. Yleisimmin nämä syötteet viittaavat osoitteisiin, joita kaikkia hallitsee sama henkilö. (Useiden laskujen ja kolikoiden esimerkin mukaan.)

Mutta Bitcoin Core -kehittäjän Gregory Maxwellin keksimä yksityisyyttä parantava temppu,  KolikkoLiity, mahdollistaa eri käyttäjien yhdistää kaikki tapahtumat yhdeksi tapahtumaksi. Tämä yksi tapahtuma sisältää useita eri maksajilta tulevia syötteitä, jotka lähettävät rahaa useille eri maksunsaajille kuuluville tuotoksille.

(Tätä voidaan verrata ryhmään ihmisiä, jotka heittävät laskut ja kolikot yhteen koriin, jota he käyttävät ostoksilla eri kaupoissa ostaakseen kaikki haluamansa tuotteet. Jokainen henkilö saa tavarat, joista henkilö maksaa, mutta on epätodennäköistä, että kenenkään “oma” lasku maksetaan kyseisen henkilön ostamasta tuotteesta.)

Jos se tehdään oikein, CoinJoin on hieno tapa parantaa yksityisyyttä Bitcoin-protokollassa, koska on epäselvää, mitkä panokset maksivat mitkä tuotokset tarkalleen, saati kuka henkilö maksoi kenelle henkilölle.

CoinJoin ei ole uusi käsite. Mutta tähän asti CoinJoin oli tyypillisesti hieman vaivaa. Sellaisena useimmat ihmiset eivät häiritse. Ja koska useimmat ihmiset eivät vaivaudu, ne, jotka häiritsevät, voidaan automaattisesti merkitä epäilyttäviksi; mahdollisesti voittaa CoinJoinin käyttötarkoituksen.

Mutta Schnorrin allekirjoitukset voivat lisätä uuden edun CoinJoiniin. Sen avulla kaikki CoinJoin-tapahtuman osallistujat voivat paitsi yhdistää tapahtumansa myös yhdistää allekirjoituksensa. Ja se tarkoittaa, että liiketoimen koko olisi itse asiassa pienempi kuin kaikki yksittäiset liiketoimet yhteensä. Tämä puolestaan ​​tarkoittaa, että kaivostyöläiset perivät yleensä pienemmän maksun kaupan käsittelystä.

Schnorrin ansiosta CoinJoin ei vain lisää yksityisyyttä, mutta myös – mikä tärkeintä – alentaa kaikkien osallistujien kustannuksia. Itse asiassa olisi kustannushyötyä käyttää kaikkein yksityisintä vaihtoehtoa, mikä saattaa vain tehdä siitä vaihtoehdon kaikille – lisäämällä huomattavasti Bitcoinin yksityisyyttä kaikille.

Huomaa: Prosessi Schnorr-allekirjoitusten toteuttamiseksi Bitcoinissa on edelleen konseptivaiheessa. Vaikka useimmat Bitcoin Core -kehittäjät näyttävät uskovan, että Schnorr-allekirjoitukset voidaan ottaa turvallisesti käyttöön Bitcoinissa, on liian aikaista sanoa varmuudella.

Kiitos Bitcoin Core -kehittäjälle ja  Blockstream perustaja tohtori Pieter Wuille tietojen toimittamisesta ja Bitcoin Core -kehittäjä ja  Ciphrex Toimitusjohtaja Eric Lombrozo oikolukusta ja muista ehdotuksista.