Hvordan fungerer en #blockchain?

Hvordan Bitcoin Blockchain fungerer

En regnearksanalogi

Tenk deg en blockchain som et regneark. Alle har tilgang til dataene i hver enkelt celle og lagrer en kopi på sin personlige datamaskin. Dataene i regnearket deles mellom flere personer. Imidlertid kan ingen endre en enkelt celle eller endre eksisterende informasjon. I blockchain-verdenen kaller vi dette “uforanderlig” – manglende evne til å endre eller modifisere noe over tid. 

Tenk deg at du ønsket å legge til en ny celle i regnearket. Dette vil kreve godkjenning fra medlemmer som har tilgang til regnearkdataene. Når et flertall av eieren av regnearket godkjenner den nye cellen, blir dataene lagt til hovedarket. 

Tilbake til Bitcoin

Som en side, vil du legge merke til at vi bruker “Bitcoin” med store bokstaver B for å referere til den samlede blockchain og “bitcoin” med små bokstaver b for å referere til Bitcoin-nettverkets kryptovaluta. 

Deretter la oss bruke de ovennevnte konseptene for å forstå hvordan Bitcoin blockchain fungerer. Hvis Alice handlet en bitcoin til Bob, ville denne transaksjonen bli registrert i Bitcoin blockchain-hovedboken. Å vise hovedboken vil vise hvor mye bitcoin som ble byttet ut da transaksjonen skjedde, og de tilsvarende bitcoin-adressene til Alice og Bob som sendte og mottok transaksjonene. 

Bitcoin Miners

Når en transaksjon er gjort, må den bekreftes av folk som kalles gruvearbeidere. Når en transaksjon skjer – som Alice’s transaksjon med Bob – grupperes den sammen i en matematisk beskyttet “blokk” med andre transaksjoner som har skjedd i samme tidsramme. Gruvearbeidere bruker da datamaskiner med utrolig datakraft for å løse blokken matematisk. De første gruvearbeiderne som løste blokken og validerte transaksjonene, belønnes med bitcoin. Dette er den eneste måten bitcoin kan opprettes på. Til slutt er hver blokk koblet til den tidligere bekreftede blokken, og skaper en kjede av blokker, derav navnet blockchain (vi vet, super kreativ). 

En ting til som du trenger å forstå om blockchain er at den er uforanderlig, noe som betyr at når dataene er lagt til i en blokk, kan de aldri (som aldri noensinne) endres. I en praktisk applikasjon, når Alice bytter bitcoin og transaksjonen er bekreftet, kan hun ikke få den tilbake eller avbryte handelen. Det er borte. Det er imidlertid verdt å merke seg at dette er til fordel for enkeltpersoner og bedrifter som håndterer kredittkorttransaksjoner, som ikke blir avgjort før senere datoer. En ondsinnet person, som bruker et kredittkort, kan kjøpe en vare og deretter kansellere transaksjonen og etterlate en person eller bedrift med tapte inntekter.   

Konsensusalgoritme 

Når Alice bytter bitcoin med Bob, blir transaksjonen representert som en blokk som må sendes til blockchain-nettverket. Blockchain-nettverket består av noder eller deltakere i nettverket som validerer og videreformidler transaksjoner for å overføre informasjon.  

Alle noder drives frivillig og brukes til å verifisere de riktige transaksjonene på blockchain. Noder følger konsensusregler, som er regler som er enige om samfunnet. En endring i konsensusreglene krever at 95% av samfunnet skal godkjenne, noe som gjør det utrolig vanskelig for en gruppe å endre Bitcoin-programvaren. Andre konsensusalgoritmer krever en lavere prosentandel for å endre programvareprotokollen. Noder videresender blokkering av transaksjoner og valideringer til andre noder, slik at nettverket forblir oppdatert. Noder bryter ikke bitcoin. Imidlertid kjører alle gruvearbeidere vanligvis en full node for å validere og videreformidle bitcoin-transaksjoner effektivt. Siden både gruvearbeidere og ikke-gruvearbeidere utfører validering og videresending ved å bruke noder, deltar de alle i konsensusprosessen. 

Bitcoin Mining 

Bitcoin gruvearbeidere verifiserer legitime transaksjoner og oppretter ny bitcoin som en belønning for sitt arbeid. 

En transaksjon anses å være bekreftet når gruvearbeideren løser et kryptografisk (matematisk) puslespill. Bitcoin bruker en protokoll kalt proof of work, som har et bredt mål å forhindre cyberangrep fra en enkelt enhet eller gruppe. Mer spesifikt bruker Bitcoin Secure Hash Algorithm 256 bit (SHA-256). Datamaskinbrikker kan kjøre SHA-256-algoritmen for å generere en utgang, som kalles “hash”. Hashing, prosessen med å lage flere hashes, brukes til å løse det matematiske problemet, der sluttsvaret er den kjente og forventede hashverdien. 


Et forenklet eksempel 

  • For å løse problemet, må hashverdien begynne med tre nuller: “000”
  • Inndata varierer deretter hvert tall som finner et treff for en “løsning” 
  • Det tar 6518 forsøk på å finne en verdi som har “000” i de tre første sifrene. 

Løsning 1 ——— 088djldkh2h5h3kjhk24gd5h2h5h3kjhk24gd5kh2h5h

Løsning 2 ——— 73485jfljroi5635h3kjhk24gd5we94ee356h2hkh2h5h

Løsning 3 ——— d89sdf8sge9nxc894opl8qjroi5635h3kjhk24gd5we94

……

Løsning 6517 ——— 088djldkh2h5h3kjhk24gdjroi5635h3kjhk24gd5we

Løsning 6518 ——— 00088djldkh2h5h3kjhk24gdjhk24gd5h2hk24g4f4

Gitt innspillet til “Løsning 6518”, kan enhver gruvearbeider bekrefte at dette unektelig skaper en hash med tre nuller i de tre første sifrene. Den første gruvearbeideren som løste dette problemet, ville kringkaste svaret til nettverket og bli belønnet med bitcoin. Blokken vil da bli ansett som bekreftet, og den vil bli lagt til blockchain. Dette puslespillet er en representasjon av hvilken type puslespill en Bitcoin-gruvearbeider trenger å løse, og ikke et ekte puslespill. 

Bekreftelsesvanskeligheter

En standard Bitcoin-blokk krever millioner av hashes for å løse puslespillet. I Bitcoin-blokkjeden endres puslespillets kompleksitet hver 2016 blokker for å sikre at den gjennomsnittlige blokkeringsbekreftelsestiden tar ti minutter. Derfor er det mulig for problemet å bli lettere å løse hvis bekreftelser konsekvent tar lengre tid enn ti minutter. Selv om problemene vanligvis blir mer utfordrende å løse, noe som har gjort det veldig dyrt og svært tidskrevende å bekrefte blokkeringer. 

Opprinnelig kunne bitcoin utvinnes ved hjelp av databaser med forbrukerkvalitet. På grunn av denne økningen i vanskeligheter krever bitcoin mining for øyeblikket enorm hashing-kraft, og industrien bruker applikasjonsspesifikke ASIC-brikker. ASIC-er tilpasses spesielt for bitcoin-gruvedrift, i stedet for generelle funksjoner. Disse sjetongene er også utrolig dyre, noe som har resultert i en valgt gruppe eller pool av gruvearbeidere som dominerer brorparten av bitcoin-gruvedriften.. 

Blokk for blokk

Et annet viktig aspekt er at hver blokk inneholder den løste hasjen fra foreldren eller forrige blokk. Hver nye blokk krever foreldreblokkens hash, noe som sikrer en kronologisk blokkordre. For eksempel er blokk 30s hash nødvendig for blokk 31. Blokk 31 kan ikke eksistere før blokk 30 er bekreftet og lagt til i blokkjeden. Dette garanterer at hver blokk er koblet helt tilbake til den første blokken, som ofte kalles “genese-blokken.” Hvis du vil endre en hvilken som helst enkelt blokk, må du endre hver forrige blokk, samtidig. Til slutt er hver blokk uforanderlig, noe som igjen betyr at når en transaksjon oppstår, kan den ikke reverseres. Dette sikrer videre at når blokkene er lagt til i blokkjeden, ikke kan endres. 

Forsyning

Tilgangen på Bitcoin er begrenset til 21 millioner bitcoins, som anslås å forekomme rundt året 2140. Mengden bitcoin belønnet til gruvearbeidere halveres hver 210 000 blokker. Belønningen vil derfor fortsette å splitte seg til den tjuen millionste bitcoin er opprettet, og da vil gruvearbeidere bare motta transaksjonsgebyrer. 

Why Don’t Miners Cheat? 

Bitcoin er dypt forankret i kryptografi, informatikk, økonomi og forskjellige andre fagområder. En av disse fagene er tilfeldigvis spillteori, som bruker matematiske modeller for å forutsi hvordan rasjonelle spillere vil reagere når de får individuelle valg eller situasjoner. Bitcoin bruker spillteori-konsepter for å stimulere den ønskede handlingen til gruvearbeidere og brukere.

Hvordan Ethereum skiller seg fra Bitcoin

Blockchain forklart av Joe Lubin

Hvordan Ethereum skiller seg fra Bitcoin

Se på video

Hvordan Ethereum Blockchain fungerer

Ethereum-blockchain fungerer på samme måte som Bitcoin blockchain, men med flere viktige forskjeller. 

Kontoer: Lommebokadresser

Det er to typer Ethereum-kontoer:

  • Kontraktskontoer
  • Eksterne eide kontoer (EOAer)

Eksterne eide kontoer ligner på Bitcoin-adresser og styres av private nøkler. Ethereum-kontoer har også både offentlige og private adresser som brukere kan samhandle med for å overføre eter. Kontraktskontoer, som brukes til å kommunisere med smarte kontrakter, styres av kontraktskoden og aktiveres gjennom en EOA. Ether kreves for hver transaksjon i nettverket (kontraktskontoer og EOAer) for å forhindre ondsinnede angrep, for eksempel spamming av nettverk. 

Transaksjoner

Ethereum-nettverket krever at brukerne betaler et transaksjonsgebyr når de bruker blockchain. Dette beskytter Ethereum-blockchain fra useriøse eller ondsinnede beregningsoppgaver, for eksempel brukere som spammer nettverket med en overbelastning av ubrukelige transaksjoner. Jo mer kompleks transaksjonen (flere kodelinjer), jo dyrere blir gebyrene. Disse avgiftene betales i eter (ETH) og blir referert til som “gassprisen.” 

Ethereum Network

I likhet med bitcoin bruker Ethereum noder som drives frivillig for å verifisere de riktige transaksjonene på blockchain. Noder inneholder informasjon som: 

  • hele Ethereum-transaksjonshistorikken
  • den nyeste informasjonen om tilstanden til smarte kontrakter
  • kontosaldoer
  • og mye mer

Det er to typer noder

  • EN full node synkroniserer blockchain ved å laste ned hele kjeden, fra genesis block (første blokk) til gjeldende blokk. 
  • EN lysnode laster ikke ned hele kjeden, men kan likevel effektivt bekrefte transaksjoner. 

Noder bryter ikke Ethereum blockchain. Imidlertid kjører alle gruvearbeidere vanligvis en full node for å validere og videreformidle Ethereum-transaksjoner effektivt. Siden både gruvearbeidere og ikke-gruvearbeidere utfører validering og videresending ved å bruke noder, deltar de alle i konsensusprosessen. 

Ethereum Virtual Machine

Grunnlaget for disse programmerbare applikasjonene er Ethereum Virtual Machine (EVM), som er det kjørbare og pålitelige miljøet for smarte kontrakter. EVM utfører en kontrakt med de regler som utvikleren opprinnelig programmerte, for eksempel å sende penger fra Alice til Bob. Nettverket består av tusenvis av datamaskiner som behandler gjennomføringen av programmene. Derfor kjører hver node i Ethereum-nettverket faktisk EVM, og følgelig utfører hver node den samme koden. EVM kan utføre disse programmene gjennom et bytekodespråk. Imidlertid kan utviklere også bruke Ethereum-programmeringsspråket Solidity til å skrive smarte kontrakter og andre mer avanserte applikasjoner. 

Hvordan fungerer Ethereum Mining?

Ethereum-gruvearbeidere verifiserer legitime transaksjoner og skaper ny eter som en belønning for sitt arbeid. 

En transaksjon anses å være bekreftet når gruvearbeideren løser et kryptografisk (matematisk) puslespill. I likhet med Bitcoin bruker Ethereum en proof of work (PoW) protokoll, som har et bredt mål å forhindre cyberangrep fra en enkelt enhet eller gruppe. En bemerkelsesverdig forskjell mellom Bitcoin mining og Ethereum mining er blokkbekreftelsestiden. Mens en Bitcoin-bekreftelse krever gjennomsnittlig 10 minutter, blir en Ethereum-blokk bekreftet på omtrent 14 sekunder. Og akkurat som Bitcoin, justerer algoritmen automatisk vanskeligheten med de kryptografiske problemene slik at den gjennomsnittlige blokkeringstiden er 14 sekunder. 

Med Bitcoin jobber gruvearbeidere ofte med å bryte den samme blokken, og noen ganger blir disse blokkene bekreftet på veldig like tider, i hvilket tilfelle den første er en belønning og legges til den eksisterende kjeden, mens den andre bekreftede blokken kalles en “foreldreløs”. 

I Bitcoin er de foreldreløse blokkene stort sett ubrukelige og ikke en del av hovedkjeden. Ethereum opererer ved hjelp av et lignende konsept kalt GHOST (Greedy Heaviest Observed Subtree) protokollen, som egentlig betyr at kjeden med mest beregning gjort på den (ikke nødvendigvis den lengste) er den viktigste Ethereum blockchain. 

Ethereums raske blokkeringstid resulterer i en økning i antall foreldreløse blokker, som blir referert til som “onkler” på Ethereum blockchain. Hovedforskjellen er at Ethereum stimulerer gruvedroner og gir en belønning, i motsetning til Bitcoin, som bare belønner den første bekreftede blokken.

Gruvedunk gir to viktige fordeler

  • Det reduserer sentraliseringen ved å stimulere individuelle gruvearbeidere til å utvinne foreldreløse blokker, noe som betyr at de ikke trenger å være en del av et stort gruvebasseng fordi de fortsatt kan motta en belønning. 
  • Det øker kjedens sikkerhet fordi alle blokker, inkludert onkler, må følge den samme gruveprotokollen, noe som øker arbeidsmengden i hovedkjeden (tyngste). 

Bevis for innsats

Ethereum-nettverket bruker for øyeblikket beviset på arbeidsalgoritmen og vil gå over til å bruke en bevis på stavealgoritme kalt Casper.. 

Proof of stake (PoS) er en konsensusalgoritme som krever at hver gruvearbeider eier en eierandel i den opprinnelige valutaen, eter i dette tilfellet. Det er verdt å merke seg at ikke alle PoS-protokoller er like, men er like når det gjelder grunnkonseptet. Bevis for arbeid (PoW) -protokoller, som Bitcoin, belønner gruveinnsats (valideringer) med individuelle bitcoins. Proof of Stake Casper-algoritmen er en smart kontrakt, der gruvearbeiderne – nå referert til som “validatorer” – må sende et depositum eller “stake” til Casper-kontrakten. Validatorene eller stakerne bytter nå på å foreslå og stemme på neste blokk, hver med én stemme per blokk. Stemmene vektes også av innsatsen, så en validator som eier 100 ETH vil ha en mer meningsfull stemme enn en validator som satser 40 ETH. Hvis disse validatorene produserer noe som Casper-protokollen anser ugyldig, mister validatorene sin innsats, noe som stimulerer validatorer til å følge konsensus. 

Hva er eter??

La oss si at du vil kjøpe eter, kryptovalutaen innfødt i Ethereum blockchain. Den enkleste måten å gjøre det på ville være å opprette en konto på en av mange mye brukte kryptovaluta-børser, som Coinbase eller Kraken. Disse børsene lar deg sette opp en Ethereum-lommebok slik at du kan kjøpe, selge, sende og motta eter fra alle andre som også har en blockchain-lommebok som kan sende og motta eter..

Når du kjøper eter, blir transaksjonen en del av en blokk på Ethereum blockchain. Denne blokken inneholder en oversikt over de siste Ethereum-transaksjonene som har funnet sted hvor som helst i verden av alle som kjører Ethereum-protokollen. Den inkluderer også en kryptografisk hash (en matematisk algoritme) -post for den sist validerte blokken på Ethereum blockchain.

Denne blokken med transaksjonsoppføringen din blir ikke en del av Ethereum-blokkjeden før en av de mange datamaskinene som kjører Ethereum-nettverket, løser eller oppdager kryptografisk hash som samsvarer med den unike hashen som er knyttet til den blokken. Denne løsningsprosessen er kjent som “gruvedrift”. Når hasjen er løst eller oppdaget, blir blokken med transaksjonsoppføringen din umiddelbart lagt til på slutten av blockchain som vedlikeholdes av hver av disse datamaskinene, og transaksjonen blir en del av Ethereum blockchain’s permanente post.

Det er verdt å merke seg at “eter” og “Ethereum” ofte brukes om hverandre for å referere til kryptovalutaen som opererer på Ethereum blockchain. Dette er ikke teknisk riktig, eter er betegnelsen på kryptovaluta-token som brukes på Ethereum blockchain-plattformen. Hvis vi skulle representere dette forholdet når det gjelder dataprogramvare (som det er), ville Ethereum være operativsystemet, og eter ville være applikasjonen. I en ikke-dataprogramvareanalogi kan Ethereum sammenlignes med et kjøretøy mens eter fungerer som drivstoff som driver og gjør at maskinen kan kjøre effektivt.

Lær mer om blockchain-teknologi

  • Kunnskapsbase Hva er Ethereum?
  • Enterprise EthereumBlockchain brukstilfeller og applikasjoner etter bransje
  • ConsenSys AcademyBlockchain og Ethereum trening for nybegynnere, utviklere og bedrifter

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map