Hogyan működik a Bitcoin? Legyen gyorsabb a Bitcoin technikai vonatkozásaiban a Cristian Ciobanu Medium segítségével
Cristian Ciobanu
Május 15. · 19 perc olvasás
Ebben a cikkben kitérünk a bitcoin működését elősegítő technológiára és alapvető mechanizmusokra. Egy másik cikkben megvitatjuk a blokkláncot és a konszenzust, ezért ez a cikk inkább magára a bitcoinra összpontosít.

Az ebben a cikkben tárgyalt témák a következők: nehézségszabályozás, érmeellátási görbe, bitcoin tranzakciós mechanizmus, UTXO, Merkle fái, Hard Fork vs Soft Fork és Block Explorer.
Hogyan készülnek a Bitcoin érmék?
A Bitcoin érméket az úgynevezett "bányászat" folyamat hozza létre. A bányászok kénytelenek megoldani egy összetett matematikai feladványt (Proof-of-Work), mielőtt új blokklánc-tranzakciókat engedélyeznének. Ehelyett Bitcoin érmékkel jutalmazzák őket.
Aki rendelkezik számítógéppel, megfelelő konfigurációval bányász lehet. Amint bányász lesz, érvényesítheti és rögzítheti a tranzakciókat más bányászokkal.
Blokkidő és nehézség a beállításban
Nehéz megjósolni, hogy hány bányász vesz részt. Ha túl kevés van, akkor a rendszer túl lassú lesz, ami rossz felhasználói élményhez vezet. Ha túl sok van, akkor a rendszer túl gyors lesz, ami biztonsági problémákhoz vezet (például könnyen el lehet költeni duplán). Ezért fontos, hogy a rendszer viszonylag állandó tempót tartson fenn, függetlenül a meglévő bányászok számától (más szóval hash teljesítmény).
A Bitcoin egy "nehézségbeállítás" nevű mechanizmust használ a bányászati sebesség állandó, blokkonként körülbelül 10 perces megtartására. A "nehézséget" kéthetente állítják be, figyelembe véve a múlt hash erejét. Ha a hash teljesítmény nem elegendő (azaz az átlagos blokkonkénti idő meghaladja a 10 percet), akkor a nehézség csökken. Ezzel szemben, ha a kimeneti teljesítmény túl nagy (azaz az átlagos blokkenkénti idő meghaladja a 10 percet), akkor a nehézség növekedni fog.
Hogyan állítsuk be a nehézséget?
A Bitcoin protokoll előírja, hogy a bányászok versenyezzenek egy "kriptográfiai rejtvény" (az úgynevezett "work-work") megoldásában, hogy a nyertes javaslatot tegyen az új blokkra, és hozzáadhatja a blokklánchoz.
A "rejtjelezési rejtvényt" úgy oldják meg, hogy a nonce-t úgy állítják be, hogy a blokk hash kisebb legyen, mint a cél hash (értéke kevesebb, mint 256 bit).
A bányászoknak meg kell találniuk egy nonce-t, tetszőleges 32 bites számot, így a blokk kivonata kisebb vagy egyenlő, mint a hálózat által meghatározott cél hash. Ha a kivonata a cél alatt van, akkor keresni és bányászati jutalmat kap. Ha nem, akkor változtassa meg a nonce-t még egyszer, és próbálkozzon újra és újra.
Minél nagyobb a hálózat hash ereje, annál alacsonyabb a cél hash. A kisebb cél hash azt jelenti, hogy a bányászok nehezebben találják meg a megfelelő nonce-t egy kisebb blokk hash létrehozásához, mint a cél hash. (Képzelje el, hogy egy számítógép véletlenszerűen választ 1 és 100 közötti számot, a 10 alatti szám megtalálásának valószínűsége 0,1, de az 50 alatti szám megtalálásának valószínűsége 0,5).
Így történik a "nehézségbeállítás" a bitcoin hálózatban.
Mekkora a hash arány, a bányászati jutalmak és a tranzakciós díjak?
Az előző szakaszban azt látjuk, hogy miért fontos a hash teljesítmény, és hogyan viszonyul a blokkidőhöz és a nehézségekhez. A hash teljesítményt a "hash rate" segítségével lehet mérni, az alábbiak szerint:
Rata Hash
A kivonatolási arány az adott időkeretben végrehajtott kivonatolási műveletek számát jelenti. Ez az érintett hardvertől függően változhat. Például, ha a bányásznak van olyan eszköze, amely képes 30 MHz-es sebességet generálni, akkor másodpercenként 30 millió hash van (a hash állapot-állapot átalakítás - vagy további egyszerűsítés céljából 1 számítás).
Így egy 30 MHz átviteli sebességet produkáló GPU másodpercenként 30 millió számítást végez.
Minél nagyobb a hash arány, annál valószínűbb, hogy a bányász megoldja a blokkot és blokk jutalmat nyer. Annak a valószínűsége, hogy egy bányász megoldja a blokkot, a következő képlet segítségével becsülhető meg:
P = egy blokk megoldásának valószínűsége
Y = a hálózat teljes hash aránya, amely a jelenleg bányászó összes bányász teljes hash arányát képviseli
Lehet, hogy hallott már olyan bányafarmokról, amelyek hatalmas ipari raktárak, tele bányászati berendezésekkel, amelyek egyetlen célja a kriptopénzek bányászata. Több ezer összekapcsolt GPU vagy ASIC (alkalmazás-specifikus integrált áramkör) lehet, amelyek együttesen sokkal nagyobbá teszik a teljes hasítási teljesítményt, mint egyetlen bányászati berendezés. Mindezt úgy tervezték, hogy egy blokk nagyobb valószínűséggel megoldódjon, és a bányász jutalmat nyerjen.
A bányajutalom a rendszer által létrehozott kompenzáció (újonnan létrehozott érmék formájában) a bányászok munkájának kifizetésére, amikor megoldották az új blokk működtetéséhez szükséges rejtvényt.
Jelenleg a bitcoin bányászat jutalma blokkonként 12,5 Bitcoin. A bányászoknak versenyezniük kell egymással a hálózatban, hogy elsőként oldják meg a blokkot és megkapják a jutalmat. Ezért minél nagyobb a kivonatolási arány, annál nagyobb az esély arra, hogy jutalmat kapjanak a bányászatért. A beruházások megtérülésének javítása érdekében a bányászati vállalatoknak és az egyéneknek gyakran elegendő mennyiséget kell befektetniük berendezésekbe és villamos energiába, hogy növeljék a sikeres bányászat esélyeit.
A Bitcoin hálózat teljes hash sebességének drasztikus növekedésével azonban a korlátozott erőforrások miatt szinte lehetetlenné válik egy személy számára, hogy egyedül bányássza a Bitcoin-ot. Ezért a bányászcsoportok lehetővé teszik az egyének számára az erőforrások összegyűjtését, és hozzájárulhatnak kihelyezett bányászatukhoz. Így a bányászcsoportok több erőforrást szerezhetnek egymással versenyezni, és az egyének hash arányuk arányában megoszthatják az előnyöket, segítenek enyhíteni azt a volatilitást, amellyel egyedül bányászatkor szembesülhetnek.
Minden 210 000 blokk felezi a bányászati jutalmat. A Bitcoin 50 BTC, majd 2012-ben 25 BTC jutalommal indult, 2016-ban pedig ismét feleződött, 12,5 BTC-re. 2020-ban a Block jutalma ismét felére csökken, 6,25-re és így tovább, amíg mind a 21 millió BTC-t ki nem aknázzák.
Különböző típusú kriptovalutáknak különböző bányászati jutalmuk és különböző token-indító programjaik vannak. Ezek megtalálhatók a kriptovaluta fehér könyvében.
A blokk jutalmat egy érme alapú tranzakcióban gyűjtik össze, amely a blokk első tranzakciójára utal. A bányászok arra használják, hogy jutalmat gyűjtsenek a blokkért vagy bármilyen további tranzakciós díjat.
Tranzakciós díjak
Mivel a PoW mechanizmuson keresztül működő Bitcoin és más pénznemek bányászatának előnyei fokozatosan csökkenni fognak, a bányászok számára egy másik típusú ösztönzés van arra, hogy tranzakciókat hajtsanak végre. Ezeket az ösztönzőket hálózati díjaknak nevezzük. A PoW konszenzussal összhangban működő pénznemek esetében a felhasználóknak minden tranzakcióért fizetniük kell a hálózati és a bányadíjat. Ez a tranzakciós díj különböző forgalmi viszonyok és különböző devizák szerint változhat. A tranzakciós díj a fel nem használt bejegyzések maradványösszege. Általában bájtonként szatosziban számítják.
A tranzakciós díjak ösztönzik a bányászokat, hogy ellenőrizzék az Ön tranzakcióját. Előfordulhat, hogy nem fizet tranzakciós illetékeket vagy csökkentett díjakat, de ez jelentősen csökkenti annak esélyét, hogy a tranzakció bekerüljön a következő blokkba.
Vannak olyan devizák is, amelyeknél alacsony vagy nincs tranzakciós díj, és általában más konszenzust alkalmaznak (pl. DPoS, PBFT) vagy más technológiákat (pl. DAG), néhány gyakori példa: XRP, EOS és IOTA.
Bitcoin feleződik
A fiat devizákkal ellentétben, amelyek kínálata ingadozik és a központi bankok ellenőrzik, a bitcoin 21 millió érmét állapított meg. Az ok, amiért a bitcoin nem könnyen nyomtatható, az az oka, hogy a szállítási ütemezése előre be van programozva. Egyetlen entitás sem képes egyoldalúan megváltoztatni a bitcoin kínálatát anélkül, hogy megszerezné a decentralizált entitás domináns részét.
A felezés miatt a blokkjutalom minden 210 000 kitermelt blokkért felére csökken. Mivel minden blokk körülbelül 10 percet vesz igénybe, a felezésnek körülbelül 1458 napon vagy 4 éven belül kell megtörténnie, ezt az értéket számos kriptográfiai irodalom említi.
A felezés már kétszer megtörtént. Az első eseményre 2012.11.28-án került sor, amikor a bányajutalom 50 BTC-ről 25 BTC-re csökkent, a második pedig 2016. 07. 09-re, amikor a bányász jutalom 25 BTC-ről 12.5-re csökkent. BTC. A következő félévre várhatóan 2020.05.12 körül kerül sor, amikor a bányászati jutalom 12.5 BTC-ről 6.25 BTC-re csökken.
A magánkulcsok elvesztése vagy a hardver károsodása miatt egyes bitcoin-érmék végleg elvesznek és nem állíthatók helyre, ami a valós kínálatot sokkal alacsonyabbá teszi, mint az elméleti érték. Satoshi Nakamoto, a Bitcoin feltalálójának jelentős mennyiségű Bitcoin-érméje érintetlen maradt, miután néhány évvel ezelőtt bányászták.
Hogyan működnek a Bitcoin tranzakciók?
Bemutatjuk a Bitcoin tranzakciós eljárásokat a következő forgatókönyv szerint:
Bob, egy online kereskedő úgy dönt, hogy elfogadja a bitcoin fizetésként.
Alice, a vevő, bitcoin érmékkel rendelkezik, és árut szeretne vásárolni Bobtól.
A pénztárcák olyan fájlok, amelyek hozzáférést biztosítanak több bitcoin címhez.
A cím betűk és számok sora, például 1HULMwZEJEPech43BKJL1ybLCWrfDpN. Minden címnek megvan a saját Bitcoin-érméje.
Képzelje el, hogy a címe bankszámla, de ezek kicsit másképp működnek. A Bitcoin felhasználók annyi címet hozhatnak létre, amennyit csak akarnak.
A Bitcoin kliens szoftver bitcoin címeket generál a felhasználók számára.
Amikor Bob új címet hoz létre, akkor valóban létrehoz egy "kriptográfiai kulcspárot", amely egy magánkulcsból (amelyet csak te tudsz) és egy nyilvános (bárki által ismert) kulcsból áll. Ha privát kulccsal aláírja az üzenetet, akkor a megfelelő nyilvános kulccsal ellenőrizhető. Bob új címe egyedi nyilvános kulcs, és a hozzá tartozó magánkulcs tárcájában tárolódik. A nyilvános kulcs segítségével bárki ellenőrizheti, hogy a privát kulccsal aláírt üzenet érvényes-e.