Я ищу построить сделку многопартийной.
Вот сценарий:
- У меня есть набор N адресов, назовем его
- У меня есть еще один набор N адресов, назовем его B
Я хотел бы построить сделку так, что:
- Каждый адрес в A входов, по крайней мере X BTC (любой дополнительный даются как плата ОЙ)
- Каждый адрес в B принимает в качестве выходного X BTC
- Он действует только тогда, когда каждый адрес в A подписывает сделку
Это, как я думаю, что это должно быть сделано:
Сделка:
(Для каждого адреса в I A)
Входные данные:
Предыдущая ТХ: <стандартное ТХ с выходом >= Ь к I>
Индекс: <соответствующий показатель по сравнению с предыдущим ТМ>
scriptSig: <подпись от I> <открытый ключ I> SIGHASH_ALL
(Для каждого адреса в J B)
Вывод:
Значение: X BTC
scriptPubKey: OP_DUP OP_HASH160 <Хэш открытого ключа Джея> OP_EQUALVERIFY OP_CHECKSIG
Является ли это на правильном пути?
Теперь я понимаю, что SIGHASH_ALL требуется подписанный хэш всех транзакций, бар входного scriptSigs. Я правильно думать, что это означает, что каждый я в А может подписать сделку, в свою очередь, без риска сделки становится действительным до тех пор пока все входы подписаны?