Par bitcoin segregated liecinieku zaudējumiem

Bitcoin Q&A: SegWit and fork research (Jūlijs 2019).

Anonim

Segregēts liecinieku ir bijis Bitcoin ilgtermiņa mērogošanas debates centrs, jo to pirmo reizi ieviesa Blockstream līdzdibinātājs un Bitcoin Core izstrādātājs Dr Pieter Wuille pirms diviem mēnešiem.

Izveicīga metode, kā pārvietot paraksta datus no tipiskiem darījumiem uz "papildinājumu blokiem", ir noteikts, ka Bitcoin protokols tiek uzlabots vairākos veidos. Turklāt risinājumu var izvelt kā mīkstu dakšiņu, kas nozīmē, ka tikai kalnračiem ir jāuzlabo sava programmatūra; visi pārējie mezgli to var izdarīt, ja un kad tie vēlas.

Jauninājums ir izvietots kā pirmais mērogojamības "ceļvedī" solis, ko noteicis Bitcoin Core, un to atbalsta lielais Bitcoin attīstības kopienas segments.

Bet Segregated Witness nav brīvas no pretrunām. Nevis Segregated Witness mīkstais dakša, nesen uzsāktais alternatīva Bitcoin ieviešana Bitcoin Classic plāno palielināt Bitcoin bloka izmēra ierobežojumu līdz 2 megabaitiem ar cieto dakšu, kas nozīmē, ka visi pilni mezgli tīklā ir jājaunina sinhroni.

Šie ir argumenti pret Segregated Witness mīksto dakšiņu - un to pretargumenti.

Nepieciešams "neglīts" kods

Purītisks arguments pret Wuila priekšlikumu ir tas, ka Segregated Witness mīkstais dēlis veido "neglītu" koda risinājumu. Vissvarīgākais, tas izmanto daļiņas no minerāģenerācijas ģenerētā monētu darījuma darījumiem tādiem mērķiem, kādus tie sākotnēji nebija paredzēti. Pievienotā sarežģītība varētu radīt jaunas problēmas, jo protokols turpina attīstīties.

Pretargumenti

Kaut arī lielākā daļa izstrādātāju piekrīt, ka cietā dakša būtu tīrāks risinājums, tas nenozīmē, ka šķelto liecinieku mīksta dakša ir nedroša. Agrāk Bitcoin Core izstrādes komanda ir izveidojusi vairākus līdzīgus mīkstus dakšiņas un apgalvo, ka tas neradīs lielāku risku.

Tajā pašā laikā cietā dakša padarīs visu esošo pilno mezglu programmatūru nesaderīgu ar jaunāku pilna mezgla programmatūru, kas, iespējams, arī nav ļoti graciozs.

Tas pārāk daudz bīstamo izstrādātāju

Segregated Witness šuvju risinājums apgrūtina izstrādātājus - gan tagad, gan nākotnē. Tas jo īpaši attiecas uz Bitcoin bibliotēku un seifu izstrādātājiem, jo ​​viņiem būs jāpielāgo sava programmatūra, lai integrētu Segregated Witness. Tam būs jāpieliek lielākas pūles nekā cieto dakšu bloka lieluma palielināšanai.

Pretarguments

Lielākā daļa pašreizējo bibliotēku un seifu izstrādātāju, šķiet, neuzskata, ka pievienotā slodze ir liela problēma. Daudzi pat ir diezgan satraukti par inovāciju, un viņi parasti ņem vērā papildu ieguvumus, kas ir vērti pūliņiem. (Skat. Bitcoin Magazine 's izstrādes sēriju, kas ir saistīta turpmāk šajā rakstā.)

Pievienotās bloķētās vietas pieaugums būs lēns

Tāpat kā Bitcoin Classic piedāvātā grūti dakša, Segregated Witness teorētiski piedāvā līdz 1 megabaits pievienotās bloka vietas, kopumā 2 megabaiti.Bet šī optimālā pievienotā jauda ir balstīta uz daudzpusējiem darījumiem, jo ​​tie iegūst grāmatvedības atlaidi. "Taču lielākā daļa darījumu pašlaik nav multisig darījumi. Tādējādi reālāka jaudas palielināšana varētu būt tuvāka. 6 megabaiti pievienotās vietas, kopumā 1,6 megabaiti.

Turklāt šī papildu vieta var netikt pilnībā izmantota uzreiz. To var izmantot tikai pēc tam, kad ir papildināti portfeļi un citas lietotnes. Patiesībā tas var aizņemt kādu laiku, lai sasniegtu pat 1,6 megabaiti.

Un kamēr Segregated Witness mīkstais dēlis ir plānots aprīlī, vēl ir redzams, vai to var panākt. Šim risinājumam nepieciešams daudz kodēšanas un testēšanas, pirms to var izlaist, kā arī apstiprinājums no kalnračiem.

Pretargumenti

Segregētā liecinieku publiskā testa tīkla versija - SegNet - jau ir pieejama eksperimentēšanai. Tas liecina, ka attīstība notiek pēc grafika.

Daudzi bibliotēku un seifu izstrādātāji turklāt novērtē, ka no pāris dienām līdz vairākām nedēļām vajadzētu notikt, lai integrētu Segregated Liecinieku. Tāpēc aprīļa atbrīvojumam ir jānodrošina pietiekami daudz laika, lai varētu jaunināt lielāko daļu kasešu un lietotņu programmatūras.

Tiklīdz Segregated Witness būs aktivizēts, visa seifa un lietotņu programmatūra var nekavējoties izmantot priekšrocības, piemēram, zemākas maksas. Neatkarīgi no tā, vai citi lietotāji izmanto arī pievienoto vietu, viņiem nav nozīmes. (Un, ja pievienotā bloka telpa netiek izmantota, tas varētu tikai likt domāt, ka nepieciešamība pēc papildu bloka vietas nekad nav bijusi tik lieliska, pirmkārt.)

Jāpiezīmē arī tas, ka vairāku darījumu darījumi varētu arvien vairāk izmantot kā inovācijas un Bitcoin protokola izstrāde attīstās, jo papildus slāņi virs Bitcoin, piemēram, maksājumu kanāli un Lightning Network, parasti izmanto šādus darījumus. Tāpēc faktiskā jauda varētu tuvināties 2 megabaitiem vēlāk.

Un, lai gan Bitcoin Classic komanda apgalvo, ka cieto dakšiņu var izlaist pirms aprīļa, tas ir uzskatāms par atklāti agresīvu un atklāti riskantu daudzu attīstības kopienas labā. Viņi domā, ka visiem pilna mezglu operatoriem ir jāpārskata un jāpieņem jauninājums, ir vajadzīgi vismaz seši mēneši līdz vienam gadam.

Tā Skews Stimuli

Parakstu noņemšana no sākotnējiem 1 megabaitu blokiem var efektīvi palielināt Bitcoin bloku lielumu. Bet Segregated Witness nedod iespēju ieviest jauna tipa maksimālo bloka izmēru. Aptuveni: liecinieku bloka bez plus viena ceturtdaļa liecinieku lieluma, nedrīkst pārsniegt 1 megabaitu. Tādējādi jauninātajos mezglos būs redzami bloki, kas pārsniedz 1 megabaitu, jo Segregētā liecinieka faktiskais lielums ir lielāks nekā ceturksnī .

Tas nozīmē, ka daudzuzņēmumu darījumi, kuros ir vairāk parakstu datu, iegūst lielāku atlaidi. Un, tā kā vairākus darījumus izmanto, lai noteiktu slāņus Bitcoin virspusē, Segregated Witness mākslīgi uzliek stimulus pret šiem pievienotajiem slāņiem.

Šādu slāņu ilgtermiņa sekas, piemēram, ietekme uz maksu par ieguvi, ir pretrunīgi.

Pretargumenti

Parakstu datu atlaide ir tāda, kā Segregētā liecinieks ļauj pievienot bloka laukumu, neprasot cieto dakšu. Lai gan tas tiek īstenots ar grāmatvedības pasākumu, tas ir noderīgs.

Turklāt liecinieku datus pamatoti var uzskatīt par iztērējamu pēc noteikta laika, samazinot vajadzību pēc pilnām mezglām, lai to uzglabātu uz mūžības. Tāpēc tīklam ir zemākas izmaksas, tādēļ ir pamatoti iekasēt zemāku maksu.

Turklāt vienīgais veids, kā Bitcoin var sasniegt miljoniem lietotāju, vienlaikus saglabājot decentralizāciju, drošību un izturību pret cenzūru, izmantojot pievienotos slāņus. Šo pievienoto slāņu izstrādes un izmantošanas veicināšana nav slikta lieta.

Tas nav labi saskaņā ar adversarial nosacījumiem

Viens arguments par labu bloka lieluma ierobežojums attiecas uz bloks izplatīšanās un latentuma. Īsāk sakot: Lielāki bloki mēdz palielināt bāreņu rentabilitāti, jo vairāki minerāņi balstās uz veciem blokiem, bet jaunie bloki joprojām darbojas ceļā caur tīklu. Tas, savukārt, dod priekšroku lielākiem kalnračiem (vai baseiniem): viņi paši atrod vairākus blokus un uzreiz sāk to veidot, tātad tie iztērē mazāk resursu.

Tas arī nozīmē, ka lielie kalnračiem varētu būt stimuls faktiski izveidot mākslīgi lielus blokus, kas īpaši paredzēti, lai palielinātu konkurentu nenosakāmu autoru likmi.

Pašreizējais Segregated Witness priekšlikums ļauj bloķēt līdz apmēram 2 megabaitiem, lai gan nedaudz mazāk ir lielāka iespējamība. Taču, pateicoties īpašajam grāmatvedības pasākumam, tā dēvētie "savtīgie kalnračiem" var radīt sintētiskus darījumus, kuru mērķis ir nodrošināt līdz pat 4 megabaitu datiem vienā blokā. Tādējādi lielie kalnračnieki varēja "uzbrukt" konkurentiem ar derīgiem 4 megabaitu blokiem.

Tādēļ Segregētā lieciniekam ir nepieciešams, ka kalnračiem un pilna mezgliem jāizvieto aparatūra ar 4 megabaitu drošības spiedienu, vienlaikus iegūstot ievērojami mazāk reālu darījumu jaudu. Un, ja sākotnējā bloka lieluma ierobežojums tiek palielināts ar cieto dakšu kādā brīdī nākotnē, šis risks multiplyer, iespējams, paliks.

Pretargumenti

Ja 4 megabaiti patiešām ir pietiekami lieli, lai veiksmīgi uzlauztu uzbrukumu - kas nav skaidrs - šis uzbrukums prasītu, lai uzbrūkošais minerators atbrīvotu visus reālos darījumus. Iegūtais nodevu zaudējums kalpo kā neliels šķērslis šāda uzbrukuma veikšanai, un pārējai tīklam būtu acīmredzams, ka notiek uzbrukums.

Un, lai arī risks multiplikators patiešām saglabāsies pat tad, ja cietā dakša tiks izlaista vēlāk, to varētu arī samazināt, izmantojot arī mīksto dakšiņu.

Tas pazemina drošību par nepārjauninātiem mezgliem

Piektā problēma ir tā, ka Segregated Witness mīkstais dakša pasliktinātu visu neatjauninātu pilna mezglu drošību. Šie mezgli joprojām varētu pieņemt Segregated Witness darījumus vai darījumus, kas ir atkarīgi no iepriekšējā Segregated Witness darījuma, bet nevar pārbaudīt, vai paraksta dati ir derīgi.Tādējādi viņiem vajadzētu paļauties uz kalnraču apstiprināšanu.

Tādēļ neapstiprinātie Segregated Liecinieku darījumi nebūtu droši, jo minerāņi to vēl nav apstiprinājuši.

Bet pat apstiprināti Segregated Witness darījumi būtu mazāk droši, jo kalnračnieki varēja tīši padarīt nederīgus darījumus blokos ar nolūku divreiz pavadīt neapjaunotus mezglus. Neuzlabots mezgls uzskatīs, ka šie bloki ir derīgi, kamēr kalnračnieki pārslēgs maiņas spēku atpakaļ uz derīgu ķēdi. Ja nepārjaunināts mezgls pieņems darījumus no nederīgiem blokiem, viņš varētu būt zaudējis naudu.

Šādu divkāršu izdevumu izmaksas ir līdzīgas izmaksām par jebkuru citu 51% uzbrukumu, bet ar papildu sviras efektu. Minerālu uzbrukumi potenciāli varētu ietekmēt "SPV-minerģi", kas nezina, kas notiek paši, jo tie arī neapstiprina darījumus. Un uzbrucējs varētu izmantot līdzekļus, lai dubultos izdevumus, jo viņš varētu izmantot jebkuru Segregated Liecinieku aizsargātu bitcoin, kas nekad nav piederēja viņam pirmajā vietā.

Pretargumenti

Segregated Witness mīkstais dakšas būs publiski paziņots daudz iepriekš, un pārredzami nobalsoja ar kalnračiem. Tādējādi ikvienam lietotājam, kas palaiž pilnu mezglu, būs pietiekami daudz laika, lai veiktu nepieciešamos piesardzības pasākumus.

Lietotāji, kuri izmanto nepārjauninātu mezglu, nedrīkst paļauties uz nulles apstiprināšanas darījumiem. Taču nulles apstiprināšanas darījumi vienmēr bija nedroši. Ikviens, kas vēlas atbrīvot dubultas tērēšanas uzbrukumu ar neapstiprinātiem darījumiem, to var izdarīt ar Segregated Witness vai bez tā.

Tajā pašā laikā apstiprināto darījumu papildu risku var kompensēt, gaidot dažus papildu apstiprinājumu skaitu. (Precīzus skaitļus par pievienotajiem riskiem skatiet Bitcoin izstrādātāja Oļegs Andrejevs aprēķinos.)

Lietotājs, kurš nevēlas pilnveidot jaunāko pilna mezgla statusu, turklāt varētu ielīmēt savu nepilno versiju pilnu mezglu ar programmatūra, kas norāda uz aizdomīgiem darījumiem, un, iespējams, pat pilnībā noraidīt šādus darījumus.

Visbeidzot, jāatzīmē, ka cietās dakšas rada daudz lielāku divu izdevumu darījumu risku. Jebkurš nepārjaunināts mezgls cietas dakšas gadījumā var saņemt pilnīgi nederīgus darījumus, bet potenciāli nekad to vispār neīstenojot.

Tas tiks izvietots bez skaidras lietotāju piekrišanas

Kaut arī, iespējams, ir mazs, iepriekš minētajā drošības degradācija pastāv. Un kas, iespējams, ir svarīgāk: šī drošības pasliktināšanās tiks īstenota bez lietotāja skaidri izteiktas piekrišanas. Pat ja lietotāji stingri iebilst pret Segregated Liecinieku un nevēlas to uzlabot, lielākā daļa kalnraču varētu izraisīt pārmaiņas neatkarīgi no tā.

Tas ir pretrunā ar Bitcoin solījumu par personīgo autonomiju; ideja, ka pilnīga mezgla operatoriem vienmēr ir jābūt iespējai atteikties no visām izmaiņām.

Pretargumenti

Nevar novērst mīkstajām dakšām. Kalnraktuvju, kas kontrolē lielāko daļu hash spēka, vienmēr var nolemt ieviest jaunus noteikumus, ja vien tie nepārkāpj esošos vienprātības noteikumus.Tas ir raksturīgs Bitcoin protokols, un tā būs iespējama arī pēc cietā dakša.

Tādējādi lietotājiem, kuri darbojas pilnos mezglos, vienmēr ir jāuzņemas noteikta atbildība. Vai nu pienākums jaunināt uz jaunāko programmatūras versiju, vai arī pienākums gaidīt pievienoto apstiprinājumu skaitu, vai pat atbildība par jebkādu darījumu nepieņemšanu pēc tam, kad ir konstatēta mīksta dakša.

Lai arī tehniski ir taisnība, ka lietotājiem pēc . gada nevajadzētu nomainīt savu programmatūru pēc (pretrunīgas) cietās dakšas un var izvēlēties palikt aizmugurē sākotnējā tīklā, tas gandrīz noteikti nenozīmē praksē ir iespēja. Papildus divkāršās tērēšanas uzbrukuma riskam, mazinātas jaucējpulksteņš var nodrošināt, ka darījumi nekad neapstiprina - vai apstiprina ļoti lēni. Alternatīvs scenārijs ir tas, ka mazākuma ķēde, izmantojot hash jaudu, ievieš savu cieto dakšiņu, lai mainītu darba rezultātu algoritmu. Bitcoin tad sadalītos divos atsevišķos tīklos, un visiem lietotājiem būtu jāuzlabo sava programmatūra, lai atbalstītu vienu no iespējām - vai abām.

Paldies Jonathan Toomim un Ciphrex izpilddirektors Bitcoin Core un Segregated Witness izstrādātājam Ericam Lombrozo par korektūru un pievienoto atsauksmi.

Lai iegūtu vairāk informācijas par Segregated Witness, skatiet

Bitcoin Magazine's sērijas par šo tēmu vai 1. daļas 2. daļas 3. daļu, 4. daļu, 5. daļu, 6. daļu, 7. daļu un 8. daļu Bitcoin Magazine's attīstības sērija.