Genesis Block — фиксированный начальный блок основной сети Bitcoin. Его заголовок датирован 3 января 2009 года. Он содержит одну транзакцию, создающую выход 50 BTC с особой обработкой: потратить его невозможно.
У genesis нет предыдущего блока: соответствующее поле заголовка нулевое. Bitcoin Core формирует его данные из параметров сети и проверяет ожидаемый хеш. Узлы не начинают с произвольного блока, присланного другим участником. Блок высоты 1 ссылается на хеш genesis; изменение начала означало бы другую историю. [Bitcoin Core v29.0 — chain parameters]
Время заголовка — 1231006505, то есть 3 января 2009 года, 18:15:05 UTC. Значение задал создатель блока, а не независимый регистратор завершения майнинга. Газетный текст помогает установить исторический контекст, но сам не доказывает точного часа или реальной личности автора. [Bitcoin Core v29.0 — chain parameters] [Bitcoin Developer Reference — Block Chain]
Вход единственной транзакции содержит английский текст заголовка The Times об угрозе второго спасения банков. Сообщение принадлежит данным транзакции, а не является примечанием обозревателя блоков. Прочтение его как критики спасения банков — интерпретация выбора текста; протокол не выводит из него политических правил. [Bitcoin Core v29.0 — chain parameters]
При подключении genesis Bitcoin Core пропускает подключение его транзакций, поэтому исходный выход не попадает в набор UTXO. Это не обычное ожидание созревания награды майнера, и новые подтверждения его не разблокируют. Даже знание соответствующего закрытого ключа не создаст отсутствующий выход, доступный для расходования. [Bitcoin Core v29.0 — genesis validation exception]
Обозреватель может показывать более поздние поступления на адрес, связанный с genesis. Они не являются исходным выходом блока 0: у них свои идентификаторы транзакций и условия расходования. Особое исключение genesis не распространяется на них автоматически. Баланс адреса не следует путать с возможностью потратить исходные 50 BTC. [Bitcoin Core v29.0 — genesis validation exception] [Bitcoin Developer Reference — Block Chain]
На собственном узле основной сети getblockhash 0 возвращает идентификатор, начинающийся с 000000000019d668. getblock с этим хешем и уровнем подробности 2 показывает блок и декодированную транзакцию. Данные можно сравнить с параметрами Bitcoin Core; один снимок экрана обозревателя не заменяет проверки данных. [Bitcoin Core — getblockhash RPC] [Bitcoin Core — getblock RPC]
Тестовые сети и regtest имеют собственные параметры и другие хеши genesis. Перед сравнением следует проверить сеть, а не только высоту 0. Одинаковый genesis устанавливает общее начало, но сам не доказывает корректности всех последующих блоков, безопасности кошелька или нынешнего контроля над ключами. [Bitcoin Core v29.0 — chain parameters]
Для полной картины прочитайте эту статью вместе с Bitcoin, Satoshi Nakamoto, Bitcoin Whitepaper, Эмиссионная награда за блок, Timechain / Blockchain. На эту статью также ссылаются Bitcoin, Satoshi Nakamoto, Timechain / Blockchain, Эмиссионная награда за блок.