04 / 691BLK·0

Genesis Block

Block 0

Блок на высоте 0, с которого начинается история основной сети Bitcoin.

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, Эмиссионная награда за блок.

DOC · 001Bitcoin Core v29.0 — chain parametersПервичный источник ↗DOC · 002Bitcoin Core v29.0 — genesis validation exceptionПервичный источник ↗DOC · 003Bitcoin Core — getblockhash RPCПервичный источник ↗DOC · 004Bitcoin Core — getblock RPCПервичный источник ↗DOC · 005Bitcoin Developer Reference — Block ChainПервичный источник ↗
Сначала источники · Не является инвестиционной рекомендацией