Se discută despre scalabilitatea bitcoin și despre posibilele upgrade-uri la protocolul bitcoin. Discuția este foarte spinoasă și mulți dintre utilizatori au pierdut pasul cu evenimentele. Pe GoanaDupăBitcoin vom încerca săptămâna aceasta să vă aducem la curent și să explicăm în detalii cât mai clare ce se întâmplă în acest moment în rețea. În redactarea articolului, am beneficiat de sprijinul lui <Naphex>, programator și membru activ al comunității de la noi din țară.

Codul bitcoin este open-source. Ce presupune asta?

În primul rând trebuie să înțelegem ce înseamnă un cod open-source. Pe scurt, nimeni nu are drepturi de autor asupra codului bitcoin. Asta înseamnă că el nu se comercializează. Este un aspect care contribuie la descentralizarea monedei bitcoin.

Un cod open-source presupune că –

(1) Orice persoană interesată poate să vadă codul în întregime, să îl studieze, să se asigure că acel cod face ceea ce pretinde. Cu alte cuvinte, orice persoană care are cunoștințe de programare se poate uita sub capotă la motorul care pune în funcțiune rețeaua bitcoin.

(2) Orice programator poate să preia codul în întregime, bucăți din cod, fragmente relevante și să clădească platforma proprie. Codul lui Satoshi Nakamoto poate fi folosit gratuit ca piesă de construcție în alte proiecte.

(3) Codul bitcoin nu îi aparține, în termeni de drepturi de autor, lui Satoshi Nakamoto. De fapt, mai puțin de jumătate din codul existent astăzi mai este cel creat de Satoshi în 2009. Un protocol open-source presupune că orice programator poate să propună schimbări la cod și îmbunătățiri (commit-uri) pe GitHub.

GitHub – punctul zero. Bifurcația fermă și bifurcația soft

GitHub este platforma pe care se propun schimbări și upgrade-uri la codul proiectelor open-source. Este un spațiu dedicat dezvoltatorilor, unde aceștia pot să semnaleze probleme, să propună soluții și să facă adăugiri codului sursă care guvernează un software open-source.

Pe GitHub se află o întreagă comunitate de programatori care fac propuneri care să aducă valoare-plus unui proiect. Aceste propuneri trec printr-un proces de selecție.

Rețeaua bitcoin se bazează pe noduri care validează tranzacțiile, după niște reguli deterministe, care le guvernează activitatea. Naphex dă exemplul unui batalion bine organizat, care merge în pas cadențat și care a căzut de acord asupra unor ordine. Toate nodurile trebuie să fie guvernate la fel. Dacă o parte din noduri face un update pe care alte noduri nu l-a făcut, acestea vor funcționa după alte reguli, vor merge în alt ritm, și atunci avem practic două batalioane diferite. Rămânem cu două formule – (1) avem două batalioane care mărșăluiesc fiecare în legea sa (bifurcație fermă și două monede diferite) sau (2) toate nodurile acceptă același protocol, deci bifurcație soft, backwards compatible (comaptibilă retrograd cu codul din urmă). În orice caz, pentru a avea o criptomonedă unitară, toate nodurile trebuie să vorbească același limbaj.

Atunci când există o majoritate de noduri care au făcut un anumit update, atunci acela devine update-ul oficial și este sincronizat pe întreaga rețea. Utilizatorii care mențin un nod activ (deci au descărcat pe calculatorul lor registrul blockchain, sincronizat periodic) vor face update la noul cod în momentul în care se face sincronizarea. Minerii vor fi motivați de piață să mineze moneda cea mai profitabilă, adică cea pe care piața o susține și vor face update la cod în consecință. La fel și în cazul dezvoltatorilor de portofele, care vor oferi suport pentru moneda dominantă. Este vorba despre decizia economică PURĂ și despre o simbioză perfectă. Fiecare utilizator are un interes direct să mențină valoarea rețelei, iar deciziile de a adopta un update sau altul influențează această valoare.

”Este o piață liberă. Să zicem că multe noduri aufăcut update de la 0.13 la 0.14, care adaugă suport pentru SegWit. Acest lucru crează cerere pentru blocuri cu SegWit. Rezultă că minerii sunt motivați să implementeze SegWit ca să poată satisface cererea.” explică Naphex. ”Nu există o metodă de consens superioară codului. De exemplu: 1) din cauză că nodurile acceptă SegWit pot să includă mai multe tranzacții SegWit într-un bloc. 2) Pentru că pot include mai multe tranzacții într-un bloc, minerii pot include mai multe comisioane într-un bloc deci câștigă mai mult. 3) Ca să poată să îndeplinească cererea, 95% dintre mineri trebuie să aibă activ/testabil SegWit.”

Cine are putere asupra rețelei? 

Aici putem să intrăm în discuții care țin de filozofia bitcoin și de întrebarea ”este bitcoinul centralizat?”. Am descris însă mai sus că factorul care conduce piața este valoarea economică.

Practic, nodurile sunt cele care stabilesc noile update-uri, într-o primă etapă. ”În cazul ăsta e și practic, pentru că nodurile acceptă toată greutatea. Ca să simplific, este o piață în care nodurile sunt consumatorii și minerii producătorii” clarifică Naphex.

Nodurile validează independent tranzacțiile, stochează independent întregul registru de la blocul de origine până în prezent, și sunt fac întreaga rețea rezistentă la modificări și cenzură (ați întâlnit poate termenul tamperproof). Avem aproximativ 6-7000 de noduri active care validează tranzacțiile. Asta nu înseamnă că puterea asupra protocolului bitcoin și asupra codului cu update-urile sale se află în mâna operatorilor de noduri active.

Minerii nu sunt obligați să întrețină un nod activ. ”Pentru mineri/hasheri nu este nici o diferență, nu le aduce vreun beneficiu să mențină un nod activ. Ei trebuie doar să găsească numărul norocos, nu validează tranzacțiile. Minerii produc cofnorm specificațiilor nodurilor pentru că pentru noduri informația respectivă are valoare. Minerii, când sunt recompensați, primesc dreptul să cheltuie banii la noduri. Dacă nodurilor nu le convine hash-ul blocului, sau nu îl poate folosi pentru a valida și devedi consistența datelor/informațiilor, îl va respinge și nu va recompensa minerul” ne-a explicat Naphex în discuția de pe Telegram.

Ecosistemul bitcoin este populat de mai multe tipuri de utilizatori, fiecare cu un rol bine definit. Cu toții sunt interconectați și trebuie să ajungă la un consens. Minerii sunt cei care consumă energie electrică pentru a genera noi bitcoini pe piață. Desigur, ei se pot încăpățâna să mineze conform unui cod sau altuia, însă pentru ca bitcoinii generați de ei să fie fezabili pe piață, blocurile lor trebuie să fie validate de noduri. Nodurile nu există nici ele în eter, și nici portofelele bitcoin.

Toate aceste categorii trebuie să ajungă la un consens pentru a crea o piață funcțională.

Imaginați-vă o mașină de țesut care trebuie să țeasă o pânză cu un model în culori. Mașina de țesut este programată să plaseze culoarea albastră în partea de sus, verde în partea de jos și un cerc galben la mijloc. Albastrul se conformează, verdele se conformează, însă galbenul funcționează după alt cod și face puncte la întâmplare pe toată pânza, pentru că de fapt galbenul ar vrea să deseneze altceva. Câștigă cineva? Cu siguranță nu, pentru că în trend anul acesta sunt pânze cu albastru și verde și cu un soare la mijloc. Nimeni nu va cumpăra o pânză defectă. Așadar, toate culorile au toate motivele să cadă de acord asupra aceluiași model. Să spui că minerii sau furnizorii de portofele centralizează rețeaua sau vor să preia controlul asupra codului este ca și când ai spune că galbenul a luat-o razna și vrea să deseneze cu totul altceva.

Este foarte ușor să spui că bitcoinul face o bifurcație fermă și că se împarte în două ramuri care intră în competiție, ”la fel cum s-a întâmplat în cazul ethereum”. Adevărul este că da, este probabil să vedem o bifurcație fermă, două ramuri diferite ale bitcoinului. Una dintre cele două ramuri se va dovedi însă dominantă și există o probabilitate foarte mare ca cealaltă să…se usuce pur și simplu.

Mulțumim utilizatorului <Naphex> pentru sprijinul acordat în redactarea articolului. Naphex se numără printre utilizatorii veterani de bitcoin de la noi din țară, este unul dintre programatorii români implicați în sistem de la începuturile bitcoin și suntem privilegiați să îl fi avut ca și consultant pe acest subiect.