Blockchain, Hvad er det for dig? Definere et industrisupportord | DK.democraziakmzero.org

Blockchain, Hvad er det for dig? Definere et industrisupportord

Blockchain, Hvad er det for dig? Definere et industrisupportord

Dave Hudson er VP for softwarearkitektur ved uforanderlige hovedbog firma Peernova, og en designer af operativsystemer, netværk stakke, compilere og databaser. Han analyserer Bitcoin og "cryptoledger systemer" på sin blog Hashingit.com. 

I denne artikel, Hudson ser tilbage til Satoshi hvidbog i en søgen efter at pin ned, hvad en blockchain er, hvad det ikke er, og hvad det kunne være.

Som vi nærmer os 2016 der synes at være endeløse diskussioner om 'blockchain'. Det er et begreb, der stadigt oftere citeret i selv mainstream journalistik, mens der i FinTech rum alene findes der en masse potentielle leverandører og vordende brugere hævder, at 'blockchain' vil revolutionere enhver antallet af ansøgninger.

Denne nu almindelig brug tyder det skal være noget præcist defineret og godt forstået, men det synes at være mere et spørgsmål om mantra end forståelse.

De ekko kamre i Internet genlyd til mange meninger, men forsøg på at finde en præcis betydning synes at finde en Forfærdende manglende enighed. For at være noget mere end markedsføring overdrivelse vi virkelig har brug for svar nogle spørgsmål.

Hvad er det? Hvad er det ikke? Hvad kan det være? Kan det være noget, der vil give os mulighed for at bygge nye og varige systemer? Kort sagt, hvad er essensen af ​​blockchain?

Den Satoshi hvidt papir

Næsten hver diskussion af blockchains starter med Satoshi hvide papir, men det er det selve grundlaget, der starter os på en sti til forvirring. Hverken udtrykkene 'blockchain' eller 'blok kæde' vist der; der er 67 anvendelser af 'blok' og 27 'kæden', men nul af 'blok kæde' eller 'blockchain'. Denne sidebemærkning om, lad os se, hvor denne oprindelse fører os.

Det hvide papir er kort; Det er blot ni sider lang. Den første omtale af 'blok' og 'kæden' starter i bunden af ​​side 2, afsnit 3, hvor der er en diskussion af en grundlæggende tidsstempel server. Forud for dette hvidbogen beskriver en række design mål i forbindelse med Bitcoin design, såsom evnen til at tillade to parter om at handle uden at skulle have tillid til en tredjepart.

Opgørelsen af ​​design mål er fundamentalt vigtigt. De sætter scenen for en implementering at opfylde disse mål, hvor egenskaber lagdelte på hinanden, men det er oplysende at se på, hvad hver ny lag gør.

I vores søgen efter arten af ​​en blockchain vi nødt til at være omhyggelig med at lede efter ting, der er dens egenskaber, snarere end karakteristika ved denne første implementering.

Transaktioner

§ 1 i det hvide papir er en introduktion, og det er med § 2, at vi ser noget virkelig materiel. Afsnit 2 sætter en scene for et digitalt mønt, men det er beskrevet som værende en kæde af transaktioner, hvor 'mønt' er tildelt til nye ejere. Mønten er virkelig en metafor for en transaktion historie forbundne transaktioner.

Interessant, afsnit 2 beskriver også, hvordan et centraliseret system faktisk ikke behøver at gøre dette.

Blokke og kæder

Med afsnit 3 ser vi essensen af ​​designet mønster, der måske bedst beskrive grundlaget for en blockchain. Det gives som noget, der er konstrueret af en serie af inkrementelle blokke af data, som hver især kan identificeres ved en kryptografisk hash over sit indhold. Desuden hver blok inkorporerer kryptografisk hash af sin forgænger blok på at sikre opførelsen af ​​en kæde.

Blok-hashes er offentliggjort som en form for almindeligt vidne beviser for, at demonstrere viser tilstedeværelsen af ​​både blokdata og forgængeren hash. Ændring enten forgængeren eller de andre data inden for blokken ville resultere i et andet hash signatur for den blok, der ikke ville matche den udbredte vidne visningen.

Disse egenskaber er alle grundlæggende, og uden dem kan vi ikke konstruere noget interessant. Hvad er lige så interessant er dog, hvad der ikke er angivet som nødvendigt på dette punkt. Der er ingen omtaler af mønter, der ikke omtaler af peer-to-peer-netværk, ingen omtaler af minedrift, osv I stedet forslag er, at udgive hashes i enhver formidlet bredt formular ville være tilstrækkeligt, med de to eksempler bliver givet som offentliggøres i en avis eller offentliggørelse via Usenet.

Mens vi ser nogle eksplicitte karakteristika disse fører til et par implicitte dem:

Offentliggørelse af hashes er meningsløst, medmindre de samme hashes kan uafhængigt genberegnet af en ekstern iagttager, der er givet blot data fra blokkene i kæden. Det er denne egenskab, der gør det muligt for observatører til ikke at have tillid til afsenderen af ​​kæden af ​​blokke; i stedet er de i stand til at sammenligne historiske hashes for sig selv.

Genberegne hashene kræver, at algoritmen, hvorved blokkene produceres være deterministisk og godt specificeret. Uden disse vores eksterne iagttager ikke kan genberegne de hashes.

Aktivering peer-to-peer-operationer

Det næste afsnit, 4, af hvidbogen taler om proof-of-arbejde. Den første linje er interessant: "At implementere en distribueret tidsstempel server på en peer-to-peer (P2P) grundlag, vil vi nødt til at bruge en proof-of-arbejde system svarende til Adam Tilbage s Hashcash". Proof-of-arbejde er ikke forpligtet til at konstruere en blockchain, bare for at gøre det muligt for peer-to-peer-implementering af tidsstempel serveren.

Efterfølgende cryptocurrency design har vist at der er potentielt andre tilgange, der kan tages her også (fx: former for proof-of-spil, eller hybrider af begge), men hvis vi er tilfredse med en klient-server tilgang så ingen af ​​disse er faktisk nødvendig.

Dette er ikke at sige, at proof-of-arbejde måske ikke har nogle andre anvendelser med en blockchain design, men ingen synes grundlæggende for vores søgen.

Netværk og videre

Afsnit 5 beskriver de særlige kendetegn ved Bitcoin netværket implementering. Intet her udtrykkeligt udvider begrebet hvad en blockchain er, eller kan kræve. Faktisk hverken §§ 6, 7, 8, 9, 10, 11 eller 12 (det sidste afsnit) går videre til eksplicit at tilbyde nye ideer om, hvad en blockchain kunne være.

Svar på vores spørgsmål

Hvis Satoshi hvide papir er oprindelsen af ​​den blockchain design, er vi tilbage med en temmelig tynd definition, men det er måske det mest oplysende aspekt. Det er meget eksplicit om bestemte designvalg og deres formål, som har tendens til at lede hen imod en erkendelse af, at mange af de påstande om 'blockchains' faktisk kan være et spørgsmål om implementering frem for arkitektur.

Lad os stille nogle konkrete spørgsmål så!

Skal en blockchain have mønter?

Der er en interessant diskussion i hvidbogen om behovet for at skabe incitamenter til dem, der giver sikkerhed for P2P-netværk til at forblive ærlig og som et middel til at introducere 'mønter' i systemet, men diskussionen er klart i forbindelse med P2P netværk. Begrebet mønter selv er noteret som unødvendig med en betroet 'mint'.

En pålidelig mynte er ikke noget ønskværdigt i et cryptocurrency, men der synes at være nogen krav om mønter, hvis vi ønsker at konstruere en kæde af kryptografisk forbundne blokke. Der er et interessant spørgsmål at spørge om tillid, men vi vil vende tilbage til det senere.

Skal en blockchain implementere smarte kontrakter?

Set fra det hvide papir synes dette usandsynligt. Ordet 'kontrakt' ikke vises nogen steder.

Kan en blockchain muliggøre smarte kontrakter? Ja, selvfølgelig er det måske, men det kan gøre det muligt for mange andre ting også.

Skal en blockchain være programmerbar?

Igen er svaret synes at være nogen. Hverken ordene 'program' eller 'script' vises i det hvide papir.

En blockchain har dog et krav om at være tolkes af en eller flere uafhængige observatører, så det er klart bygget fra en eller flere veldefinerede datastrukturer. Blokken datastruktur skal indeholde en tidligere blok hash, og den kryptografiske hash af blokken skal udføres i en meget bestemt måde, men ingen af ​​disse kræver, at datastrukturen bære enhver forestilling om eksekverbar kode.

Kan en blockchain indeholde en form for programkode? Dette er et spørgsmål implementering og svaret er ja. Bitcoin har en begrænset scriptsprog, og andre systemer, såsom Ethereum, efterfølgende har forsøgt at understøtte mere udførlige programmeringsmodeller.

Valget til at støtte sådanne begreber synes mere at være enten hensigtsmæssighed, eller, mere ambitiøse design mål, men det virker en blockchain behøver ikke mere være 'programmerbar' end nogen anden linket liste datastruktur.

Er en blockchain en database?

Endnu engang svaret synes at være nogen. Som før, betyder ordet 'database' ikke i det hvide papir.

Kernen en blockchain er en særlig type datastruktur. Blokkene i kæden indeholder data, men det betyder ikke gøre det til en database; i bedste blokkene repræsenterer transaktionsjournal af en særlig database implementering.

Ligeledes er der ingen semantik for at forespørge en blockchain, nogen mere, end der er til at forespørge en sammenkædet liste. En specifik implementering kan give mulighed for forespørgsler på enten, men implementeringen definerer ikke tingen selv.

Som et punkt i sammenligning, er IP-pakkerne for TCP-pakker, der bærer denne artikel defineret som datastrukturer i en serie af IETF (Internet Engineering Task Force) RFC (Request For Comments) dokumenter. Dokumenterne beskriver form af pakkerne og deres adfærd, når de transporteres. Modtagere af disse pakker er i stand til at træffe deres egne bestemmelser af deres gyldighed uden hensyn til nogen del af implementeringen netværk mellem dem og ophavsmanden.

En implementering af en router / firewall kan tilbyde en funktion til at fange de pakker, så de kan analyseres senere, og kan tilbyde databaseforespørgsler af disse pakker, men der er intet i den karakter af en IP-pakke, der gør det til en database, og heller ikke er der noget i de RFC'er der vil foreslå ellers. Implementering funktioner og specifikationer er meget forskellige ting.

Er en blockchain trustless?

Svaret her er ikke også, men det er fordi spørgsmålet er for bred. En blockchain gør det muligt for os at kræve mindre tillid end mange traditionelle systemer, men enhver implementering stadig kræver en vis grad af tillid.

En modtager af blokdata skal tillid til, at det er blevet leveret uden at blive kompromitteret af nogle mellemled. P2P fordeling af blokke inden for Bitcoin og lignende netværk, der er fastsat for at forsøge at minimere tillid til jævnaldrende, men selv denne model har potentielle fejl punkter. Her er et par:

  • Vi har tillid til, at den blockchain software, vi kører ikke er blevet kompromitteret til at levere forfalsket data
  • Vi har tillid til, at operativsystemet hvorunder vores blockchain softwaren kører ikke er blevet kompromitteret til at levere forfalsket data
  • Vi har tillid til, at netværket processorer leverer tilslutningsmuligheder til vores system ikke er blevet kompromitteret til at levere forfalskede data.

"I kode, vi har tillid til" gør for en interessant mantra, men 30-plus års malware, spyware, osv, oplyser, at dette er et meget diskutabelt strategi.

En blockchain design gør forfalskninger sværere for en modstander, og gør utilsigtede fejl dramatisk mindre sandsynligt. Vi er i stand til at "tillid, men kontrollere" (inden for grænserne), men det er stadig en væsentlig forbedring i forhold til blindt at stole på. Vigtigst er det, at ingen af ​​disse tillid Minimering karakteristika er aspekter af P2P netværk design, men er i stedet iboende til blokken kodning.

Skal en blockchain være ikke-permissioned eller kan det være tilladelse-mindre?

En blockchain er bare en datastruktur, så virkelig spørgsmålet ikke giver mening. Hvem har evnen til at læse eller skrive en datastruktur er en helt anden spørgsmål.

Lad os se bort fra denne subtile forskel for et øjeblik, selv om, og handle, som om spørgsmålet kan give mening. Overvej det drejer sig Bitcoin; der skriver den blockchain?

Svaret er, at minearbejdere (eller mere præcist, blok beslutningstagere sådan en minedrift pool operatører, ikke dem, der kun hash blokke) komme til at skrive nye blokke. Transaktionsparter på netværket kan give kandidat transaktioner, der skal indgå i blokke, men dette garanterer ikke blokke nogensinde vil indeholde disse transaktioner. Med Bitcoin taler vi om dette 'ikke-permissioned', fordi ingen har brug for en udtrykkelig tilladelse til at blive en blok maker.

Hvis vi overveje andre mulige anvendelser af en blockchain design, dog er der er en ofte meget veldefineret sæt af deltagere, som vi ville ønske at være i stand til at skrive blokdata. I mange tilfælde kan det endda være en enkelt deltager.

En kritik rettet mod sådanne potentielle anvendelser af en blockchain er, at det gør det ikke bedre end en database, men en konventionel database er noget, hvor blind tillid skal placeres. Dens interne tilstand er generelt ukendte. Selv i sin enkleste bruger en blockchain kan i det mindste give et middel til at kontrollere tilstanden af ​​et sådant system, og at gøre det på en måde, der gør det muligt historier skal valideres. Dette er kun begyndelsen af ​​mulighederne, dog!

Er en blockchain internettet af penge (eller internettet på noget andet)?

Realistisk, nej, eller i hvert fald ikke på egen hånd.

Når vi kiggede på "ikke en database" vi også ind på, hvorfor denne påstand ikke rigtig mening. Overfladisk det argument synes forførende. Tanken er, at vi kan bygge masser af teknologi på toppen af ​​en blockchain på den måde, at et netværk stak er lagdelt.

Der er mange problemer med dette forslag, men den oplagte er, at en blockchain er bare en datastruktur. Det gør en god kandidat til at blive brugt til at formidle information via internettet, men gør det ikke muligt noget i sig selv.

Adskillelse af blockchain fra enhver transport af et blockchain dog giver nogle håb om, at blockchains kan gøre det muligt mere pålidelige finansielle applikationer over internettet. En klar adskillelse tillader også eksperimenter på hvert lag af systemets udformning, og det er en vigtig egenskab, som har gjort det muligt internettet til at være så vellykket.

Med internettet, kandidater til alle lag i netværket stakken er i stand til at blive afprøvet, udskiftes eller ændres, så det bedste design for at vinde. Tilsvarende standarder tilgang har gjort det muligt uensartede implementeringer til at arbejde sammen uden at forhindre kommercielle fordele i at blive søgt og omregnet i penge.

I tilfælde af blockchains, har vi allerede set, at der er et krav for at støtte eksterne observatører og dette mandater et niveau af interoperabilitet.

Sidste Tanker

Vi har set på, hvad en blockchain måske eller måske ikke være, og måske set nogle antydninger af, hvad det kunne gøre det muligt. Den teknologi, der understøtter Bitcoin kan bruges til at bygge mange ting, og Bitcoin arv skal ikke bare være Bitcoin sig selv - det har vist levedygtigheden af ​​noget langt mere grundlæggende.

Debatten, hvad der udgør en blockchain vil ikke ende her, men vi er nødt til at flytte diskussionen fremad, og vi har brug for at modstå trangen til at lade det være bare en anden markedsføring buzzword.

At få til at ske, vi har brug for begge klar terminologi, og velbegrundet brug. Vi skal undgå at conflating mange forskellige ideer, og vi har brug for teknologi hævder at være realistiske og opnåelige. Hvis vi undlader derefter til sidst vil udtrykket 'blockchain' være meningsløst og skal udskiftes. Dette synes at være den forkerte resultat.

Hvis det lykkes så tanken om en blockchain vil ikke være enden på historien. I stedet vil indtage sin plads som et lag, hvorpå bedre og stadigt mere brugbare systemer kan bygges.

Denne artikel blev genudgivet med tilladelse fra Hashingit.com. Du kan følge Dave på Twitter på @hashingitcom.

Blockchain Teknologi

Relaterade nyheter


Post Blockchain

Blockchain CEO Nic Cary: Global Stories Fremhæv Bitcoins Value

Post Blockchain

Kæde afslører Blockchain Platform bygget af og for finansiel industri

Post Blockchain

Jeg er virkelig i Blockchain. Jeg blokkerer alt!

Post Blockchain

Er sidekæder en bedre løsning til Bitcoins Scaling Debate?

Post Blockchain

Blockchain Gendanner Tjenesten efter Outage, Promises Post Mortem Review

Post Blockchain

Bitcoin APIer adresse mangler, der ikke bør eksistere

Post Blockchain

2018 var årets blokke

Post Blockchain

Gør mening om kryptoøkonomi

Post Blockchain

Coinprism lancerer Open Source Distributed Ledger

Post Blockchain

Connecticut Non-Profit bruger Blockchain Tech til Government Project

Post Blockchain

Bitcoin går ind i alderen af praksis

Post Blockchain

Bitcoin Comic går på salg efter succesfulde crowdfunding