1) набор входов, которые идентифицируют предыдущие выходы транзакций требовать вместе со сценарием, который должен объединяться с этими выходными транзакции скриптами для запуска через обработку сценария, а «истинного» результата, указывающий, что выход правомерно заявлен эта сделкой.
2) набор выходов, которые указуют Биткойн сумм на выплату от суммы всех входов, каждый выход заявляемого тот, кто может написать транзакцию, что имена выходных данных в своих входах и выдает правильный сценарий.
Вопросов:
а. Может "scriptSig" (Который выглядит просто исходный код номенклатура для фрагмента входного скрипта) содержат любые и все же опкоды в качестве "scriptPubKey"? Кроме того, почему имена для ввода сценария и сегментов сценария вывода столь странного (кажется, это было бы понятнее просто называть отрезок входного скрипте «сегментом сценария ввода» и сегментом выходного сценария «Сегментировать сценарий вывода», комбинацию два в результате полного сценария, чтобы оценить, чтобы подтвердить претензии на вход, чтобы на выходе).
б. Поскольку сценарии могут быть произвольной сложности, как может Bitcoin клиент сказать, когда транзакция имеет выходы, что конечный пользователь может успешно претендовать? Похоже, что единственный способ будет для клиента, чтобы выяснить, что нужно сценарий ввода, чтобы быть объединено с выходным скрипт для получения истинно, и это может быть трудной задачей решить. Например, что если сегмент вывода сценария выхода операции, на которую ссылается вход выглядит следующим образом:
OP_1ADD OP_DUP OP_HASH160
Теперь клиент должен признать, что он должен попробовать сегмент входного скрипта вроде этого:
<сиг> <Публичный - 1>
для того, чтобы проверить сделку, чтобы увидеть, если она производится вывод о том, что пользователь может требовать.
Альтернативный сценарий ввода будет выглядеть так:
<сиг> <Публичных> OP_1SUB
Это самый простой пример, который я могу думать; Есть, конечно, очень сложные примеры, которые могли бы быть придуманные. Я не знаю, как клиенты могли надеяться, во всех случаях, выяснить, что должны быть предоставлены во входном скрипте, чтобы проверить, чтобы увидеть, если это приводит к успешной претензии на выходе опкоды и данные.
Конечно, большинство людей не собираются посылать странные сделки, которые производят выходы, которые предназначены «получатель» не знает, как создавать материалы для. Но сейчас единственный способ, которым клиент может показать ваш баланс является выявление операций, которые имеют выходы, которые он признает, что он может писать входы для; и я подозреваю, что это просто выглядит несколько очень простых шаблонов вывод сценария, что он распознает, и может легко оценить, чтобы увидеть, если они производят результаты, которые должны отображаться пользователю как часть их бумажник баланса.
Возможно, вынос из этого:
1) Если вы собираетесь совершить сделку с "нестандартный" выходные сценарии, вы должны договориться заранее с предполагаемым получателем, что входной скрипт, который утверждает, что выход будет выглядеть так, что обе стороны находятся в согласии, и
2) Использование "стандарт" вывода скриптов, которые прямо сейчас, кажется, чтобы быть простой скрипт:
OP_DUP OP_HASH160
при отправке партий, для которых не было сделано никакого явное соглашение о выходном сценарии, так что простые клиенты могут найти их и сделать их известными (в качестве дополнения к бумажнику баланса) к пользователю.