Итак, синхронизирует ли узел 2009 года всю цепочку биткойнов, и влияет ли на это временное разделение 2013 года?
Теоретически это возможно, поскольку явные правила консенсуса не изменились. Однако на практике он не сможет синхронизироваться без некоторых специальных модификаций.
Во-первых, сетевая версия настолько старая, что ни одно современное нодовое ПО не будет принимать от нее подключения. Кроме того, формат сетевых сообщений изменился по сравнению с первым выпуском, так что теперь он содержит контрольную сумму сообщения. В первой версии биткойн-клиента не было контрольной суммы для сообщений. Это различие в сетевом протоколе приведет к сообщениям, которые не имеют смысла ни для одного из узлов в соединении.
Помимо изменения сетевого сообщения, исходный биткойн-клиент не сможет найти узлы для подключения. Он смог подключиться только с помощью обнаружения узлов IRC, которое с тех пор было отключено и удалено. Поэтому вам нужно будет специально создать файл peers.dat, чтобы он мог найти однорангового узла для подключения.
Наконец, исходный биткойн-клиент не сможет синхронизироваться после форка 2013 года, если не будет увеличено количество блокировок BDB. При использовании настроек по умолчанию у него закончатся блокировки, когда он достигнет примерно этого времени, и, следовательно, не удастся синхронизировать.
Если вы можете избежать всех этих проблем (например, используя специальное программное обеспечение узла для синхронизации) и увеличить количество блокировок BDB, то исходный биткойн-клиент должен быть в состоянии синхронизировать текущую цепочку блоков, хотя и очень медленно и, возможно, никогда не сможет синхронизироваться с наконечником. На текущей вершине блокчейна проверка блока, вероятно, займет больше времени, чем поиск нового блока.
Несколько месяцев назад я модифицировал версию Bitcoin Core, чтобы она была совместима с Bitcoin 0.1.0, а затем попытался ее синхронизировать. Код для этого здесь . Я остановил этот эксперимент через несколько дней, когда удалось синхронизировать только около 25 000 блоков.
(да/нет/вроде... см. лучший ответ Эндрю Чоу)
Да, синхронизируется. Хотя это будет очень медленно, так как блокчейн в наши дни довольно большой, а код тогда не был так хорошо оптимизирован.
Событие 2013 не будет иметь никакого эффекта, так как оно будет синхронизировано с самой длинной (наиболее рабочей) цепочкой.
Питер Уилле
Эндрю Чоу