Конечно, это является частью той же сделки. Давайте адаптировать пример из
Смарт недвижимости нить:
Определенияпредыдущая-txout 0: "smartcoin", Стандарт отправки в pubkeyhash, nvalue == 1
b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c, 0
предыдущая txout 1: нормальная сделка, стандарт отправки в pubkeyhash, nvalue == 100000
7d865e959b2466918c9863afca942d0fb89d7c9ac0c99bafc3749504ded97730,0
smartcoin продавец
Публичные для чтобы быть отправлена smartcoin (СК)
Публичных назначения для smartcoin платежа (SK)
smartcoin требуется цена (P): 100000
smartcoin покупатель
Публичный для чтобы быть потрачен платеж (PK)
Публичных назначения для smartcoin (БК)
Раунд 1, smartcoin покупатель и продавец договариваются о сделкеПредположительно smartcoin продавец <как-то> объявление о продаже smartcoin b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c, 0 в цене P.
Предположительно, покупатель знает, как создать стандартный 2 txin, 2 txout сделки формат, который ожидает продавец.
Покупатель и продавец передачи этой основной информации выходит за рамки данной дискуссии.
Раунд 2, smartcoin покупатель создает неполную TX, посылает продавцуtxin 0 (smartcoin передача)
prevout (b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c, 0)
scriptSig = нулевой длины (нуль)
txin 1 (передача платежей)
prevout (7d865e959b2466918c9863afca942d0fb89d7c9ac0c99bafc3749504ded97730, 0)
scriptSig = <ПК-подпись, полученные>
, SIGHASH_ALL
txout 0
nValue = 1
scriptPubKey = OP_DUP OP_HASH160 хэш OP_EQUALVERIFY OP_CHECKSIG
txout 1
nValue = 100000
scriptPubKey = OP_DUP OP_HASH160 хэш OP_EQUALVERIFY OP_CHECKSIG
Круглый 3, smartcoin продавец подписывает TX и вещает завершена TX в сети
txin 0 (smartcoin передача)
prevout (b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c, 0)
scriptSig = , SIGHASH_ALL
txin 1 (передача платежей)
prevout (7d865e959b2466918c9863afca942d0fb89d7c9ac0c99bafc3749504ded97730, 0)
scriptSig = <ПК-подпись, полученные> , SIGHASH_ALL
txout 0
nValue = 1
scriptPubKey = OP_DUP OP_HASH160 хэш OP_EQUALVERIFY OP_CHECKSIG
txout 1
nValue = 100000
scriptPubKey = OP_DUP OP_HASH160 хэш OP_EQUALVERIFY OP_CHECKSIG
обсуждение
Потенциальные нападения, ни в результате чего прямые потери стоимости:
- Покупатель может заглохнуть или отказать послать незавершенной транзакции (тратить время продавца и DoS'ing проблема, если продавец не позволяет другим покупателям от попыток покупки параллельно)
- Продавец может заглохнуть или отказать послать завершенную транзакцию (тратить время покупателя и оставив судьбу своих монет неизвестно)