Reddit обсуждение: https://np.reddit.com/r/btc/comments/5yvc58/tom_harding_weve_worked_with_jgarzik_to_update
Код:
== Аннотация ==
Заменить статический 1M размер блока жесткого ограничения с жесткого лимита, установленного coinbase голосования, проведенного по тому же графику, как трудности переориентацией.
== Мотивация ==
Шахтеры непосредственно ощущать последствия, как положительные, так и отрицательные, любого максимального изменения размера блока, наложенного своими коллегами. Большие блоки обеспечивают больший рост в экосистеме по-цепи, в то время как меньшие блоки уменьшают потребности в ресурсах для всей сети. Шахтеры также выступать в качестве эффективного посредника для остальной части экосистемы, так как они выплачиваются в лексемах, собранные для блоков, которые они создают.
Простая детерминированная система задаются, в результате чего 75% горнодобывающая промышленности квалифицированных могут активировать изменения максимального размера блока каждые 2016 блоков. Каждое изменение ограничивается увеличением 5% по сравнению с предыдущим размером блока жесткого ограничения или уменьшением подобной величины. Среди принимающих узлов, не будет никаких разногласий относительно эволюции максимального размера блока.
Система совместима с эмерджентным консенсусом, но в то время как в соответствии с этой системой шахтер может выбрать, чтобы принять любой размер блок, шахтер следующего BIP100 соблюдает правила на квалифицированном 75%, а также ограничить изменение правила 5%. Значения Избыточное блок-сигнализируемые возникающим консенсусных блоков рассматриваются в расчете BIP100 блока размера жесткого предела, а BIP100 рассчитывается максимальный размер блока сигнализируется как значение чрезмерного блока на благо всех наблюдателей.
== Спецификация ==
=== Динамический Максимальный размер блока ===
# Начальное значение <код>hardLimitкод> является 1000000 байт, сохраняя существующую систему.
# Изменение <код>hardLimitкод> осуществляется путем кодирования предлагаемое значение, голосование, в coinbase scriptSig блока, и обработки голоса, содержащиеся в предыдущем периоде перенацеливания.<бр /><бр />
## голосование кодирования
### голосование представляется в виде положительного значения мегабайта, используя шаблон BIP100<бр /><бр /><код>/ BIP100 / В [0-9] + /код><бр /><бр />Пример: <код>/ BIP100 / В8 /код> это голосование за 8000000 байта <код>hardLimitкод>,<бр /><бр />
### Если высота блок кодируется в начале coinbase scriptSig, согласно BIP34, она игнорируется.
### Только первый матч BIP100 шаблон обрабатывается "Максимальный размер блока перерасчет" ниже.
### Допустимое значение мегабайта представлено последовательными базовые десять цифр.
### Если ни один шаблон BIP100 не соответствует, первый сопоставление с образцом эмерджентным консенсуса <код>/ ЕВ [0-9] + /код>, Если таковой имеется, принимаются в качестве мегабайта голосования.<бр /><бр />
## Максимальный размер блока перерасчет
### <код>новый hardLimitкод> рассчитываются после каждого периода корректировки трудности 2016 блоков, и применяется к следующим блокам 2016 года.
### Отсутствующие / недействительные голоса подсчитываются как голоса для <код>ток hardLimitкод>,
### Голос предыдущих 2016 блоков сортируются по мегабайту голосования.
### Повышение <код>hardLimitкод><бр /><бр />
#### <код>поднять значениекод> определяются как голосование 1512th самого высокого блока, преобразуется в байты.
#### Если результирующий <код>поднять значениекод> больше, чем (<код>ток hardLimitкод> * 1,05) округляется до ближайшего байта, устанавливается в это значение.
#### Если результирующий <код>поднять значениекод> больше, чем <код>ток hardLimitкод>, то <код>поднять значениекод> становится <код>новый hardLimitкод> и перерасчет будет завершен.<бр /><бр />
### Уменьшение <код>hardlimitкод><бр /><бр />
#### <код>Меньшее значениекод> определяется как голосование по 1512th низкого блока, преобразуется в байтах.
#### Если результирующий <код>Меньшее значениекод> меньше чем (<код>ток hardLimitкод> / 1,05) округлены до ближайшего байта, он устанавливается в это значение.
#### Если результирующий <код>Меньшее значениекод> меньше чем <код>ток hardLimitкод>, то <код>Меньшее значениекод> становится <код>новый hardLimitкод> и перерасчет будет завершен.<бр /><бр />
### В противном случае, <код>новый hardLimitкод> остается такой же, как <код>ток hardLimitкод>,
=== Подпись хэширования операции Ограничения ===
# Лимит подписи операции хэширования за блок масштабируется (<код>hardLimitкод> округлено до ближайшего мегабайта) / 50.
# Максимальный размер сделки сериализованная 1000000 байт налагается.
=== Публикация <код>hardLimitкод>===
# В пользу освободившихся консенсуса узлов, <код>hardLimitкод> опубликован. Пример: полная строка coinbase может прочитать <бр /><бр /><код>/BIP100/B8/EB2.123456/код><бр /><бр /> что указывает на голосование за 8М максимальный размер блока, и вынужденное <код>hardLimitкод> из 2.123456 мегабайта для блока, содержащего coinbase строки.
== Развертывание ==
Этот BIP предполагается развернуть и активировал, как высоты блока 449568 пути реализации узлов на Bitcoin mainnet. Это не имеет никакого эффекта, пока не наблюдается величина рейза отличается от оГО, который требует, по меньшей мере 1512 2016 блоков, чтобы голосовать по-разному от оГО.
== Обратная совместимость ==
Первый блок больше, чем 1M создаст раздел сети, в качестве узлов с фиксированным жестким лимитом 1M отклонить этот блок.
Заменить статический 1M размер блока жесткого ограничения с жесткого лимита, установленного coinbase голосования, проведенного по тому же графику, как трудности переориентацией.
== Мотивация ==
Шахтеры непосредственно ощущать последствия, как положительные, так и отрицательные, любого максимального изменения размера блока, наложенного своими коллегами. Большие блоки обеспечивают больший рост в экосистеме по-цепи, в то время как меньшие блоки уменьшают потребности в ресурсах для всей сети. Шахтеры также выступать в качестве эффективного посредника для остальной части экосистемы, так как они выплачиваются в лексемах, собранные для блоков, которые они создают.
Простая детерминированная система задаются, в результате чего 75% горнодобывающая промышленности квалифицированных могут активировать изменения максимального размера блока каждые 2016 блоков. Каждое изменение ограничивается увеличением 5% по сравнению с предыдущим размером блока жесткого ограничения или уменьшением подобной величины. Среди принимающих узлов, не будет никаких разногласий относительно эволюции максимального размера блока.
Система совместима с эмерджентным консенсусом, но в то время как в соответствии с этой системой шахтер может выбрать, чтобы принять любой размер блок, шахтер следующего BIP100 соблюдает правила на квалифицированном 75%, а также ограничить изменение правила 5%. Значения Избыточное блок-сигнализируемые возникающим консенсусных блоков рассматриваются в расчете BIP100 блока размера жесткого предела, а BIP100 рассчитывается максимальный размер блока сигнализируется как значение чрезмерного блока на благо всех наблюдателей.
== Спецификация ==
=== Динамический Максимальный размер блока ===
# Начальное значение <код>hardLimitкод> является 1000000 байт, сохраняя существующую систему.
# Изменение <код>hardLimitкод> осуществляется путем кодирования предлагаемое значение, голосование, в coinbase scriptSig блока, и обработки голоса, содержащиеся в предыдущем периоде перенацеливания.<бр /><бр />
## голосование кодирования
### голосование представляется в виде положительного значения мегабайта, используя шаблон BIP100<бр /><бр /><код>/ BIP100 / В [0-9] + /код><бр /><бр />Пример: <код>/ BIP100 / В8 /код> это голосование за 8000000 байта <код>hardLimitкод>,<бр /><бр />
### Если высота блок кодируется в начале coinbase scriptSig, согласно BIP34, она игнорируется.
### Только первый матч BIP100 шаблон обрабатывается "Максимальный размер блока перерасчет" ниже.
### Допустимое значение мегабайта представлено последовательными базовые десять цифр.
### Если ни один шаблон BIP100 не соответствует, первый сопоставление с образцом эмерджентным консенсуса <код>/ ЕВ [0-9] + /код>, Если таковой имеется, принимаются в качестве мегабайта голосования.<бр /><бр />
## Максимальный размер блока перерасчет
### <код>новый hardLimitкод> рассчитываются после каждого периода корректировки трудности 2016 блоков, и применяется к следующим блокам 2016 года.
### Отсутствующие / недействительные голоса подсчитываются как голоса для <код>ток hardLimitкод>,
### Голос предыдущих 2016 блоков сортируются по мегабайту голосования.
### Повышение <код>hardLimitкод><бр /><бр />
#### <код>поднять значениекод> определяются как голосование 1512th самого высокого блока, преобразуется в байты.
#### Если результирующий <код>поднять значениекод> больше, чем (<код>ток hardLimitкод> * 1,05) округляется до ближайшего байта, устанавливается в это значение.
#### Если результирующий <код>поднять значениекод> больше, чем <код>ток hardLimitкод>, то <код>поднять значениекод> становится <код>новый hardLimitкод> и перерасчет будет завершен.<бр /><бр />
### Уменьшение <код>hardlimitкод><бр /><бр />
#### <код>Меньшее значениекод> определяется как голосование по 1512th низкого блока, преобразуется в байтах.
#### Если результирующий <код>Меньшее значениекод> меньше чем (<код>ток hardLimitкод> / 1,05) округлены до ближайшего байта, он устанавливается в это значение.
#### Если результирующий <код>Меньшее значениекод> меньше чем <код>ток hardLimitкод>, то <код>Меньшее значениекод> становится <код>новый hardLimitкод> и перерасчет будет завершен.<бр /><бр />
### В противном случае, <код>новый hardLimitкод> остается такой же, как <код>ток hardLimitкод>,
=== Подпись хэширования операции Ограничения ===
# Лимит подписи операции хэширования за блок масштабируется (<код>hardLimitкод> округлено до ближайшего мегабайта) / 50.
# Максимальный размер сделки сериализованная 1000000 байт налагается.
=== Публикация <код>hardLimitкод>===
# В пользу освободившихся консенсуса узлов, <код>hardLimitкод> опубликован. Пример: полная строка coinbase может прочитать <бр /><бр /><код>/BIP100/B8/EB2.123456/код><бр /><бр /> что указывает на голосование за 8М максимальный размер блока, и вынужденное <код>hardLimitкод> из 2.123456 мегабайта для блока, содержащего coinbase строки.
== Развертывание ==
Этот BIP предполагается развернуть и активировал, как высоты блока 449568 пути реализации узлов на Bitcoin mainnet. Это не имеет никакого эффекта, пока не наблюдается величина рейза отличается от оГО, который требует, по меньшей мере 1512 2016 блоков, чтобы голосовать по-разному от оГО.
== Обратная совместимость ==
Первый блок больше, чем 1M создаст раздел сети, в качестве узлов с фиксированным жестким лимитом 1M отклонить этот блок.