Bitcoin rajoittamaton, yksi Bitcoin-ydin vuoden 2015 lopulla käyttöönotetut ohjelmistohaarukat saivat paljon huomiota viime kuukausina. Projekti sai hash-virtatukea useilta uusilta Bitcoin-kaivosaltailta, mukaan lukien ViaBTC, GBMiners ja BTC.TOP, sillä aikaa solmun käyttöönotto näyttää olevan myös nousussa.
Bitcoin Unlimitedin keskeinen idea – määritelty kohdassaBitcoinin rajoittamaton parannusehdotus 001”(BUIP001) – on Bitcoinin lohkokokorajoituksen hallitseminen käyttäjille ja kaivostyöläisille. Tai ehkä tarkemmin, jotta tästä ohjauksesta tulisi selkeämpi ja helpompi käsitellä.
Tämä valvonta tapahtuu kuitenkin Bitcoinin vahvan ja automatisoidun konsensusmekanismin kustannuksella. BUIP001 tarjoaa useita skenaarioita, joissa eri käyttäjät päätyvät eri ketjuihin – joko väliaikaisesti tai pysyvästi.
Tässä on (todennäköisesti epätäydellinen) yleiskatsaus.
(Huomaa: Jos et ole varma, kuinka Bitcoin Unlimited toimii, lue ensin “Lähempi katsaus Bitcoin Unlimitedin konfiguroitavaan lohkokokoehdotukseen”.)
Jos kaikki eivät vaihda Bitcoin Unlimitediin
Ensimmäinen esimerkki on myös ilmeisin.
Tällä hetkellä näyttää erittäin epätodennäköiseltä, että erilaiset Bitcoin-toteutukset – kuten Bitcoin-ydin, Libbitcoin, BTCD tai Bcoin – ottaa käyttöön BUIP001: n tai jotain yhteensopivaa. Tämä pätee erityisesti siksi, että Bitcoin Unlimited -tiimi ei ole lähettänyt BUIP001: tä ristiin toteutettavaan Bitcoin Improvement Ehdotus (BIP) -prosessiin; useimmat toteutukset eivät siksi edes käsittele ehdotusta.
Mutta elleivät kaikki merkittävät Bitcoin-toteutukset hyväksy BUIP001: ta tai yhteensopivaa ratkaisua, lohkoketju ei voi lähentyä tapaa, jolla Bitcoin Unlimitedin kannattajat ajattelevat. Sen sijaan, jos suurin osa kaivostyöläisistä (hajautusvoimalla) kasvattaa enimmäistuotokokoa (MG) ja liikaa lohkokokoa (EB) yli megatavun suuruisten lohkojen tuottamiseksi, Bitcoin jakautuisi kahteen yhteensopimattomaan verkkoon ja valuutaan, toisin kuin Ethereum ja Ethereum Classic.
Koska tätä jakoa ei kuitenkaan koordinoida eikä se sisältäisi varotoimenpiteitä, seuraukset voivat olla paljon pahemmat kuin Ethereumin ja Ethereum Classicin jakaminen.
Yhden megatavun käyttäjät kokevat haittoja ja vielä enemmän, jos heidän hajautusvoimansa edustaa aluksi pienempää vähemmistöä. Tähän sisältyisi (paljon) hitaampia lohkovahvistuksia, ehkä jopa siihen pisteeseen saakka, jossa heidän ketjustaan tulee melkein käyttökelvoton (ainakin väliaikaisesti). Lisäksi he ovat vaarassa uusintahyökkäykset jos he haluavat käyttää myös “Bitcoin Unlimited -ketjua”.
Bitcoin Unlimited -käyttäjät kärsivät samanlaisista haitoista, vaikka heidän alkuperäiset estovahvistuksensa eivät olisikaan yhtä hitaita, koska heillä olisi tukea hash-power-enemmistöltä.
Tämän torjumiseksi Bitcoin Unlimited -käyttäjät olisivat kuitenkin epävarmoja siitä, olisiko heidän “ketjuaan” olemassa ollenkaan. Jos yhden megatavun ketju pitäisi koskaan ohittaa “Bitcoin Unlimited -ketjun” pituudelta (oikeastaan: täydellinen todiste työstä), Bitcoin Unlimited -solmut siirtyisivät automaattisesti takaisin yhden megatavun ketjuun. Näin ollen he hävittäisivät (“orpojen”) koko “Bitcoin Unlimited -ketjun” jakautumisen jälkeen, vaikka ketju olisi tuhansien korttelien syvä. Kaikki “heidän” tapahtumansa unohdettaisiin, mikä saattaa maksaa paljon ihmisille paljon rahaa.
Jos joukko vakavia yhden megatavun kannattajia ja keinottelijoita voi saada tämän skenaarion näyttämään jopa hieman uskottavalta, itsensä toteuttava profetioiden dynamiikka voi aiheuttaa eksistentiaalisen uhan “Bitcoin Unlimited -ketjulle”: kukaan ei halua pitää arvoa ketjussa, joka saattaa olla heitetään pois.
Jos kaikki siirtyvät Bitcoin Unlimitediin
Oletetaan kuitenkin, että siirtyminen BUIP001: een menee sujuvasti. Kaikissa merkittävissä Bitcoin-toteutuksissa otetaan käyttöön uudet konfiguroitavat vaihtoehdot, ja kaikki käyttäjät ja kaivostyöläiset päivittävät ohjelmistonsa vastaavasti.
Jälleen kerran – edes tässä skenaariossa – ei ole mitään teknistä syytä siihen, että kaikki käyttäjät yhdistyvät mielekkäästi yhteen ketjuun. Eri käyttäjät voivat määrittää solmunsa pysymään yksimielisyyteen loppuelämänsä ajan.
Yksinkertaisena esimerkkinä vähemmistö kaivostyöläisistä voi määrittää sekä MG: n että EB: n yhdeksi megatavuksi, kun taas liialliseksi hyväksymissyvyydeksi (AD) asetetaan 10000000. Toisin sanoen nämä solmut jäljittelevät nykyistä yhden megatavun lohkokokorajoitusta noin kahden vuosisadan ajan – riippumatta siitä, mitä muu verkko tekee.
Samaan aikaan suurin osa kaivostyöläisistä voi asettaa MG: n ja EB: n luomaan ja hyväksymään enintään kahden megatavun lohkot.
Heti kun yksi kaivosmies kaivaa kahden megatavun lohkon, suurin osa kaivostyöläisistä rakentaa tämän lohkon ja jatkaa tätä ketjua. Kaivostyöläisten vähemmistö jättää kuitenkin huomiotta tämän ketjun käytännössä ikuisesti: täsmälleen tämän artikkelin edellisessä osassa kuvatulla tavalla.
Ja se sisältäisi samat riskit kuin aiemmin on kuvattu. Jos yhden megatavun ketju koskaan ohittaa kahden megatavun ketjun, kahden megatavun ketju hylätään kokonaan. Jopa tuhansien korttelien jälkeen.
Jos kaikki rajoittavat AD: n neljään vahvistukseen
Bitcoin Unlimited -käyttäjillä voi olla vahvempi lähentyminen yhdessä ketjussa teknisin keinoin, jos he pitävät AD-arvonsa suhteellisen matalana. Bitcoin Unlimitedin oletusasetus on neljä: Liiallinen lohko edellyttää, että sen päälle louhittuja neljää lohkoa pidetään voimassa.
Mutta tämä aiheuttaa myös ongelmia.
Ensimmäinen ongelma on, että vaikka tämäkin oletusarvo on pieni, kaikki alle viisi vahvistusta sisältävät tapahtumat ovat paljon vähemmän turvallisia kuin nyt. Oletetaan, että tapahtuma näyttää kolme vahvistusta käyttäjän lompakossa. Tällä käyttäjällä ei ole mitään tapaa tietää, louhitaanko vaihtoehtoista lohkoketjua kilpailevalla (kaksinkertaisesti käytetty) tapahtumalla, jolla on jo neljä vahvistusta. Tämä voi tapahtua milloin tahansa.
Jos tämä vaihtoehtoinen ketju saavuttaa ensin viidennen vahvistuksensa, käyttäjän ketju hylätään ja hänen saapuva tapahtuma menetetään – vaikka sillä oli kolme vahvistusta.
Tietenkin “orpoja lohkoja” on jo olemassa, ja käyttäjien, jotka tarvitsevat enemmän suojausta, pitäisi odottaa lisää vahvistuksia.
Mutta eksoottisten ja kalliiden haitallisten hyökkäysten estäminen, kolme orpoja lohkoja voi tällä hetkellä johtua vain kummajaisista sattumista. Eri kaivostyöläisten ryhmien on löydettävä sattumalta kolme lohkoa melkein täsmälleen samaan aikaan, kolme erillistä ja sitä seuraavaa sattumaa, jotta verkko kokisi, että monet orpot.
Toisaalta Bitcoin Unlimited heittää uuden tekijän sekoitukseen ja lisää syyn verkkoon kokea kolme orpoa lohkoa. Kaivostyöläiset kilpailevat pisin voimassa olevan ketjun pidentämiseksi, mutta myös äänestävät ketjujen välisistä pöytäkirjasäännöistä. Tämä prosessi olisi myös hyökkääjille näkyvä ja melko ennakoitavissa, ja siksi helposti hyödynnettävissä.
Toinen ongelma on se, että AD: n pitäminen turvallisuussyistä oletusarvona neljä vahvistusta olennaisesti heikentää BUIP001: n tarkoitusta. Vaikka Bitcoin Unlimitedin on tarkoitus ohjata lohkon kokorajoitusta sekä käyttäjille että (kaikille) kaivostyöläisille, matalat AD-tasot varmistavat, että pieninkin kaivostyöntekijöiden enemmistö voi aina kumota paikalliset lohkokokoasetukset yksinkertaisesti kaivamalla sarjan isompia lohkoja. Tämä tekee MG: stä ja EB: stä merkityksettömiä kaikille muille: “lumelääkekontrollit.”
Todellakin, AD ehdottaa outoa valintaa: Joko solmut ja kaivostyöläiset asettavat korkean AD: n suhteelliselle autonomialle, mutta voivat jakaa verkon mahdollisesti haitallisilla seurauksilla; tai nämä solmut ja kaivostyöläiset valitsevat matalan AD: n parantamaan lähentymistasoa – mutta vain siksi, että he luopuvat tehokkaasti valvonnasta kaivostyöntekijöiden enemmistölle. (Ja jos tarkoituksena on luopua hallinnasta useimmille kaivostyöläisille, käytettävissä on yksinkertaisempia ratkaisuja.)
Kilpailuoikeudellisissa olosuhteissa
Asiat pahenevat kilpailuaikana.
Jos kaikki eivät halua parasta bitcoinille, ja sen sijaan jotkut yhteisöt – jostain syystä – haluaisivat mieluummin Bitcoinin epäonnistuvan, BUIP001: n turvallisuusoletukset heikkenevät edelleen. Ja mitä enemmän varoja vastustajalla on käytettävissään sekasorton aikaansaamiseen, sitä huonompi Bitcoin Unlimitedin lähentymismekanismi toimisi.
Ensinnäkin, solmujen signalointi on triviaali. Kuka tahansa, jolla on resursseja vääriä “väärennettyjä” (taloudellisesti epäolennaisia) solmuja varten, voisi teeskennellä, että tietylle lohkokoon raja-arvolle on laaja käyttäjän tuki, vaikka todellisuudessa ei ole. Jos kaivostyöläiset kulkevat näiden signaalien kautta, he voivat haarautua ketjuun odotettua vähemmän käyttäjän tuella.
Lisäksi haitallinen kaivosmies voi usein jakaa verkon. Tällainen kaivosmies voisi tarkkailla muiden kaivostyöläisten ilmoittamia EB-tasoja (joita ei ole niin helposti huijata), ja kaivaa tarkoituksella lohkon, joka on aivan niiden kaivosten hyväksymien välissä. Jos noin 50 prosenttia hash-tehosta hyväksyy enintään kahden megatavun lohkot ja muut 50 prosenttia tukee isompia lohkoja, ensimmäiset 50 prosenttia jättävät huomioimatta 2,01 megatavun lohkon ja muut 50 prosenttia hyväksyvät sen..
Olettaen, että oletusarvoinen AD-arvo pidetään yllä, ketju voisi hajota yli tunnin ajaksi. Kuten edellisessä osassa selitettiin, Bitcoin-verkko (t) olisi erittäin epäluotettava tänä aikana, koska ketju jakautumisen kummallakin puolella voidaan hylätä.
Vastustaja, joka hallitsee vain 0,7 prosenttia maailmanlaajuisesta hash-voimasta, voi aiheuttaa tämän kuohunnan noin kerran päivässä. Ja ellei ylivoimainen kaivostyöntekijöiden enemmistö ole jo samaa mieltä EB: stä, tämän suloisen verkon väärinkäytön pitäisi olla aina olemassa.
Tämän hyökkäyksen seurauksena puolet kaikista kaivostyöläisistä saavuttaisi AD-kynnyksensä ja avaisi “tahmeat porttinsa”. Tämä voi sallia toisen hyökkäysaallon. Haitallisella kaivosmiehellä on nyt noin 24 tuntia aikaa kaivaa vieläkin suurempi lohko, joka – ironista kyllä - hyväksyisi vain ketjun alun perin pienempi lohko, koska niiden tahmeat portit ovat auki, ja ketjun alun perin suurempi lohko olisi hylätä. Tämä loisi uuden jaon.
Viimeisenä, jos ja kun tämä uusi “tahmea porttiketju” saavuttaa jäljellä olevien solmujen AD-kynnysarvot, kaikki tahmeat portit ovat auki, eikä lohkon kokorajoitusta ole lainkaan. Vastustaja voi nyt kaivaa niin suuria lohkoja kuin he voivat kappale ketjua, koska kaikki solmut eivät voi pysyä mukana – ehkä kaistanleveysrajoitusten, latenssin tai muiden koneiden rajojen vuoksi.
Nopea yksimielisyys
Vaikka Bitcoin Unlimited tarjoaa kiistatta enemmän henkilökohtaista autonomiaa käyttäjille, se ei takaa teknistä lohkoketjun lähentymistä. Mutta tämä ei ole uutta. Jossakin määrin siihen on koskettu jopa Bitcoin Unlimited -ohjelmassa UKK.
Silti Bitcoin Unlimitedin kannattajat odottavat käyttäjien yhdistyvän yhteen lohkoketjuun. Tämä selitetään sillä, mitä ehkä parhaiten pidetään Bitcoin Unlimitedin taustalla olevana filosofiana: “Emergent Consensus”.
Puhtaasti teknisen mekanismin sijasta Emergent Consensus on vakaumus siitä, että kaikilla Bitcoin-ekosysteemin osallistujilla on riittävän vahva (taloudellinen) kannustin löytää yksimielisyys yhdestä lohkoketjusta, vaikka heidän ohjelmistonsa eivät tekisi tätä automaattisesti.
Seuraavassa artikkelissa tarkastellaan tätä Emergent Consensus -filosofiaa tarkemmin.
Kirjoittajan huomautus: Tämä artikkeli ei ole täydellinen yleiskatsaus kaikista ongelmista, joita BUIP001 saattaa aiheuttaa. Mikä tärkeintä, siinä jätetään huomioimatta kompromissit ja heikkoudet, jotka johtuvat ylimitoitetusta (tai kelluvasta) lohkon kokorajoituksesta, kuten solmu keskittäminen, kaivosmies keskittäminen, tai maksu taloustiede, keskittyä sen sijaan blockchain-lähentymiseen (puuttuminen).
”Jonny1000” kirjoitti tätä artikkelia.