Это резюме рекомендаций, которые модифицируют протокол Bitcoin. Пожалуйста, обсудите:
Предложение One: Шаблоны, группы транзакций, и Пылающие Сделки
Шаблоны: Уже включено в Bitcoin клиента, описанные изменения делают его более мощным и полезным для базовых групп на
1. Шаблон должен содержит три параметра: а. Уникальный идентификатор б. Человек читаемое Имя с. Кодифицированные подтверждение того, что можно строго проверить, если сделка действительна или нет для этого конкретного шаблона. 2. Необязательно, шаблон может включать в себя кодифицированный способ модификации транзакции. (Обсуждение?) - Не хорошая идея 3. Каждая сделка должна по-прежнему соответствовать существующим правилам насильственных сетей. Такие, как нет, двойных расходов. 4. Каждая нестандартная сделка должна требовать какой сделки она является в том числе идентификатора шаблона, что он принадлежит, а затем проверить, чтобы соответствовать шаблону он претендует принадлежать. будет предполагаться 5. Сделка без шаблона ID выполнить только с «стандартной операцией» шаблоном. 6. Ни одна сделка не должна требовать, чтобы принадлежать более чем одному шаблону.
Группы по сделке: Группа, которая содержит все операции, которые проверяются по тому же шаблону.
1. Проверенные операции должны быть размещены в пределах сгруппированы вместе в каждом блоке. 2. Краткое изложение каждой сделки, принятой в блоке должны быть включены в особую группу. Резюме должны содержать информацию о ведьме группы принадлежит каждой сделке. 3. Каждая группа должна быть хэшируются отдельно. 4. Хэш каждой группы должны быть включены в Merkle дерева блока. 5. Сеть p2p должна позволять клиентам загружать либо весь блок или только блок и сводную группу. 6. Генераторы должны проверить весь блок на наличие ошибок, прежде чем принять блок.
Запись транзакций: Новый вид операции, которая отправляет монеты, содержащиеся в нуль, и содержит норму о том, что монеты выпустили в обращение. Эта сделка является продолжением сборов сделки.
1. Жжение Сделка должна содержать дополнительную специальную «из», который определяет: а. Скорость (на блок) выпуска монет в обращение. б. Общее количество монет, которые будут выпущены. с. Специальный адрес, который определяется как «нуль» 2. Эта сделка может содержать обычные операционные издержки, как и любой другой сделки. 3. Первый блок после блока, содержащего эту сделку может претендовать на первую часть монет, выпущенных. 4. Монеты выпущенные могут быть востребованы в любой момент после или на блоке, что они освобождены от. 5. Когда утверждают, монеты, генератор должен процитировать блок, который содержит жгучую транзакцию в блоке. - Не нужно
Нет шаблона на основе транзакции перезаписи пожалуйста. Было бы чрезвычайно расширить поверхность атаки для подвигов.
Минимизация поверхности атаки для подвигов имеет жизненно важное значение.
Что такое новые функциональные возможности, которые вы хотите ввести, которые не могут быть реализованы с использованием подходящего не-lobotomised сценарий?
"1.c. Кодифицированные подтверждение того, что можно строго проверить, если сделка действительна или нет для этого конкретного шаблона."
Будет ли это быть систематизированы расширенным языком сценариев, или жестко закодированы логики в клиенте? Я думаю, что это должно быть языком сценариев, в противном случае это будет слишком трудно получить согласие добавлять новые шаблоны. Нам нужно будет создавать расширение сценариев, чтобы позволить широкий спектр новых приложений. Для BitDNS мы должны были бы возможность оглянуться назад в блок цепи и проверить, если данное имя было зарегистрировано ранее.
"3. Каждая сделка должна по-прежнему соответствовать существующим правилам насильственных сетей. Такие, как нет, двойных расходов."
С видами расширений сценариев я предвижу, мы могли бы на самом деле заменить все эти неявные, жестко закодированные правила Bitcoin с явными скриптовых тестов. Такой же сценарий, который можно было бы проверить, что новое имя BitDNS не было зарегистрировано ранее, могут быть использованы для проверки того, что транзакция Bitcoin не была дважды израсходуете.
Там могут быть некоторые приложения шаблона, где правила двойной расходы не имеют смысла. Некоторые из предложений BitDNS не делают истинные сделки Bitcoin на всех, они контрейлерных дополнительные данные поверх фиктивной сделки Bitcoin, где вы просто платите сами. Было бы неплохо, чтобы удалить эту ненужную часть.
С этой точки зрения, основная логика Bitcoin бы проверить, что блоки имели необходимые трудности, были должным образом отформатированы, и что их скрипты возвращают истинные. Все остальное будет сделано конкретными приложениями слоев.
"1.c. Кодифицированные подтверждение того, что можно строго проверить, если сделка действительна или нет для этого конкретного шаблона."
Будет ли это быть систематизированы расширенным языком сценариев, или жестко закодированы логики в клиенте? Я думаю, что это должно быть языком сценариев, в противном случае это будет слишком трудно получить согласие добавлять новые шаблоны. Нам нужно будет создавать расширение сценариев, чтобы позволить широкий спектр новых приложений. Для BitDNS мы должны были бы возможность оглянуться назад в блок цепи и проверить, если данное имя было зарегистрировано ранее.
Я думаю, что язык сценариев будет достаточно, однако он должен быть полностью блок испытания.
"3. Каждая сделка должна по-прежнему соответствовать существующим правилам насильственных сетей. Такие, как нет, двойных расходов."
С этой точки зрения, основная логика Bitcoin бы проверить, что блоки имели необходимые трудности, были должным образом отформатированы, и что их скрипты возвращают истинные. Все остальное будет сделано конкретными приложениями слоев.
Каждая сделка по-прежнему нуждается в транзакции Фесс, двойной расходы важно, чтобы проверить на фундаментальном уровне.