Существует нет ничего в коде Bitcoin, который останавливает шахтеров по производству блоков с блоком версии больше чем 2. (2 текущая версия блока)
В настоящее время это не вызывает каких-либо проблем, но если версия блока модернизирована в какой-то момент, и уже есть версия 3 блоков в цепи, то будущие клиенты будут иметь специальные правила для разбора их.
Реализация изменений отклонять блоков с версией больше, чем 2 позволит вилы должны быть созданы таким образом, что это не вариант, если большинство узлов не модернизировали.
Я предлагаю следующие изменения кода:
Реализовать правила таким образом, что из какого-то блока далеко в будущем будут применяться следующие правила:
- Даже блок номер версия представляет собой блоки, которые имеют изменения в протокол
- Нечетный блок номер версии сигнализировать, что изменение протокола должны произойти и что узлы должны обновить свое программное обеспечение. Не блоки не отличаются от тех, которые появились раньше.
- Даже блок версия справедлива, если либо 950 последних 1000 блоков имеют версию, один меньше или любой блок с той же версией был принят в цепь и никаких блоков с версией еще два не были приняты в блоке цепь.
- Нечетные версии блоков действительны, если последний блок имеет версию, один меньше или любой блок с той же версией был принят в цепь и никаких блоков с версией еще одного не были приняты в блоке цепь.
Что это значит?
Это означает, что обновление для протокола Bitcoin может произойти только гладко с 95% соглашениями шахтера.
Пользователи предупреждаются, когда изменение протокола должны произойти, и их программное обеспечение не имеет необходимые обновления. Это должно дать пользователям о извещении недели.
Устаревшее программное обеспечение, которое не обновляется после изменения протокола знает, что он не имеет необходимые обновления для проверки blockchain так не сможет корректно.
Я приветствую ваше мнение по этому предложению, пожалуйста, задавайте вопросы, если вы хотите, чтобы я уточнить что-нибудь.