Как создать снапшот блокчейна для хардфорка?

Я делал исходные форки (альткоины) и понимаю, как они работают. Но я немного застрял в том, как активируются вилки? Мне нужно знать, как создаются моментальные снимки блокчейна и как кошельки узнают, как распределять первоначальные предложения форка? Если бы кто-нибудь мог указать мне на конкретную фиксацию и/или PR Bitcoin Cash или Gold, где эта логика присутствует, я был бы очень признателен.

Ответы (1)

Хардфорки — это просто расширения блокчейна, в которых новые блоки следуют другим правилам консенсуса, несовместимым с исходным блокчейном. В настоящем хардфорке нет фактического моментального снимка. Программное обеспечение хард-форка просто синхронизируется до определенного момента с исходной цепочкой блоков, и после этого момента применяется новое правило консенсуса, которое конфликтует с исходной цепочкой и, таким образом, вызывает форк цепочки блоков. Это просто регулируется ifоператором в коде проверки блока.

Форк просто активируется майнером, который добывает блок после определенного блока или момента времени, который следует правилам консенсуса, отличным от исходной цепочки.

Например, в случае с Bitcoin Cash их программное обеспечение требовало, чтобы первый блок, созданный после 1 августа в 12:00 UTC, был больше 1 МБ, а также соответствовал правилам консенсуса Bitcoin Cash (больший размер блока, новый алгоритм хэширования подписи и т. д.). . Это кодируется как ifоператор в логике проверки блока, который проверяет время блока перед выполнением различных проверок правил консенсуса. Фактический снимок не делается; их блокчейн до тех пор, пока этот разветвляющий блок не будет точно идентичен блоку Биткойн и не сможет быть синхронизирован с узлом Биткойн.

There is no actual snapshot that is taken; their blockchain up until that forking block is exactly identical to Bitcoin's and can be synced off a Bitcoin node.- Я понимаю, значит, вы имеете в виду, что эта синхронизация не обязательно должна быть частью кода форка как такового. Они могут просто синхронизировать его до своей разветвленной высоты, используя биткойн, а затем запустить свой собственный модифицированный демон?
Да. Но в их модифицированном демоне также есть код, который обрабатывает правила предварительной разветвления, чтобы он тоже мог синхронизироваться.