Af Tom Madsen, Alt om Data
Denne artikel er oprindeligt bragt på Alt om Data. Computerworld overtog i november 2022 Alt om Data. Du kan læse mere om overtagelsen her.
Surfer du ind på Google og laver en søgning på ordet blockchain, får du i skrivende stund lige under 8 millioner resultater. Mange af disse søgeresultater vil omhandle den virtuelle valuta Bitcoin, fordi blockchain er den teknologi, der ligger nedenunder Bitcoin.
Blockchain er dog andet og meget mere end bare en teknologi, der understøtter Bitcoin. Blockchain-teknologi kan bruges og bliver rent faktisk allerede brugt til f.eks. at kontrollere, hvem der er indehaverne af aktier eller skøder i den digitale verden. Det er ikke uden grund, at mange banker nu er begyndt at tilbyde ydelser baseret på blockchain.
I denne artikel giver vi et hurtigt overblik over blockchain og kommer med nogle yderligere ressourcer til dem, der har mod på at grave dybere i den nye teknologi, end vi kommer her.
Hvad er en blockchain
For at forstå teknologien bag blockchain er vi nødt til at kigge på lidt matematik først. Bare rolig, vi bliver ikke meget avancerede her. Du kan klare dig med almindelig folkeskolematematik i det følgende.
Blockchain er baseret på elliptiske kurver, en matematik der er meget brugt inden for kryptering. Den algoritme, der bliver brugt, kaldes for ECDSA, der står for ’Elliptic Curve Digital Signature Algorithm’. Denne algoritme bruges til at skrive en signatur på selve blockchain’en, der kan verificeres af alle andre. Alle andre, er hele ideen bag blockchain, for det er det, der gør, at man kan stole på blockchain i forbindelse med transaktioner på blockchain.
Du kan se et eksempel på en elliptisk kurve på figur 1. Algebraisk ser den sådan her ud:
y^2=x^3+ax+b
I dette tilfælde er a = 0, og b = 7. Et koncept der er en del af ECDSA, som du måske ikke har hørt om før, er ideen om et ’endeligt felt’. Et endeligt felt i denne forbindelse er en foruddefineret endelig mængde af tal, som kan bruges i funktionen. Et eksempel kunne være mængden A, bestående af:
Aϵ {2,5,8,10,34}
Det vil så være de tal i mængden A, der er de tilladelige i den elliptiske funktion. De mængder, der bliver brugt i ECDSA er langt større, end den jeg har brugt her. Men når endelige felter bliver brugt i elliptiske kurver, så bliver det grafisk billede ændret til det, du kan se på figur 2.
Nu er det ikke længere en kurve men et sæt af punkter på en graf. Det er disse punkter og deres aritmetik, der udgør kernen i den signatur, der bliver brugt i blockchain. De tal, der er involveret, er 256-bit lange, og den matematik, der ligger nedenunder skaber en envejsproces, der ikke kan omgøres. Lidt ligesom en hash-funktion gør det.
Jeg har skippet en del af den underliggende matematik og den modulære aritmetik, der bliver brugt i beregningerne. Vi har tidligere kigget på kryptering her i Alt om DATA nr. 9. Jeg vil anbefale dig at læse den artikel igen og kigge på de bøger, der bliver nævnt i artiklen for yderligere oplysninger om den matematik, der ligger til grund for kryptering, for elliptiske kurver er en integreret del af kryptering.
Mere end bare til Bitcoin
Nu da ved vi, at den matematik, der ligger til grund for blockchain, er avanceret og envejs, kan vi se på, hvad man kan bruge teknologien til udover Bitcoin og de andre krypto-valutaer.
Jeg nævnte tidligere, at en blockchain i princippet er en offentlig ’bog’, som transaktioner kan skrives i, og når de først er skrevet, kan de ikke ændres igen. Fordi ’bogen’ er offentlig, og alle de transaktioner, der er skrevet i den, kan verificeres af hvem som helst, så bliver transaktionerne troværdige. Samtidigt er historien bag ved en transaktion let tilgængelig på blockchain.
Lad os tage et eksempel. Lad os sige, at jeg har købt en aktie. Denne handel er registreret på en blockchain, og samtidigt er det registreret på blockchain, hvem der tidligere har ejet denne aktie. Når jeg senere sælger aktien igen, så vil den, der køber den, kunne se, at jeg var den tidligere ejer, og hvem der var ejer af aktien før mig. Hele historien er tilgængelig og kan verificeres af den nye ejer, og alle andre der kunne have interesse i at verificere historikken bag ved aktien. Der kan altså ikke snydes med ejerskabet.
I mange år har vi været nødt til at have en tredjepart, som stod for garantien for, at vi var ejere af en ting eller ressource. Banken har for eksempel været der, vi gik hen, når vi skulle overføre penge til en anden person eller firma. Det at skulle have en tredjepart ind over en transaktion, gør for det første transaktionen dyrere uanset, om det drejer sig om at overføre penge eller overføre ejerskab til en ny person, men det vil tillige tage længere tid, fordi vi først skal notificere banken eller tredjemand om transaktionen.
Med blockchain er en tredjepart ikke længere nødvendig. Hvis jeg sidder på en café og vil overføre 100 kroner til ham, der sidder ved siden af mig, så kan jeg gøre det direkte, uden at banken skal fortælles om det, eller have gebyrer for transaktionen. Her kommer vi til den anden del af det, der gør blockchain så brugbar, ud over at man kan stole på den. Gebyrer eksisterer ikke for blockchain. Enhver transaktion sker direkte imellem to mennesker eller maskiner, uden at de skal involvere en tredjeperson eller firma. Men lur mig om ikke der kommer gebyrer på den/de blockchains, der kommer fra bankerne i de kommende år.
Fremtiden for blockchain
Vi er stadigvæk i børnehavealderen for udvikling og brug af blockchain, men du kan være sikker på, at vi i de kommende år, vil se blockchain-teknologien blive udbredt langt ud over krypto-valutaer og blive integreret ind i et utal af applikationer.
Hvis du er uddannet eller er ved at uddanne dig til udvikler, så vil viden om blockchain være uundværlig i de næste år. For dig der gerne vil videre herfra, der kan jeg anbefale bogen ”Blockchain fra O’Reilly”. Den er kun 140 sider lang, men giver et grundlæggende overblik over blockchain og de anvendelser, som den kan bruges til. En nyere bog er ”Blockchain Revolution”. Den er fra 2016 og går mere i dybden med blockchain, men den er også mere politisk orienteret end den første er. Hvis Bitcoin er mere dit interesseområde, så tag et kig på Dansk Bitcoin Forenings hjemme side: www.danskbitcoinforening.dk. Der kan du finde masser af ressourcer, der kan hjælpe dig i gang eller videre med din interesse for den digitale valuta.
Her til sidst, en advarsel. Netop fordi blockchain er den underliggende teknologi for Bitcoin, så vil blockchain-teknologien provokere mange følelser, både for og imod. Så når du bevæger dig ud på det store internet for at lære mere, så gå til sagen med en sund og naturlig skepsis. Ikke alle hjemmesider er lige objektive i deres dækning af blockchain og de relaterede teknologier.
Hvem opfandt blockchain?
Den oprindelige definition for blockchain-teknologien blev publiceret tilbage i 2008 af en person/personer, der kaldte sig for Satoshi Nakamoto. Det var den samme identitet som brugte den første open source-kode, der implementerede Bitcoin i 2009. Siden da har der været en masse spekulationer om hvem, Satoshi Nakamoto kunne være, og der har været personer, der er blevet beskyldt for at være Satoshi Nakamoto uden at være det. Den skæbne overgik en californisk mand tilbage i 2014.
I skrivende stund er der en australsk ingeniør, der påstår, at han er Satoshi, men der er blevet sået voldsomt tvivl om rigtigheden af det, og personen selv har ikke kunnet fremføre et endelig bevis for, at han skulle være personen bag Bitcoin og blockchain. Det ser altså ud til, at identiteten bag Satoshi Nakamoto stadigvæk er et mysterium. At Bitcoin er blevet så stort, som det er, skyldes uden tvivl timingen af publiceringen af beskrivelsen i 2008, lige på højden af den finansielle krise, men det vil være den underliggende blockchain-teknologi, der vil være det mest interessante at holde øje med i de kommende år.