Bitcoin Specifikationer

Som udgangspunkt skal man se på Bitcoin som en protokol.

Bitcoin transaktioner foregår ved at kigge på følgende billede for neden.

bitcointransaktions På billedet ser vi en situation hvor to personer begge har et Bitcoin program installeret på deres computer, og ønsker at overføre penge til hinanden, ved at bruge Bitcoin.

Hver eneste adresse har en bestemt balance, og indeholder i de fleste tilfælde nul Bitcoin. Bitcoin adresserne er gemt i Bitcoin pungene, dvs. wallet filerne, kan tilgås af de programmer som er installeret på computerne. Adresserne er en blanding af tal og bogstaver og bliver brugt til at modtage Bitcoins på, idet begge partner har installeret programmet nødvendigt for at overføre.

Ved en overførsel underskriver man ved hjælp af sin Bitcoin program transaktionen, ved at bruge ens private kryptografiske nøgler, hvilken gøres automatisk og kun kræver man indtaster beløb, adresse på modtager og trykker send. Dette kan sammenlignes med at man med sin digitale signatur logger ind på netbank og laver en transaktion til en modtager konto. Adressen kan verificeres af alle i Bitcoin netværket med adressens offentlige kryptografiske nøgle, hvilken betyder at alle transaktioner både er offentlige og offentligt verificeret.

I stedet for at stole på en central enhed verificerer beløbet som ønskes sendt til modtager på baggrund af en balance, bliver det i Bitcoin regi verificeret af alle i netværket idet den kryptografiske offentlige nøgle er en del af den pågældende transaktion.

Dele af netværket defineres som en Bitcoin miner, og er ansvarlig for at udføre hashing af transaktioner som venter på verificering i hukommelses puljen. En bestemt hash funktion bliver brugt i Bitcoin, SHA256, som står for Secure Hashing Algorithm, og SHA256 bliver hashet to gange på hver nye Bitcoin blok. Hash værdien bliver transformeret til en prædefineret streng længde af en Bitcoin miner, som sikrer at der ikke foregår en dobbelt betaling af balancen i overførslerne.

En nonce, dvs. en vilkårlig mængde nuller, bliver tilføjet og hashet sammen med transaktionerne som venter i hukommelses puljen, for at sikrer at den resulterende hash på blokken kan findes og er mindre end målet for sværhedsgraden, hvilken resulterer i at transaktionerne kan inkluderes i en blok, idet blokken bliver fundet.

Grunden til at hash værdien ændrer sig hver gang, er fordi hashen indeholder et stykke information omkring samtlige forudgående hashes i blok-kæden. Alt bliver udregnet forfra ud fra de forudgående parametre og en ny hash bliver sat ind efter en miner får løst blokken.

Kort sagt hashes en nonce, den tidligere blok og transaktionerne sammen, for at finde et mål som er mindre end målet for den respektive blok der skal løses. Sværhedsgraden fastsættes af den samlede mængde hashing i hele netværket, som justeres for at opretholde en blok skabelse hver 10 minut.

Transaktionerne er repræsenteret i et Merkle træ struktur og hashes sammen indtil der er en hash rod som hashes sammen med en nonce og den tidligere blok hash.

Inklusion af Bitcoin transaktionerne i en blok er derfor en “gætteleg” eller en brute-force af SHA256 krypten, for at finde en mindre værdi end det fastsatte mål af en ny hash. Der er eksempler på at blokke er løst på under 5 minutter, på trods af en meget høj sværhedsgrad, men det betyder blot at “held” spillede en faktor til den respektive miners løsning på en blok.

En myte er at Bitcoin minerne sætter reglerne ved at stemme. Dette er ikke sandt idet miner ikke stemmer, men verificerer. De verificere at transaktionerne følger protokol reglerne, tilføjer dem til en blok og tilføjer blokken til blok-kæden, ved at sende den til alle peers i netværket. Hvis en del af minerne begynder at verificere visse regler som de selv finder på, og selv om de har over 50% af mining kapaciteten, vil dette ikke automatisk gøre at resten af minerne følger trop. I stedet for sker det som hedder en “hard-fork” (en blok-kæde split), og Bitcoin netværket deles dermed i to, dem som følger de nye regler og dem som holder sig til de gamle regler.

Men minerne er ikke de eneste som har noget at sige i Bitcoin netværket. Bitcoin netværket består også af peers, dvs. klienter som også skal validere de blokke som de selv downloader. Det klienten validere er at at den respektive blok er minet under de korrekte forudsætninger, dvs. de regler som er kodet ind i Bitcoin klienten, som man har downloaded. Følger reglerne ikke med på hvad ens Bitcoin klient kan validere at minerne har verificeret, vil den pågældende blok simpelthen blive ignoreret og ikke inkluderet i ens klient database. Så snart en enkel miner følger de regler som ens egen Bitcoin klient også følger, vil blokke igen blive downloaded, skabt af mineren og valideret af klienten, samt sendt ud til andre klienter. Den eneste måde hvorpå alt kan ændre sig er ved at alle miners, og alle klienter bliver enige om nyt regler for Bitcoin, og alle skifter, enten løbende eller simultant.

Idag er Bitcoin det mest decentrale system i verden, grundet den store mænge af folk som deltager i netværket, hvilken gør at vi har et decentralt, sikkert, transparent og anonymt samt rationelt system, i forhold til alle som downloader, bruger og transmittere Bitcoins.

Transaktions gebyrer

Bitcoins er bygget til at være gratis at bruge, gratis at overføre med og gratis at eje og holde på. Men Bitcoin klienten indeholder også transaktions gebyrer, og er et incitament som allerede er indbygget, for at miners i Bitcoin netværket, efter alle Bitcoins er minet, har et incitament til at fortsætte med at mine.

Transaktionsgebyrer er valgfrit at inkludere for en Bitcoin overførsel, og på nuværende tidspunkt er det praktisk at inkludere en mindre gebyr (som tilsvarer få ører), idet det selv på nuværende tidspunkt giver Bitcoin miners incitament til at inkludere din transaktion hurtigst muligt i en blok.

En anden grund til transaktions gebyrer er at Bitcoin miners har svært ved at skelne fra blok-kæde spam, i form af mini overførsler, og reelle overførsler, medmindre reelle transaktioner inkluderer et gebyr. Overfører man Bitcoin og ikke inkludere et transaktions gebyr, kan det ske at ens transaktion hænger i et tomrum, og aldrig bliver overført.

Vil du læse mere omkring tekniske features i Bitcoin er Protokol Specifikationerne et perfekt sted at starte. Alternativt kan du allerede nu gå i krig på Github Bitcoin og lave din egen Bitcoin version, også kendt som en Altcoin, eller bygge videre på den gamle Bitcoin kode med nye funktioner.

Transaktionsgebyrer skal man huske at inkludere når man overfører Bitcoin, for at være sikker på en Bitcoin miner inkludere disse i en blok. Der er visse regler som gælder hvis en transaktion skal gå igennem, og en del faktorer spiller ind i overførsler på Bitcoin netværket.

Disse er feks. at man skal sætte et minimum transaktions gebyr, eller lade det software som man benytter automatisk sætte et gebyr. Siden starten af 2015 har transaktionsgebyrer spillet et aktiv rolle i Bitcoin, da der er begrænset plads i hvert blok, og det har medført at transaktioner med et gebyr bliver prioriteret. Andre faktorer som spiller ind er at de Bitcoins man sender har været ude af cirkulation i en længere periode, som igen spiller ind i at de respektive Bitcoins højst sandsynligt ikke bliver brugt til spam transaktioner.

Er man i tvivl omkring transaktions gebyrer er det anbefalet at man bruger online penge punge, som Blockchain.com eller Greenaddress til at overføre Bitcoins da disse hjemmesider har bygget parametre ind i overførsler og dermed sikrer ens Bitcoin kommer frem til den destination man ønsker.

 

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *