Это не совсем неразумно softfork. Тип уже является стандартом & действительно, и есть выгоды, имея 100% сделки с использованием того же шаблона, перемещает большую часть данных prunable TxIns, и делает TxIn скрипты самоидентифицирующими.
Это помогло бы с "Конечное сжатие blockchain" Такие вещи.
На данный момент набор UTXO должен быть сохранен как карты ТХ-аут -> скрипт.
С обязательным P2SH, вы можете сохранить хэш для каждого выхода и проделанных (20 байт). На самом деле, вы можете просто сохранить часть хэша (8-10 байт).
Хотя, вероятно, не стоит усилий, и будет гораздо больше стоит, если бы мы создавали новый blockchain с этим правилом насильственному с самого начала. Там еще 20 Гб blockchain, которые не имеют это изменение, поэтому более сложные правила должны оставаться в коде для обработки произвольной, без самоидентифицирующей TxIns для первых 20 Гб.
Это фиксированная стоимость. Вы можете обойти это для старых сделок в любом случае.
Определение нового "расширенный" блок и "расширенный" сделка.
Для расширенной сделки, вы добавите все входные скрипты без P2SH.
Расширен блок содержит операции расширены для покрытия без P2SH операций. Если это все P2SH транзакции, то блок такой же, как и сейчас.
Для обеспечения максимальной безопасности прилагается информация также должна будет включать пути к корню Merkle.
Однако, так как клиент уже будет отслеживать множество UTXO (как хэши), не требуется.
Переключение может быть
После того, как блок N, все выходы транзакций должны быть либо OP_RETURN <40 байт>, P2SH или P2SH-v2 (без ограничения 500 байт)
Унаследованные выходы блоков <= N-прежнему работает в соответствии с нормальным.
После того, как блок N + 25000 (6 месяцев), проводя их требует, чтобы обеспечить транжира расширенный формат транзакции.