Hvad er BlockChain, BitCoin, PoW og PoS ?
Dette er et ældre indlæg fra omkring 2016 – indholdet gælder dog stadig.

Dette indlæg er ment for dem, der måske lige har stiftet bekendtskab med krypto-verdenen, og ikke føler, at de har helt styr på, hvad alle de forskellige ting er og betyder.
Visse elementer i denne gennemgang vil være yderst simplificerede, da målet er, at hjælpe den absolutte nybegynder med at opnå en mere grundlæggende viden om emnet.
Følgende er udelukkende skrevet om BlockChain og BitCoin, da den stadig er den mest kendte af alle de eksisterende krypto mønter.
Indlæget vil gennemgå følgende:
- Hvad er BlockChain og hvordan virker det.
- Hvad kan BlockChain bruges til og hvad er BitCoin egentligt?
- Hvad er kryptografiske nøgler?
- Hvordan skabes BitCoins, og hvordan holder det decentrale netværk styr på alle overførslerne?
- Hvad betyder PoW og PoS?
Denne gennemgang skrevet med simplificering for øje, for at kunne være let forståelig. Så skulle du finde en fejl, fordi det er simplificeret, eller noget der kan misforstås, så undskylder jeg dette.

1) Hvad er BlockChain ?
Meget basalt sagt, er BlockChain et datasæt. Men i modsætning til datasæt som vi kender dem, der normalt er centraliserede og fysisk placerede på servere, f.eks. i en virksomhed eller i skyen ved en udbyder – er BlockChain teknologien decentraliseret. Det betyder, at databasen er duplikeret over tusindvis af computere verden over.
Hvad er så hele humlen ved dette?
Der er utroligt mange fordele ved dette, og vi nøjes med at kigge på nogle få af dem:
- et decentraliseret datasæt er teoretisk umulig at hacke
Normale databsæt er sårbare overfor hackerangreb, da en hacker – hvis denne får adgang – vil kunne oprette, ændre og slette data. Selvfølgelig kan sikkerheds og fornuftige backup-løsninger forsøge at forhindre dette samt genetablere de originale data. Men dette er igen forbundet med store udgifter samt tidsforbrug – desuden er det langt fra altid, at et hackerangreb bliver opdaget, før der er gået rigtig lang tid. Og så er problemet lige pludselig så stort, at det kan virke uoverskueligt og blive rigtigt, rigtigt dyrt! - et decentraliseret datasæt kan ikke bare lukkes ned
I det at dataene i den decentrale database findes på servere placeret over alt i verden, er dataene meget sikrere. Var dataene centralt placeret, er disse udsat for sårbarheder over for blandt andet strømafbrydelse, der vil kunne afbryde serverens adgang til Internettet, og derved også brugernes adgang til dataene. Ved et decentral datasæt betyder det intet, hvis en server skulle blive utilgængelig. Man benytter bare en af de andre servere i stedet. - data i et decentralt datasæt kan let verificeres
Da dataene findes på mange servere, er det utroligt let at verificere, at dataene er gyldige – umanipulerede og up-to-date. Dette giver et meget større trygheds-princip, og samarbejdsparterne kan derfor let benytte disse data i deres egne produkter, uden at skulle være nervøs for, at dataene er forkert. - opdateringer i et decentralt datasæt er endegyldige! (Immutable)
Foretager du en ændring i et decentralt datasæt, så som BlockChain, kan denne ændring ALDRIG laves om. ALLE data gemmes for evigt. - dataene gemt i et decentralt datasæt er let tilgængelige
Da dataene findes på utallige servere, er det lettere og hurtigere at tilgå disse. I stedet for at x antal systemer forbinder til den samme server – der således under peak-belastning udsættes for store krav om ydeevne. Kan alle samarbejdspartnere selv have en kopi af datasættet, eller forbinde til den der har det, med er den bedste forbindelse (laveste ping mm.). - samarbejde om samme data bliver mere effektivt
Skal flere parter samarbejde om samme data, er det langt lettere og mere effektivt, at alle parterne har adgang til de samme opdaterede data.
I stedet for at skulle ændre data, og give modparten/samarbejdspartneren besked på, at nu har du altså udført dine ændringer, sker alle opdateringerne simultant over hele netværket, og alle parter har derfor altid de opdaterede data tilgængelige.
Hvis man ikke benytter et decentral datasæt (eller en af de mange løsninger, der ellers tilbydes), er der desuden stor mulighed for, at der kan opstå fejl – hvis samme dokument skal gennemses og redigeres rigtigt mange gange. Sender man dokumenter frem og tilbage, kan man let miste overblikket over, hvor det lige er, man er kommet til.
BlockChain gemmer ALLE oplysningerne. Lige fra at dokumentet blev oprettet, gennem alle redigeringsfaserne og slutteligt, til at dokumentet bliver godkendt som endeligt.
Jamen er BlockChain ikke BitCoin ?
BlockChain er den underliggende teknologi, som BitCoin benytter sig af.
Simplificeret kan vi sammenligne BlockChain med Internettet. Internettet er en kæmpe og meget svært definerbar ting, da det understøtter enormt mange muligheder for udveksling af data på kryds og tværs. Hvis BlockChain er Internettet, så kunne BitCoin være http-protokollen (den del af Internettet som vi bruger, når vi besøger hjemmesider). Denne allegori er udelukkende brugt som eksempel på, at BlockChain teknologien understøtter enormt mange andre muligheder end blot BitCoin.

2) Hvad kan BlockChain bruges til og hvad er BitCoin egentligt?
Kun fantasien sætter grænserne her. Jeg vil dog overlade dig til Google, hvor du kan finde talrige eksempler på, hvad BlockChain ellers kan bruges til.
BitCoin var ikke første gang, at BlockChain teknologien blev brugt. Vi skal tilbage til 1991, hvor Stuart Haber og W. Scott Stornetta beskrev principperne bag det, der i dag er kendt som BlockChain.
Det første eksempel, som jeg har kunnet finde, på brug af BlockChain, er fra 1992 hvor Bayer, Haber og Stornetta benyttede denne teknologi, til at samle forskellige sider til en bog.
I 2002 skabte David Mazières og Dennis Shasha et decentraliseret filsystem, der via BlockChain teknologien havde indbygget tillid filerne imellem. Dog var dette system slet ikke sikkert nok, hvilket nok er grunden til, at vi ikke hørte mere om det.
Det næste store skridt kom i 2008, hvor Satoshi Nakamoto (det er stadig ukendt hvem Satoshi er) konceptualiserede BlockChain og BitCoin, som vi kender dem i dag.
I folkemunde er BitCoin kendt som en digital/virtuel valuta eller et betalingsmiddel, der er opdelt i mindre dele (lige som vores kroner er opdelt i 100 øre) kaldet Satoshi (efter skaberen af BitCoin, Satoshi Nakamoto). Hver BitCoin kan opdeles i enheder på helt ned til 0,00000001 BitCoin, hvilket man også kalder 1 Satoshi.
Mere præcist kan man sige, at BitCoin er en kryptografisk mønt.
Ja det lyder meget flot, men hvad betyder det?
BitCoin kan sammenlignes med et dokument, der beviser ejerskabet af en ting. I dette tilfælde beviser en BitCoin Satoshi ejerskabet af en del af de 21.000.000 BitCoins, som der maksimalt kan skabes.
Det kryptografiske element ligger i, at hele teknologien anvender avanceret kryptering, for at sikre og verificere transaktioner (mere om dette senere).
Hvordan virker dette ejerskab så?
Når du modtager en BitCoin transaktion, så fortæller afsenderen til BlockChain-netværket, at han ønsker at overføre ejerskabet af f.eks. 1,23 BitCoins til dig. Afsenderen indtaster din BitCoin adresse, og ved at bruge sin kryptografiske nøgle (mere om dette senere) godkender han overfor netværket, at ejerskabet, af de 1,23 BitCoins han ønsker at sende til dig, faktisk er hans.
Når du så modtager de 1,23 BitCoins, er det du modtager, en opdatering i BlockChain-netværket der underbygger, at ejerskabet af de 1,23 BitCoins nu er dine.
Hvor befinder alle BitCoins sig så?
Man kan gå så langt at sige, at alle BitCoins faktisk ikke findes. Det der findes, er en relation mellem BlockChain-netværket og ejerskabet af BitCoins, valideret via kryptografiske nøgleværdier.

3) Hvad er kryptografiske nøgler?
Som udgangspunkt skal der bruges to ting, for at kunne sende, modtage og holde styr på ejerskabet af alle BitCoins:
- en privat nøgle
Den private nøgle er den del, som du skal beskytte! Vi kan sammenligne den med nøglen til dit hus, eller adgangskoden til din netbank.
Lige som med nøglen til din dør og koden til din bank, kan den private nøgle kopieres.
Den eller de personer der besidder den private nøgle, har som udgangspunkt adgang til alle de BitCoins, som tilhører indehaveren af nøglen.
Smider du nøglen til din dør væk, kan du skifte låsen. Ligeledes kan du bede banken, om at udstede en ny kode til dig, hvis du skulle glemme den.
Mister du derimod den private nøgle, så er dine BitCoins tabt! Den private nøgle er unik og kan ikke genskabes igen! Så sørg for at opbevare den private nøgle sikkert, og husk at tage sikkerhedskopier af den, som du opbevarer et eller flere sikre steder.
- en offentlig nøgle
Simpelt sagt er den offentlige nøgle, den som du bruger, når andre skal sende BitCoins til dig. Den offentlige nøgle er basalt set ikke din BitCoin adresse. De er dog matematisk forbundne, da man ud fra den offentlige nøgle kan generere adresse, som du via din private nøgle kan bevise ejerskabet af.
Du kan sende din offentlige nøgle til andre personer, som så ud fra denne kan se, hvilke adresse de kan sende mønter til dig via.
- en BitCoin adresse
Man kan som udgangspunkt have lige så mange BitCoin adresse, som man ønsker.
BitCoin adresserne er skabt ud fra en matematisk tilgang til værdierne indeholdt i din private nøgle.
Visse af disse værdier i din private nøgle, findes også i din offentlige nøgle. Men som navnene antyder, er den ene til offentligt brug (den kan kun bruges til at se, hvilke adresse som du kan modtage BitCoin ejerskab via) og den anden er udelukkende til privat brug (den beviser ejerskabet af alle de modtagne BitCoins)

4) Hvordan skabes BitCoins, og hvordan holder det decentrale netværk styr på alle overførslerne?
I fagterminologien kaldes skabelsen af BitCoins for at mine (mining). Mining dækker også over konceptet, at sørge for at alle transaktionerne bliver holdt up-to-date. Sådan, at når du overfører ejerskabet af et antal BitCoins til modtageren, så sker denne overførsel af ejerskabet på kryds af hele netværket.
Mere praktisk fungerer dette ved, at et stort antal noder (vi kan også kalde dem for servere), der kører BitCoin softwaren, bruger en hulens masse systemresurser på at udregne svaret på et matematisk spørgsmål.
Dette matematiske spørgsmål går simpelt sagt ud på følgende:
Minerne skal udregne (det er faktisk gætte) et tal, der kombineret med værdier indeholdt i modtagne datastykker (blokke), og kørt gennem en hash-funktion, giver et resultat inden for et specifikt interval.
Ja, det var godt nok ikke særligt simpelt…
Når en miner finder et brugbart resultat (nogle gange kan resultatet findes ud fra flere forskellige tal – andre gange kan resultatet slet ikke findes), så modtager mineren (den node der fandt et acceptabelt resultat) en belønning. Belønningen kan enten være for at have minet en ny bitcoin, eller for at have verificeret en transaktion (her er belønningen så en del af det gebyr (fee), som man betaler, for at overføre BitCoin fra en adresse til en anden).
Hver gang et matematisk spørgsmål løses, sendes resultatet fra den node, som foretog beregningen, til et par andre noder. Disse sender så information videre til andre osv.
For at sikre, at overførslen af ejerskabet af de afsendte BitCoins er korrekt, er der behov for et vist antal bekræftelser på, at ovenstående resultat af udregningen er korrekt. Standarten inden for exchanges er seks bekræftelser.
Som tiden går, stiger sværhedsgraden på at udregne det matematiske spørgsmål.
BitCoin teknologien understøtter kun muligheden for, at der kan eksistere op til og med 21.000.000 BitCoins. Der går stadig nogle år endnu, før vi når dette antal – hvis vi nogensinde når præcist 21.000.000 og ikke stopper marginaler før (det er lige som Zenos matematiske paradox med haren og skildpadden).
Mining kan foretages enten via CPU (processoren i computeren = utrolig langsomt), GPU (grafikkortet i computeren = væsentligt hurtigere).

5) Hvad betyder PoW og PoS?
PoW (Proof of Work) er en protokol, hvis formål er at forhindre hacker-angreb så som DDoS (Distributed Denial of Service). DDoS er en angrebsform, hvor serveren der angribes fyldes til randen – og mere til – med forespørgsler. Dette bevirker, at serveren bukker under på grund af den store arbejdsbyrde.
PoW konceptet stammer oprindeligt ikke fra BlockChain. Det blev først publiceret af Cynthia Dwork and Moni Naor tilbage i 1993. Selve termet ”proof of work” blev dog skabt af Markus Jakobsson og Ari Juels i 1999.
Dog skal det siges, at PoW er et af de underliggende parametre der gør, at BlockChain og derved BitCoin tillader tillidsløs og distribueret konsensus.
Hvad er tillidsløs og distribueret konsensus?
Det betyder kort sagt, at når du foretager og/eller modtager en overførsel via BlockChain, så er der intet behov for en tredjepart, som begge parter stoler på.
Et eksempel kan være en bank, der faciliterer overførsler mellem to parter. Når vi foretager en overførsel via en bank, så stoler vi på, at banken sørger for, at pengene for det første bliver trukket på afsenderens konto, men også at pengene derefter blive tilført til modtagerens konto.
Ved at benytte BitCoin – og derved BlockChain – er der ikke behov for en betroet tredje part, da alle kan hente en samlet kopi af dataene i BlockChainen indeholdende alle transaktionerne, der nogensinde har været foretaget. Alle overførsler bliver herved tillidsløse.
Desuden sørger noderne for, at alle overførsler af ejerskab bliver valideret – der af den distribuerede konsensus.
PoS (Proof of Stake) er generelt en anden måde at validere overførsler af ejerskab end ved PoW.
I modsætning til PoW, hvor minerne – der løser det matematiske spørgsmål – modtager en belønning for at validere overførslerne og skabe nye mønter, er alle mønterne allerede skabt fra lanceringsdagen ved kryptomønter, der benytter sig af PoS. Desuden sker betalingen for validering af overførslerne, ud fra en deterministisk variable der inkluderer velstanden af mineren – også kaldet stake.
PoS konceptet blev foreslået på bitcointalk forumet tilbage i 2011. Vi skulle dog vente til 2012, før de første mønter : Peercoin, Nav Coin, NuShares/NuBits, Nxt, ShadowCash, BlackCoin og Qora blev skabt ud fra denne idé.
En af de store fordele ved PoS frem for PoW er, at PoS er en meget mere energivenlig teknologi. I begyndelse af 2017 blev det estimeret, at den mænge af strøm det krævede for at validere én BitCoin transaktion, svarede til den mængde strøm, som 1,57 amerikanske husholdninger forbrugte på én dag.
Sammenholder vi dette med det samlede antal BitCoin transaktioner på daværende tidspunkt, blev det estimeret, at valideringen af samtlige BitCoin transaktioner, ville svare til det samlede strømforbrug i Danmark i 2020…
Der er en del flere ting der spiller ind i forskellen mellem PoW og PoS, men de ligger uden for denne simple gennemgang.
Brug Google til at uddanne dig selv, hvis du har interesse i at lære mere om ovenstående.
Jeg håber, at du har fået noget ud af denne gennemgang – den har i hvert fald været underholdende at skrive :-)
Hav en god dag og god vind :-)