Raw-Transaction

是否可以在一筆交易中將輸入緊縮到特定輸出?

  • March 25, 2014

為方便起見,假設我需要支付這些款項(假設不存在 tx 費用):

  • 地址A:1 BTC
  • 地址 B:2 BTC
  • 地址 C:3 比特幣

我的餘額是 6 BTC,其中包含以下可花費的輸入:

  • Tx1:0.5 比特幣
  • Tx2:0.5 比特幣
  • Tx3:0.5 比特幣
  • Tx4:4.5 比特幣

現在很容易使用創建原始 tx,createrawtransaction並且由於輸入的總和與輸出的總和匹配(我們假設沒有任何 tx 費用)一切都會按預期工作。

但是如果我必須(出於商業目的)為每個輸出使用特定的輸入怎麼辦?

一個例子是:

  • 地址 A 將被支付輸入:Tx1 和 Tx3
  • 地址 B 和地址 C 將由輸入支付:Tx2 和 Tx4

這些將是批量支付,我計劃為每個原始 tx 發送 20-30 個邏輯支付批次,因此我想避免將原始 tx 分解為小的、原子的(按邏輯支付)交易。

原始交易甚至可能嗎?

在比特幣中,不可能在一筆交易中將特定輸入與特定輸出相關聯。

這意味著您需要創建多個事務來實現您想要做的事情。

這篇wiki 文章和這個論壇文章解釋瞭如何為支出特定輸出創建原始交易。

在比特幣交易中,來自輸入的硬幣被一起添加到一個池中,然後發送到輸出。沒有特定硬幣的概念。只是硬幣的總數。

引用自:https://bitcoin.stackexchange.com/questions/23899