Genesis Block je pevně určený počáteční blok hlavní sítě Bitcoinu, označované jako mainnet. Jeho hlavička nese datum 3. ledna 2009. Obsahuje jednu transakci vytvářející výstup 50 BTC, který má zvláštní zacházení a nelze jej utratit.
V sobotu 3. ledna 2009 přinesl londýnský deník The Times zprávu o britském ministru financí Alistairu Darlingovi a hrozbě druhé záchrany bank. Tentýž den podle časového údaje v hlavičce vznikl první blok Bitcoinu. Satoshi Nakamoto vložil titulek do jeho jediné transakce. Novinová věta tak zůstala součástí dat, která si může kdokoli přečíst. V síti ještě nebyl trh, směnárna ani dav těžařů. Byl tu především výchozí bod řetězce: blok, na který mohly navázat další. Titulek jej spojil s konkrétním dnem a zasadil nový peněžní experiment do doby finanční krize. [1] [6]
Genesis nemá předchozí blok, a proto je odpovídající pole hlavičky nulové. Bitcoin Core sestavuje jeho data z pevně daných parametrů a ověřuje očekávaný hash, digitální otisk dat bloku. Uzel tedy nezačíná libovolným blokem, který mu někdo pošle. Blok ve výšce 1 už odkazuje na hash Genesis Blocku; jiný začátek by znamenal jinou historii. Whitepaper popsal řetězec chráněný pomocí Proof of Work. Teprve vytvořením konkrétního bloku s platným důkazem práce se ale návrh proměnil v záznam, na který mohl navázat běžící software. [1] [8]
Hlavička obsahuje čas 1231006505, tedy 3. ledna 2009 v 18:15:05 UTC. Je to údaj vložený tvůrcem bloku, nikoli nezávislé měření okamžiku jeho vzniku. Další vodítko leží ve vstupu coinbase transakce: „The Times 03/Jan/2009 Chancellor on brink of second bailout for banks“. Coinbase neutrácí předchozí výstup; vytváří odměnu za blok a její zvláštní vstup může nést i další data. Právě tam Satoshi titulek zapsal. Ten podporuje závěr, že blok nevznikl před zveřejněním zprávy. Sám však nepotvrzuje přesnou sekundu těžby ani skutečnou totožnost autora. [1] [5] [6]
Zpráva odkazuje na debatu o další pomoci britským bankám po finančním otřesu roku 2008. Číst ji jako kritiku záchranných balíčků dává smysl, zvlášť vedle whitepaperu popisujícího platby bez finančního prostředníka. Satoshi ale nezanechal jednoznačné veřejné vysvětlení, proč zvolil právě tuto větu. Jistý je vložený text; politický vzkaz zůstává výkladem. Titulek zároveň ukotvuje blok v konkrétním vydání novin, tedy v události mimo autorův počítač. Oba významy se mohou doplňovat. Protokol z nich nicméně neodvozuje politická pravidla a historický záznam je třeba odlišit od pozdější interpretace. [1] [8]
Každý další blok obsahuje hash předchozího. Genesis Block tuto vazbu nemá, proto je jeho začátek výslovně zakotvený v softwaru. Bitcoin Core jej sestavuje mimo jiné z uvedeného titulku, veřejného klíče, času 1231006505, nonce 2083236893, obtížnosti 1 a odměny 50 BTC. Výsledný hash musí odpovídat známé hodnotě. Satoshi na začátku ovládal jedinou známou implementaci a patrně i jediný aktivní uzel. Pravidla ale umožňovala, aby je později každý Full Node ověřoval sám. Genesis Block tedy nebyl hotovou decentralizovanou ekonomikou; byl jejím technickým výchozím bodem. Nonce je číslo v hlavičce, které těžař může měnit při hledání platného bloku; obtížnost vyjadřuje náročnost této úlohy. [1] [6]
Sada UTXO je evidence dosud neutracených výstupů transakcí: částek spolu s podmínkami, za nichž je lze utratit. Při připojení genesis Bitcoin Core přeskočí připojení jeho transakcí, takže původní výstup nevstoupí do sady UTXO. Není to běžné čekání na dozrání těžební odměny a další potvrzení jej neodemknou. Ani znalost odpovídajícího soukromého klíče nevytvoří chybějící utratitelný výstup. [2]
Průzkumník může u adresy spojované s genesis ukazovat pozdější příchozí platby. Ty nejsou původním výstupem bloku 0: mají vlastní transakční identifikátory a podmínky utracení. Zvláštní vynechání genesis se na ně automaticky nevztahuje. Zůstatek adresy proto nelze zaměňovat s utratitelností původních 50 BTC. [2] [5]
Následující blok ve výšce 1 má časový údaj 9. ledna 2009 v 02:54:25 UTC. Mezi daty prvních dvou bloků tak leží několikadenní mezera, výrazně delší než obvyklý desetiminutový cíl. Z časových údajů samotných nepoznáme, proč vznikla; tvrzení o Satoshiho záměrech by bylo domněnkou. Satoshi oznámil vydání verze 0.1 v e-mailové diskusní skupině Cryptography Mailing List už 8. ledna 2009 v 19:27:40 UTC. Popsal peer-to-peer systém, připojil odkaz ke stažení a návod ke spuštění. Bitcoin tím dostal nejen první záznam, ale i program, který si mohli spustit další lidé a sami ověřovat pravidla. [7] [1] [9]
Na vlastním uzlu hlavní sítě vrátí getblockhash 0 identifikátor začínající 000000000019d668. Příkaz getblock s tímto hashem a úrovní podrobnosti 2 zobrazí blok i rozebranou transakci. Údaje lze porovnat s parametry Bitcoin Core; samotný snímek obrazovky průzkumníku nenahrazuje kontrolu dat. [3] [4]
Testovací sítě a regtest mají vlastní parametry a odlišné genesis hashe. Před porovnáním proto ověřte síť, nejen výšku 0. Shoda prvního bloku potvrzuje společný začátek, ne platnost všech dalších bloků, bezpečnost peněženky nebo to, kdo ovládá klíče. Genesis Block určuje výchozí bod. Navazující bloky musí vyhovět pravidlům softwaru, který si provozovatel uzlu zvolil. Satoshi mohl vytvořit první blok, ale nemohl tím ostatní přimět, aby jeho program používali nebo automaticky přijímali vše, co na první blok navazuje. [1] [8]
Pro nejúplnější obraz čtěte toto heslo společně s Bitcoin, Satoshi Nakamoto, Bitcoin Whitepaper, Block Subsidy, Timechain / Blockchain. Opačným směrem na něj odkazují také Bitcoin, Satoshi Nakamoto, Timechain / Blockchain, Block Subsidy.