BITCOIN
Bitcoin 2009-ben jelent meg Ingyenes, nyílt forráskódú kliens Nincs központi bank, P2P rendszer ztett_lett_a_bitcoin_osszeomlott_az_arfolyam html ztett_lett_a_bitcoin_osszeomlott_az_arfolyam html
Bitcoin cím 33 alfanumerikus karakterből álló, minden esetben az 1-es számmal kezdődő azonosító bármikor bármennyi új cím Pl. 175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W Alapja: ECDSA nyilvános kulcs SHA256, RIPEMD160 hash függvények lenyomata
Tranzakciók
Bitcoinok: digtális aláírások láncolata Duplaköltés elleni védelem: – Nyilvános tranzakciólista (kliens telepítése után letölthető) – Időbélyegző szerver – munkabizonyíték
Időbélyegző szerver Nyilvánosságra hozza egy sor tételt magában foglaló blokk hashét (bizonyítja, hogy az adatok ekkor már léteztek) Mindegyik időbélyeg hash-e tartalmazza az előző időbélyeget is, láncot alkotva
Munkabizonyíték-rendszer Az osztott, P2P-alapú időbélyegző szerver kialakításához Ötlet: egy olyan érték előkeresése, amelynek a (például SHA-256-tal) előállított hashe egy bizonyos számú nullás bittel kezdődik. (küszöbérték) Az ehhez szükséges munkavégzés átlagos mennyisége a szükséges nullás bitek számával arányosan, exponenciálisan növelhető. Nonce elhelyezése az egyes blokkokban A támadónak nemcsak a lánc egy elemét kell módosítania, hanem gyorsan az azt követő blokkokat is ki kell számolnia úgy, hogy az ő lánca legyen érvényes.
Blokklánc Tx: tranzakciók legelső elem ( ) Minden blokk tartalmazza az őt megelőző hash-ét hash-ek garantálják az időbeli sorrendet a leghosszabb lánc az érvényes Fejléc: szoftver verziószáma, előző blokk hash-e, Merkle gyökér, időbélyeg, nonce, küszöbszám Törzs: tranzakciók
Lépések Az új tranzakciókat bejelentik az összes csomópontnak. Minden csomópont blokkba gyűjti az új tranzakciókat. Mindegyik csomópont nekilát a blokkjához tartozó, adott nehézségű munkabizonyíték (nonce) előkereséséhez. Amint egy csomópont megtalál egy munkabizonyítékot, azonnal szétküldi a blokkját az összes többinek. Azok az új blokkot csak akkor fogadják el, ha az abban foglalt valamennyi tranzakció érvényes, és nem tartalmaz többszöri elköltéseket. A blokk elfogadását a csomópontok azzal jelzik, hogy átveszik az elfogadott blokk hashét, és azzal – mint előző hashsel – kezdenek dolgozni a lánc következő blokkján.
Merkle-fa Sok tranzakció helyett egy gyökérhash tárolása.
Osztás és egyesítés Több bemenet (pl. nagyobb öszegű kifizetés) Legfeljebb két kimenet: kifizetett összeg és visszajáró
Bányászat A bányász egy új blokk generálásáért 50 BTC-t kap blokk generálásakor az első tranzakció az érmebázis-tranzakció, a címzett az adott bányász a Merkle gyökér minden bányásznál más mindenki más hash értékkel számol Két különböző érvényes blokk esetén a lánc elágazik, mindig a hosszabbon folyik a munka, de az ág tárolódik Az árva blokkok (rövid lánc) tranzakciói ismét feldolgozásra kerülnek