Blockchain, ce ești tu? Definirea unui Buzzword din industrie | RO.democraziakmzero.org

Blockchain, ce ești tu? Definirea unui Buzzword din industrie

Blockchain, ce ești tu? Definirea unui Buzzword din industrie

Dave Hudson este VP de arhitectura software la imuabile firmă registrul Peernova, și un designer de sisteme de operare, stive de rețea, compilatoare și baze de date. El analizează Bitcoin și „sisteme cryptoledger“ pe blogul său Hashingit.com. 

În acest articol, Hudson se uită înapoi la hârtie albă Satoshi într-o căutare de a fixa în jos ceea ce un blockchain este, ceea ce nu este și ceea ce ar putea fi.

Așa cum ne apropiem de 2016 par să existe discuții interminabile despre „blockchain“. Este un termen care este din ce în ce mai frecvent citat în chiar jurnalism de masă, în timp ce în spațiul FinTech singur, există o mulțime de-ar fi furnizorii și-ar fi utilizatorii care pretind că „blockchain“ va revolutiona orice număr de aplicații.

Această utilizare acum comună sugerează că trebuie să fie ceva definit precis și bine înțeles, dar acest lucru pare a fi mai mult o chestiune de mantra decât înțelegere.

Camerele de ecou ale internetului reverberații la multe opinii, dar încearcă să găsească un sens precis par să găsească o lipsă de descurajante acord. Pentru a fi ceva mai mult decât de marketing hiperbola avem cu adevărat nevoie de răspunsuri la câteva întrebări.

Ce este? Ceea ce nu-i așa? Ce ar putea fi? Poate fi ceva care ne va permite să construiască sisteme noi și de durată? Pe scurt, ceea ce este esența blockchain?

Cartea albă Satoshi

Aproape fiecare discuție de blockchains începe cu hârtie albă Satoshi, dar este acest lucru foarte fundatie care ne-a începe pe o cale de confuzie. Nici termenii „blockchain“ sau „lanț bloc“ apar acolo; există 67 de utilizări ale „bloc“ și 27 „lanț“, dar zero „lanț bloc“ sau „blockchain“. Această parte însă, să vedem în cazul în care această origine ne conduce.

Hârtia albă este scurt; este lung doar nouă pagini. Prima mențiune a „bloc“ și „lanț“ începe de la partea de jos a paginii 2, secțiunea 3, în cazul în care există o discuție a unui server de marcaje temporale de bază. Înainte de această hârtie albă descrie o serie de obiective de proiectare asociate cu proiectarea Bitcoin, cum ar fi capacitatea de a permite două părți să tranzacționeze fără a fi nevoie să aibă încredere o terță parte.

Declarația de obiectivele de proiectare sunt fundamental importante. Ei au stabilit scena pentru o punere în aplicare pentru a îndeplini aceste obiective, în care caracteristicile sunt stratificate pe unul de altul, dar este informativ să se uite la ceea ce face fiecare strat nou.

În încercarea noastră de natura unui blockchain trebuie să fim atenți să caute lucruri care sunt atributele sale, mai degrabă decât caracteristicile acestei prime de punere în aplicare.

Tranzacţii

Secțiunea 1 din hârtie albă este o introducere și este cu secțiunea 2 că vom vedea ceva cu adevărat de fond. Secțiunea 2 stabilește o scenă pentru o monedă digitală, dar este descris ca fiind un lanț de tranzacții în care „moneda“ este atribuit noii proprietari. Moneda este într-adevăr o metaforă pentru o istorie de tranzacție a tranzacțiilor legate.

Interesant, secțiunea 2 descrie, de asemenea, modul în care un sistem centralizat nu are nevoie de fapt, pentru a face acest lucru.

Blocuri și lanțuri

Cu secțiunea 3 vom vedea esența modelului de design care ar putea descrie cel mai bine baza unei blockchain. Este dat ca ceva care este construit dintr-o serie de blocuri elementare de date, fiecare dintre acestea pot fi identificate printr-un hash criptografic asupra conținutului său. In plus, fiecare bloc încorporează hash criptografice a blocului său predecesor pentru a asigura construirea unui lanț.

Cele bloc sunt publicate hash ca o formă de dovezi care demonstrează pe scară largă asistat arată existența atât datele bloc și hash predecesorul. Schimbarea fie predecesorul sau alte date din cadrul blocului ar duce la o semnătură hash diferit pentru blocul care nu se va potrivi cu punctul de vedere pe scară largă asistat.

Aceste caracteristici sunt fundamentale și fără ele nu putem construi nimic interesant. Ceea ce este la fel de interesant, deși este ceea ce nu este menționat după cum este necesar în acest moment. Nu există mențiuni de monede, nu menționează de rețele peer-to-peer, nu menționează de minerit, etc. În schimb sugestia este că publicarea hash-uri în orice formă difuzate pe scară largă ar fi suficientă, cu cele două exemple fiind dat ca publicarea într-un ziar sau publicație prin intermediul Usenet.

In timp ce vom vedea unele caracteristici explicite acestea conduc la câteva cele implicite:

Publicarea este lipsită de sens cu excepția cazului în hash aceste valori hash același lucru poate fi recalculată în mod independent de către un observator extern, care este dat doar datele din blocurile din lanț. Este această caracteristică care permite observatorii nu trebuie să aibă încredere inițiatorului lanțului de blocuri; în schimb, acestea sunt în măsură să compare hash-uri istorice pentru ei înșiși.

Recalculează de hash impune ca algoritmul prin care se produce blocuri să fie deterministă și bine specificate. Fără aceste observator nostru extern nu poate recalcula hash.

Activarea operațiunilor de tip peer-to-peer

Secțiunea următoare, 4, din discuțiile din hârtie albă cu privire la dovada-de-muncă. Prima linie este interesantă: "Pentru a pune în aplicare un server de marcaje temporale distribuite pe o bază peer-to-peer (P2P), va trebui să utilizeze un sistem de dovada-de-muncă similar cu Adam hashcash Înapoi lui". Dovada-de-muncă nu este necesară pentru a construi o blockchain, doar pentru a permite punerea în aplicare peer-to-peer a serverului de marcaje temporale.

Modele Criptomonedă ulterioare au arătat că sunt potențial alte abordări care pot fi luate aici (de exemplu: forme de proof-of-miză, sau hibrizi de ambele), dar dacă suntem mulțumiți cu o abordare client-server, atunci nici unul dintre acestea sunt de fapt necesar.

Acest lucru nu este de a spune că munca dovada-de-ar putea să nu aibă alte utilizări, cu un design blockchain, dar nici unul nu pare fundamental pentru căutarea noastră.

Rețea și dincolo de

Secțiunea 5 descrie caracteristicile de implementare ale rețelei Bitcoin. Nimic de aici se extinde în mod explicit conceptul de ceea ce un blockchain este, sau ar putea necesita. Într-adevăr, nici secțiunile 6, 7, 8, 9, 10, 11 sau 12 (secțiunea finală), du-te pentru a oferi în mod explicit orice idei noi despre ceea ce ar putea fi o blockchain.

Răspunsuri la întrebările noastre

Dacă hârtia albă Satoshi este originea designului blockchain, suntem plecat cu o definiție destul de subțire, dar probabil că este aspectul cel mai edificator. Este foarte explicit cu privire la anumite opțiuni de design și scopul lor, care tinde să conducă spre o realizare că multe dintre revendicările despre „blockchains“ ar putea fi de fapt o chestiune de punere în aplicare, mai degrabă decât de arhitectură.

Să punem câteva întrebări specifice, atunci!

Trebuie să o blockchain au monede?

Există o discuție interesantă în Cartea albă cu privire la necesitatea de a oferi stimulente celor care ofera securitate la rețeaua P2P să rămână cinstit și ca un mijloc de a introduce „monede“ în sistem, dar discuția este în mod clar în contextul P2P reţea. Conceptul de monede în sine este notat ca inutile cu „menta“ de încredere.

Un menta de încredere nu este ceva de dorit într-un Criptomonedă, dar nu pare să existe nici o cerință pentru monede, dacă dorim să construim un lanț de blocuri criptografic-linked. Există o întrebare interesantă de a cere despre încredere, dar vom reveni la asta mai târziu.

Trebuie să o pună în aplicare blockchain contracte inteligente?

Din punctul de vedere al hârtiei albe acest lucru pare puțin probabil. „Contract“ cuvânt nu apare nicăieri.

S-ar putea permite unui blockchain contracte inteligente? Da, desigur că s-ar putea, dar ar putea permite multe alte lucruri.

Trebuie să o blockchain fie programabil?

Din nou, răspunsul pare a fi nu. Nici cuvintele „program“ sau „script“ apar în hârtie albă.

Un blockchain are o cerință de a fi interpretabil de către unul sau mai mulți independenți observatori, deci este clar construit dintr-unul sau mai multe structuri de date bine definite. Structura de date de bloc trebuie să conțină un hash bloc anterior, iar hash criptografic al blocului trebuie să fie realizată într-un mod foarte specific, dar nici unul dintre acestea necesită ca structura de date transporta orice notiune de cod executabil.

Poate un blockchain conține o anumită formă de cod de program? Aceasta este o chestiune de punere în aplicare, iar răspunsul este da. Bitcoin include un limbaj de scripting limitat, precum și alte sisteme, cum ar fi Ethereum, au încercat ulterior să sprijine modele de programare mai elaborate.

Alegerea de a sprijini astfel de concepte pare mai mult să fie operativitate, sau, obiective mai ambițioase de design, dar se pare că o blockchain nevoie nu mai fie „programabile“ decât orice altă listă legată structură de date.

Este un blockchain o bază de date?

Încă o dată răspunsul pare a fi nu. Ca și înainte, „baza de date“, cuvântul nu apare în hârtie albă.

La baza acestuia, un blockchain este un tip special de structură de date. Blocurile din cadrul lanțului conține date, dar acest lucru nu-l face o bază de date; cel mai bun caz blocurile reprezintă jurnalul de tranzacții al unei implementări specifice de baze de date.

În mod similar, nu există semantica pentru interogând un blockchain, mai mult decât există o listă pentru interogarea legată. O implementare specifică ar putea permite interogări de, fie, dar punerea în aplicare nu definește lucrul în sine.

Ca un punct de comparație, pachetele IP pentru pachetele TCP care transportă acest articol sunt definite ca structuri de date într-o serie de IETF RFC (Internet Engineering Task Force) (Cerere de comentarii) documente. Documentele descriu forma pachetelor și a comportamentului lor, atunci când acestea sunt transportate. Destinatarii acestor pachete sunt în măsură să facă propriile lor determinări de valabilitate a acestora fără a ține cont nici o parte a implementării rețelei între acestea și produsul original.

O implementare a unui router / firewall poate oferi o caracteristică pentru a captura acele pachete, astfel încât acestea să poată fi analizate ulterior, și poate oferi interogări de baze de date ale acestor pachete, dar nu există nimic în natura unui pachet IP care acesta o bază de date face, nici este ceva în RFC-uri care ar sugera altfel. Caracteristici de punere în aplicare și caietul de sarcini sunt lucruri foarte diferite.

Este un trustless blockchain?

Răspunsul aici nu este prea, dar asta pentru că întrebarea este prea largă. Un blockchain ne permite să necesite mai puțină încredere decât multe sisteme tradiționale, dar orice punere în aplicare necesită încă un anumit nivel de încredere.

Un destinatar al datelor bloc trebuie să aibă încredere că a fost livrat fără a fi compromis de unii intermediar. Distribuția P2P a blocurilor în cadrul rețelelor Bitcoin și similare stabilite pentru a încerca să reducă la minimum încrederea în colegii, dar chiar și acest model are un potențial de puncte de eșec. Iată câteva:

  • Avem încredere că software-ul blockchain că sunt difuzate nu a fost compromisă pentru a furniza date falsificate
  • Avem încredere că sistemul de operare sub care software-ul nostru blockchain ruleaza nu a fost compromisă pentru a furniza date falsificate
  • Avem încredere că procesoarele de rețea care oferă conectivitate la sistemul nostru nu au fost compromise pentru a furniza date falsificate.

„În codul avem încredere“, face o mantră interesantă, dar în 30 de ani, plus de malware, spyware, etc, ne informează că aceasta este o strategie extrem de discutabil.

Un design blockchain nu face falsificărilor mai greu pentru un adversar, și face erori accidentale dramatic mai puțin probabil. Suntem capabili să „încredere, dar verifică“ (în anumite limite), dar acest lucru este încă o îmbunătățire semnificativă față de încredere orbește. Cel mai important, nici unul dintre aceste caracteristici de încredere sunt aspecte ale Minimizarea proiectarea rețelei P2P, ci sunt intrinseci codificarea blocului.

Trebuie să o blockchain fie non-sau poate permisiuni fi nepermitere mai puțin?

Un blockchain este doar o structură de date, astfel încât într-adevăr întrebarea nu are sens. Cine are capacitatea de a citi sau a scrie o structură de date este o chestiune cu totul diferită.

Să ignorăm această distincție subtilă pentru un moment, deși, și să acționeze ca și cum problema ar putea avea sens. Luați în considerare cazul Bitcoin; care scrie blockchain?

Răspunsul este că minerii (sau mai precis, factorii de decizie bloc astfel de operatori pentru piscina miniere, cei care nu doar blocuri hash) ajunge să scrie noi blocuri. Transactors pe rețea poate oferi tranzacții candidate care urmează să fie incluse în blocuri, dar acest lucru nu garantează blocuri va conține vreodată aceste tranzacții. Cu Bitcoin vorbim despre acest lucru fiind „non-permisiuni“, pentru că nimeni nu are nevoie de nici o permisiune explicită de a deveni un filtru de bloc.

Dacă luăm în considerare alte utilizări potențiale ale unui desen sau model blockchain, deși, există este un set de multe ori foarte bine definit de participanți care ne-ar dori să fie în măsură să scrie date bloc. În multe cazuri, acest lucru poate fi chiar un singur participant.

O critică nivelat la astfel de utilizări potențiale ale unui blockchain sunt că acest lucru face mai bine decât o bază de date, dar o bază de date convențională este ceva în care trebuie să fie pus încrederea oarbă. Starea sa internă este, în general, imposibil de cunoscut. Chiar și în cea mai simplă folosește un blockchain poate cel puțin oferi un mijloc de a verifica starea unui astfel de sistem, și să facă acest lucru într-un mod care să permită istoriile să fie validate. Acesta este doar începutul posibilităților, cu toate acestea!

Este un blockchain Internet de bani (sau de pe Internet de orice altceva)?

Realist, nu, sau cel puțin nu pe cont propriu.

Când ne-am uitat la „nu este o bază de date“ am abordat de asemenea de ce această afirmație nu prea are sens. Superficial argumentul pare seducătoare. Ideea este că putem construi o mulțime de tehnologie pe partea de sus a unui blockchain în modul în care o stivă de rețea este stratificat.

Există mai multe probleme cu această propunere, dar cel mai evident este faptul că un blockchain este doar o structură de date. Se face un bun candidat pentru a fi folosit pentru a transmite informații de pe internet, dar nu permite nimic în sine.

Separarea blockchain de transport al unui blockchain, cu toate acestea, dă o speranță că blockchains poate permite aplicații financiare mai sigure pe Internet. O separare clară permite, de asemenea, experimentarea, la fiecare strat de proiectare a sistemului și aceasta este o caracteristică cheie care a permis Internetul pentru a fi atât de succes.

Cu Internet, candidații pentru toate straturile din stiva de rețea sunt în măsură să fie testate, înlocuite sau modificate, care să permită cele mai bune modele pentru a câștiga. În mod similar, abordarea bazată pe standarde a permis implementari disparate pentru a lucra împreună fără a împiedica avantaje comerciale să fie căutate și generare de bani.

În cazul blockchains, am văzut deja că există o cerință de a sprijini observatorii externi și acest mandatează un nivel de interoperabilitate.

Ncheiere

Ne-am uitat la ce s-ar putea blockchain sau s-ar putea să nu fie, și, probabil, văzut unele indicii despre ceea ce ar putea permite. Tehnologia care stă la baza Bitcoin poate fi folosit pentru a construi multe lucruri, și moștenirea Bitcoin nu ar trebui să fie doar Bitcoin în sine - a demonstrat viabilitatea ceva mult mai fundamental.

Dezbaterea asupra a ceea ce constituie un blockchain nu se va termina aici, dar trebuie să ne mișcăm discuția și să avem nevoie pentru a rezista tentatiei de a permite să fie doar un alt buzzword de marketing.

Pentru a face acest lucru avem nevoie atât de terminologie clară, și utilizarea bine motivată. Trebuie să evităm multe idei diferite de pui semnul egal, și avem nevoie de tehnologie pretinde să fie realiste și realizabile. Dacă nu vom reuși, atunci, în cele din urmă, termenul „blockchain“ va fi lipsit de sens și trebuie să fie înlocuite. Aceasta pare a fi rezultatul greșit.

Dacă vom reuși, atunci ideea unei blockchain nu va fi sfârșitul poveștii. În schimb, va avea locul său ca un strat pe care pot fi construite sisteme mai bune și din ce în ce mai util.

Acest articol a fost republicată, cu permisiune de la Hashingit.com. Puteți urmări pe Dave pe Twitter la @hashingitcom.

Blockchain Tehnologie

Știri asociate


Post Blockchain

Apple elimină aplicațiile de tip Wallet de la Bitchin Blockchain de la magazinele sale de aplicații

Post Blockchain

ASX Detalii Blochează strategia în actualizarea financiară

Post Blockchain

Blockstream: Finanțarea de 21 de milioane de dolari va conduce dezvoltarea Bitcoin

Post Blockchain

5 Fapte din Raportul Bitcoin privind situația din trimestrul 3 al anului 2018

Post Blockchain

Blockchain-ul și creșterea rețelei de încredere

Post Blockchain

Cum lanțul de blocuri Bitcoin ar putea opri istoricul fiind rescris

Post Blockchain

Bitcoin și Litecoin Topul surselor donațiilor WikiLeaks

Post Blockchain

Blockchain.info CEO Nic Cary dă $ 10k în Bitcoin la Universitatea

Post Blockchain

Depășirea bancnotelor în cursă în blocaj

Post Blockchain

Blockchain: de ce băieții mari nu pot câștiga

Post Blockchain

Blockchain-ul este un nou model de guvernare

Post Blockchain

11: FS sprijină un bloc de 50 de milioane de dolari pentru Fondul bancar