I dag er det svært at finde en person, der ikke har hørt om Bitcoin. Forståelsesniveauet for dets principper og mekanismer varierer imidlertid meget. Mange mennesker er tilfredse med viden om, at det er nok at få en tegnebog, modtage, sende kryptovaluta til en anden person eller sælge den. For nogle brugere er disse oplysninger tilstrækkelige. Ikke desto mindre for cryptocurrency investorer en dybere forståelse af Bitcoin‘S natur er obligatorisk, da den kan løse mange spørgsmål og undgå problemer med brug af kryptovaluta.

Engang havde vi allerede overblik over, hvad Bitcoin er, men gik ikke i detaljer. I denne artikel vil vi prøve at beskrive, hvordan Bitcoin fungerer på en tilgængelig og detaljeret måde.

Netværk

Som mange kilder fortæller os, er Bitcoin en peer-to-peer betalingssystem / netværk, er kryptovalutaen med samme navn afviklingsenheden for operationer i dette netværk.

Et peer-to-peer-netværk er et computernetværk, der principielt er alle deltageres lige rettigheder. Hver peer eller node, som de også kaldes, udfører både klientens og serverens funktioner. En sådan organisation giver dig mulighed for at bevare netværkets funktionsdygtighed for et hvilket som helst nummer og enhver kombination af tilgængelige noder, summen ændrer sig ikke ved at omlægge vilkårene. Netværksdeltagere er alle jævnaldrende, så systemets hovedtræk er fuldstændig decentralisering: der er ingen central administrator eller server. I stedet for udtrykket “peer-to-peer” kan du bruge definitioner som: et decentraliseret eller p2p-netværk.

Blockchain

Grundlaget for bitcoin og undervejs er “registret” for transaktionsregnskab en ordnet rækkefølge (kæde) af et datasæt (blokke) eller simpelthen en blockchain. Hver blok i bitcoin -netværket rummer op til 1 MB data, den dannes i gennemsnit 10 minutter, og den indeholder oplysninger om alle transaktioner, der er placeret i den, og oplysninger, der forbinder den med den forrige blok.

Hver blok i kæden er kryptografisk forbundet med den forrige og den næste. Dette forhold beskytter netværket mod at udskifte eller ændre eksisterende blokke i fremtiden, hvilket gør blockchain uforanderlig og transaktioner irreversible.

Driftsprincip

For en klarere forståelse af det grundlæggende i Bitcoin -netværket, forestil dig en hypotetisk kryptoentusiast, lad os kalde ham Tony, der har en bitcoin -tegnebog med 2 BTC på balance.

Lad os antage, at Tony ønsker at give 1 BTC til sin ven Cindy, og til dette har han brug for hendes unikke bitcoin tegnebog -adresse – en analog af kontonummeret i en traditionel bank. Tony sætter denne adresse til det relevante inputfelt i sin tegnebog, og i det andet felt angiver han overførselsbeløbet – 1 BTC. Derefter fastsætter Tony størrelsen på transaktionsgebyret, og her vil vi dvæle lidt mere.

Transaktioner og netværksbelastning

Som i ethvert andet betalingssystem forekommer transaktioner i bitcoin, det vil sige aktiver overføres fra en klient til en anden. For bitcoin -transaktioner opkræves en provision, der sendes som en belønning til minearbejderne, der bekræfter disse transaktioner. Jo højere provision og jo lavere netværksbelastning, jo hurtigere bekræftes transaktioner.

Netværksbelastning betyder det samlede antal deltagere, der sender deres oversættelse på samme tid.

I det væsentlige er en transaktion et sæt oplysninger, der angiver netværksdeltagere, hvilken værdi afsenderens saldo er faldet, og hvilken værdi modtagerens saldo er steget.

Minearbejdere

For at en transaktion kan gennemføres med succes, skal minearbejdere bekræfte eller validere den. I dag er det for det meste specialiserede gårde, der bruger kraftfuldt computerudstyr, ASIC’er, til at verificere transaktioner for “korrekthed”, de samler disse transaktioner i blokke, og blokkene er sekventielt forbundet med hinanden. Netværksalgoritmen tager 10 minutter at danne 1 blok, hvor minearbejderne udfører den samme type beregningsarbejde på jagt efter en unik løsning hvert sekund. Dette er ikke svært, det er ikke et matematisk problem, men det er en meget stor mængde arbejde, som er svært at udføre med lille computerkraft hurtigt og effektivt.

Minearbejdere modtager en belønning i form af BTC for det udførte arbejde. Denne belønning består af de provisioner, som brugerne betalte for transaktioner og nye bitcoins, som netværket selv genererede, da en ny blok blev afsluttet og bekræftet fra transaktionerne. Vi vil tale mere om minearbejdere og generering af nye bitcoins i en separat artikel.

Provisioner

Lad os vende tilbage til vores krypto -entusiast. Tony sætter størrelsen på transaktionsgebyret og styres af det faktum, at han for hver byte af oplysninger skal betale en vis mængde Satoshi – en brøkdel af bitcoin. Da Tony ikke ved, hvor mange data hans transaktion vil tage, beslutter han sig for at gemme og sætte prisen til 1 Satoshi pr. Byte.

For jer, læsere, vil vi fortælle, hvordan vægten og omkostningerne ved en Tony -transaktion dannes.

De 2 BTC, som han har på balancen, dukkede op i tegnebogen af ​​en grund. Tony tjente dem – 1 BTC i 2017, 1 BTC i 2018. Nu vil han sende halvdelen til sin kæreste. I hans transaktion vil der ud over oplysninger om antallet af mønter blive inkluderet oplysninger om adresserne, hvorfra mønterne kom til ham (de kaldes input), oplysninger om modtagerens adresser (de kaldes output) og oplysninger om hans egen adresse vil også blive inkluderet.

  • Hvert input, hvorfra der blev modtaget mønter, vejer 148 bytes
  • Hver udgang, som mønterne går til, er 34 bytes
  • Selve transaktionen vejer 10 bytes, uanset antallet af adresser eller mængden af ​​overførsel.

Vi betragter: 148*2 + 34*2 + 10 = 374 bytes. Nu ved vi, at vores “grådige” Tony vil betale 374 Satoshi for transaktionen.

Lave om

Du spørger, hvorfor multiplicerer vi 34 (vægten af ​​modtagerens adresse) med 2, når modtageren kun er en? Faktum er, at når du sender en del af din saldo til en anden, så ikke en del, men hele beløbet, forlader din saldo, og efter validering, dvs. inklusion af transaktionen i blokken, returneres saldoen minus netværkskommissionen tilbage til din tegnebog. Ud over oplysninger om modtagerens adresse er oplysninger om afsenderens adresse, det vil sige din adresse, derfor også inkluderet i transaktionen. Dette afkast kaldes ændring.

Mempool

Efter at have sat en lille kommission på 374 satoshi, bekræfter Tony afsendelse af 1 BTC og venter på, at minearbejderne bekræfter denne transaktion.

Det er bare, at minearbejderne ikke har travlt med at bekræfte det, transaktionen falder i mempoolen – køens bog til bekræftelse. Hvorfor? Fordi minearbejdere ønsker at tjene penge og ikke bare betjene deres udstyr, fordi de for bekræftelsen af ​​Tonys transaktion kun vil modtage 374 satoshi. Især for sådanne meget billige transaktioner er der en mempool med sit sorteringssystem.

Først og fremmest “tager” minearbejdere lettere transaktioner med en højere provision fra mempoolen, fordi bekræftelse af dem er mere rentabel og meget mere er placeret i deres blok.

Forresten, hvis afsenderen bruger SegWit -teknologi, vejer hans udgående transaktioner mindre end normalt, hvilket også tiltrækker minearbejdere.

Men du skal ikke tro, at transaktionen en gang i mempoolen er tildelt en slags sekvensnummer. Nej. Denne kø er dynamisk, hvert sekund kommer der mange transaktioner med forskellige gebyrer og vægte, så vores Tonys transaktion kan vente længe på bekræftelse. Og vigtigst af alt, mens det er i mempool, vil Tony ikke være i stand til at disponere over ændringen.

Faktisk er afsenderens saldi i en sådan situation “frosset”. Det er denne mekanisme, der beskytter netværket mod spam -transaktioner – situationer, hvor en spammer skaber mange billige transaktioner og derved overbelaster netværket.

Selvom Tonys transaktion er i mempool, betragtes den ikke som bekræftet og anses ikke for at være suspenderet. Samtidig kan den stå i køen i temmelig lang tid – indtil den er bekræftet, eller indtil den fjernes ved at validere noder fra mempoolen. Ifølge statistikker er den maksimale ventetid for en kø ca. 3 dage, men i perioder med høj netværksaktivitet kan denne periode forlænges med en uge eller længere.

Enig i, at overførselshastigheden i vores tid er en af ​​de prioriterede egenskaber i spørgsmålet om brug af betalingssystemer, og sådanne køer er mildest talt ikke særlig behagelige.

Der er mange måder at skubbe en transaktion gennem mempoolen. Alle er ret vanskelige at forstå og implementere for den almindelige bruger, og nogle af dem grænser op til en så svigagtig måde som "dobbeltudgifter", eller gentagne udgifter. Ikke desto mindre er der en fantastisk funktion, som alle kan bruge, og vi vil tale om det. Det kaldes “Replacement Commission” (Replace-by-Fee eller RBF).

Replace-by-fee (RBF)

I dag har ikke hver bitcoin -tegnebog lignende avanceret funktionalitet. RBF redigerer en eksisterende transaktion, der er i mempoolen.

Redigering betyder, at de nye input bruger de samme input som de gamle, men provisionen ændres. En sådan redigeret transaktion vil ikke blive betragtet som dobbeltudgifter, da brug af alternativet Erstat efter gebyr vil undgå dette. Noderne i bitcoin -netværket opfatter den redigerede transaktion som gamle, og den overføres i mempoolens kø til mere attraktive positioner for minearbejdere.

Hvis provisionen er for lille, er det derfor normal praksis at øge, hvis du skal fremskynde operationen. Forsøm ikke RBF -funktionen og aktiver den, før du foretager transaktioner, dette giver dig mulighed for at spille det sikkert, hvis overførslen er forsinket i køen.

Bekræftelsen

Tony indså med tiden, at Cindy på grund af sin grådighed muligvis slet ikke modtog en gave, så han brugte rettidigt RBF -funktionen og øgede provisionen. Transaktionen blev som forventet mere attraktiv for minearbejdere, og de inkluderede den i den næste blok – transaktionen modtog 1 bekræftelse. For hver efterfølgende blok fundet, modtager denne transaktion 1 yderligere bekræftelse. Når der er 6 eller flere sådanne bekræftelser, betragtes transaktionen som bekræftet.

Transaktionsrate

Når vi taler om overførselshastigheden, skal det forstås, at der ikke er nogen bestemt værdi. Men lad os beregne det baseret på Tonys transaktion og de data, vi har.

Tilstand:

  • størrelsen på en blok er 1 Mb (1048576 bytes);
  • hver blok fyldt med transaktioner dannes en gang om 10 minutter (600 sekunder);
  • vores Tonys transaktion har en vægt på 374 bytes.

Afgørelse:

  • 1048576 bytes: 374 bytes = 2803,6 transaktioner i en 10 minutters blok.
  • 2803,6 transaktioner: 600 sekunder = 4,6 transaktioner pr. Sekund.

Svar: Hvert sekund bekræfter minearbejdere 5 transaktioner, der ligner Tonys transaktion.

Selvfølgelig er alle disse omtrentlige værdier, da behandlingshastigheden ændres hvert sekund og afhænger af mange faktorer. Det vigtigste er, at din transaktion tages fra mempoolen så hurtigt som muligt, og hvis dette sker, når din overførsel modtageren inden for 1-600 sekunder.

Faktisk, efter at transaktionen er inkluderet i blokken, kan modtageren ikke kun se midlerne på sin balance, men også under en bestemt betingelse styre den. Hurtig, ikke? Ja, men hvad med reglen om 6 bekræftelser? 6 blokke, 10 minutter hver, i alt – 1 time …

Bitcoin klienter

Det handler om den software, som kryptokurrencyholdere bruger. Klassiske Bitcoin -tegnebøger viser transaktionen som “ubekræftet”, indtil den modtager 6 bekræftelser (blokke).

Tjenester, der accepterer BTC som betaling, kan sætte deres grænser for antallet af blokke, der er nødvendige til bekræftelse (7, 10, 45, 214).

BTC, som genereres af netværket som en belønning for at finde en blok, kan kun bruges efter 100 bekræftelser, men klassiske bitcoin -tegnebøger viser ikke mønter modtaget for at finde en blok, før 120 bekræftelser er indsamlet.

Nummeret "6" ikke blev valgt ved en tilfældighed. For hver ny blok bliver transaktionen mindre sårbar over for spoofing eller ændringer. For at gøre noget med en allerede bekræftet transaktion i en blok, skal du “omskrive” alle efterfølgende blokke, og dette kræver meget enorm computerkraft og millioner af investeringer. Og jo flere bekræftelser en transaktion modtager, jo mere sikker vil den være.

Men i en så stærk og stabil blockchain som Bitcoin er det mere sandsynligt kravet fra modtager af transaktionen og ikke en regel i protokollen.

Derfor bruger vores Cindy og Tony ikke en klassiker, men en meget avanceret og funktionel Bitcoin -tegnebog. Takket være funktionen med at bruge ubekræftede transaktioner aktiveret i den, vil Tonys udgående transaktion, efter at have været inkluderet i blokken, øjeblikkeligt blive vist på Cindys tegnebog. I dette tilfælde vil Tony straks kunne disponere over ændringen, og Cindy kan modtage gaven.

Linket “SegWit + RBF + brug af ubekræftede transaktioner” giver dig mulighed for at presse den maksimale hastighed ud af BTC-blockchain, hvilket er vigtigt for ikke-depoter-tjenester.

Konklusion

Bitcoin er meget kompleks og meget teknologisk avanceret. I en artikel er det umuligt at beskrive alle finesser og nuancer i sit arbejde, men vi fortalte dig stadig om dets grundlæggende. Nu ved du, hvilke vanskelige rejser dine mønter foretager inden for kun en enkelt transaktion mellem to tegnebøger og med hvilken hastighed. Hvordan og på hvilken måde netværket beskytter sig mod hacking, spamangreb, svindel eller udslæt handlinger af begyndere.

Den stabile drift af bitcoin afhænger ligeledes af både minearbejdere og almindelige brugere, og jo flere deltagere der er på netværket, desto mere sikker og decentraliseret bliver det.

Forfatter: Kate Solano til Сrypto-Rating.com