Hopp til navigasjon Hopp til innhold
Det er ikke så lett å skjønne digitalvaluta. Vi håper denne forklaringen kan være til hjelp.
BLOGG

DYPDYKK: Hva i alle dager er «bitcoin-mining» og hvorfor bør du glemme å bruke egen maskin?

La oss forklare.

Ingen sentral bank styrer valutaen Bitcoin, så hvem passer da på? Hvem er banken? Det er altså her «minerene» kommer inn. Det er «minerene» som prosesserer transaksjoner, og sikrer all eierskapshistorikk. Så hvem er de, og hvordan gjør de dette?

Dette er «mining»?

De fleste som leser denne artikkelen har nok hørt om fenomenet «mining» før, eller graving som det litt rart kan kalles på norsk. Kanskje dere har hørt at gravingen foregår ved at en skal løse en vanskelig matematisk oppgave, og at det fungerer som et stort lotteri der førstemann som klarer å løse oppgaven får gevinsten. Denne forenklingen er forsåvidt riktig.

Hvem som helst kan bli en digitalpengegraver. I begynnelsen med digitalvaluta var det lukrativt å grave med egen PC, og derfor var det mange som hev seg på, men i dag vil du nok gå kraftig i minus ved å bruke PC-en til dette.

Dette må til for å tjene penger på digitalvaluta

For å tjene penger nå for tiden er man nødt til å disponere spesialbygd datakraft som jobber effektivt. Skjønt, om en bare er nysgjerrig, eller ønsker å gjøre det av idealistiske grunner, så kan en sette i gang å «mine» med et enkelt program på PC-en med en gang.

Inntjeningsproblemet skyldes den enkle grunn at din egen maskin vil bruke mer strøm enn du klarer å tjene inn – for ikke å snakke om at du sannsynligvis vil bli gammel før du ser noen inngående kontantstrømmer av betydning.

Det kreves mer kraft i 2018

Forklaringen på dette inntjeningsproblemet, er at vanskelighetsgraden på den matematiske oppgaven har økt kraftig siden starten. Og vanskelighetsgraden fortsetter å øke, ettersom flere og kraftigere datamaskiner brukes til å jobbe i nettverket.

I starten ble det brukt PC CPU-en til å grave, men så fant noen smartinger ut at grafikkortet (GPU-en) var bedre egnet. Deretter begynte entusiastene å designe egne kretser (FPGA) til formålet, og nå de siste årene lages all maskinvare ferdig spesialbygd på fabrikker (ASIC). Dette er et våpenkappløp!

Uansett hvor mange og kraftige maskiner som «miner», så skal det ta like lang tid å finne en ny blokk. Dette medfører da naturlig nok at det må bli vanskeligere for den enkelte, når flere deltar.

Vanskelighetsgradens utvikling: (Y-aksen viser ‘difficulty target’, og dikterer statistisk hvor mange forsøk som må til for å lykkes) Vanskelighetsgradens utvikling:
(Y-aksen viser ‘difficulty target’, og dikterer statistisk hvor mange forsøk som må til for å lykkes)

 

Slik fungerer det

Bitcoin-transaksjoner samles regelmessig opp i blokker, spredd via peer-to-peer. En ny blokk, med nye transaksjoner, blir som mange vet dannet hvert tiende minutt.

Systemet er bygget opp sånn at det akkurat skal være vanskelig nok å lage en ny blokk, så det statistisk sett bare skjer hvert tiende minutt. Vanskelighetsgraden justeres hver 14. dag for å opprettholde dette tidsvinduet.

Fordi hver blokk kobler seg på den forrige, og låser inn tidligere blokker, blir det med tiden eksponentielt vanskeligere å redigere de eldre blokkene. For å endre en eldre blokk må en alene løse denne og samtidig alle eksisterende nyere blokker, før hele resten av verden lager neste blokk. Ganske umulig.

Slik er det lagt opp.
Slik er det lagt opp.

Førstemann vinner

Det utstedes nye bitcoins til digitalvalutasankeren som hver runde løser oppgaven først, og dermed får danne den nye blokken.

Alle de andre «minerene» kontrollerer enkelt at det har gått riktig for seg: for tiden er gevinsten 12,5 bitcoins til vinneren, noe som tilsvarer rundt 700 000 kroner med dagens kurs.

Gevinsten halveres hvert fjerde år. I tillegg til gevinsten trekkes det en avgift pr transaksjon fra alle avsenderne. Med dagens avgiftsnivå og vekslingskurs kan avgiftene totalt utgjøre ca. 50 000 kroner for en blokk – her ligger altså inntektene til «minerene».

Samtidig er dette også en mekanisme som skaper jevn og forutsigbar inflasjon i økonomien. Ettersom gevinsten halveres hvert fjerde år, vil avgiftene bli viktigere og viktigere som motor i økonomien.

Så hva gjør egentlig graverne?

De forsøker å finne «koblingen» fra den siste blokken til den nye som skal lages; det kryptografiske limet som sikrer at ikke hvem som helst kan lage en ny blokk.

I kryptografien er det et begrep som kalles «hash», og dette begrepet blir viktig nå som vi går videre i forklaringen. Denne fungerer i Blockchain som bevis på å ha løst oppgaven for gjeldende blokk, aka «proof of work» – jeg kan godt gå i dybden på dette i en senere artikkel.

Bruk kommentarfeltet!

Sikkerhetssystemet.
Sikkerhetssystemet.

Hva er så en «hash»?

Enkelt forklart er en ‘hash’ et resultat av en enveis-algoritme. Når noe «hashes» så representeres en hemmelighet på en reproduserbar måte, slik at to hemmelige ting kan sammenlignes uten å avsløre selve hemmeligheten. Fingeravtrykket er en ofte brukt sammenligning.

Et fingeravtrykk vil alltid være likt for en person, men sier ellers ingenting om personen. Som ved et fingeravtrykk kan du ikke vite hvem som eier det, uten at du har vedkommendes fingeravtrykk i databasen fra før. Det er umulig å rekonstruere opprinnelig data fra en «hash» av informasjonen.

For Bitcoin sin del er det tilnærmet tilfeldig hvilket «fingeravtrykk», eller «hash», en beregning gir, og en kan aldri gå baklengs og finne det som var utgangspunktet hvis en bare har «fingeravtrykket». En må altså gjette, og forsøke veldig mange kombinasjoner.

Og det er nettopp dette som er den «matematiske oppgaven»; prøve et utall kombinasjoner i tur og orden. Vanskelighetsgraden som til enhver tid er oppgitt, sier at «hashen» må være et tall lavere enn grensen gitt av vanskelighetsgraden (dette er en komplisert formel med flere parametre som jeg ikke tar med her.)

Likte du denne artikkelen? Støtt meg

bitcoin:1CSuKsY4wqM1BirXEaPjV7hk3bJsDnVziJ

Min bitcoin-adresse.
Min bitcoin-adresse.

Og formålet er…

Som dere skjønner er det ikke bare èn mulig løsning på oppgaven: vi jakter på en løsning som først og fremst er riktig og samtidig lav nok. Det er ingen snarveier til svaret, og en må regne om igjen, og om igjen, «hasher» med skiftende parametre og håpe at en får et lavt nok svar før noen andre.

Med et antatt statistisk normalfordelt utfallsrom for algoritmen, og ingen systematikk i «hashens» verdi, så blir vanskelighetsgraden et verktøy for å styre hvor mange forsøk som gjennomsnittlig må til globalt, for å lykkes i hver runde.

Slik går de sammen

Siden det er så vanskelig og ytterst sjelden en selv kan vinne en runde, så går gravere ofte i lag i såkalte «mining-pools» («gravehav«? Nei, det får holde med fornorskning nå).

En «mining pool» er å anse som tippelag, der en øker sjansen for å vinne, men samtidig må dele gevinsten med de andre som er med.

Alt dette er snedige mekanismer som er finjusterte, men alt avhenger av at fellesskapet er stort nok, og distribuert nok, så det er resistent mot uærlige aktører. Så lenge mer enn halvparten av blokkmakerene, i.e. ‘»minerene», er ærlige, så vil nettverket fungere etter hensikten.

Hvorfor? Fordi alle gravere er med på å bestemme om en ny blokk blir godkjent. Alle som er med sitter på en kopi av hele blockchain-et, og kopien tjener både som backup av blockchain, såvel som en stemme på hvordan den skal se ut til enhver tid.

Blockchains er ikke lagret på ett sted, det er flertallets versjon av Blockchain som gjelder. Det er her litt av magien ligger!

Hver enkelt bruker kan lett og selvstendig kontrollere at ting går riktig for seg, med hensyn til egne transaksjoner og saldoer. Det kan «ikke-minere» òg gjøre ved å operere sin egen full-node «Wallet». En slik utfører en helt uavhengig sjekk mot sin lokale og oppdaterte kopi av hele Blockchain. Trustless!

Bonus:

Innenfor et styrt 10-minuttersvindu, opplever en stadig at tilfeldigheter fører til at en runde likevel går mye raskere eller senere enn dette. Dette skjer hele tiden, men mer hyppig når det nærmer seg ny justering hver 14. dag. Statistikk er bare forventet verdi.

 

Typisk antall minutter mellom hver blokk kan se slik ut over en 14-dagersperiode: Noen ganger tar en blokk ett minutt å lage, og andre ganger rundt en halvtime. Typisk antall minutter mellom hver blokk kan se slik ut over en 14-dagersperiode:
Noen ganger tar en blokk ett minutt å lage, og andre ganger rundt en halvtime.
Bjørn Tore Husby

Sivilingeniør Digital Signalbehandling

Meninger og ytringer som kommer frem i bloggen er ikke nødvendigvis representativt for ITavisen.no sitt syn. Ønsker du å blogge på ITavisen.no? Kontakt redaksjonen: [email protected].

Stikkord: bitcoin, digitalvaluta, Eksklusivt