今天问
今日活跃
浏览14次
0
我只是浏览了一些块,我看到了一个408.1011 BTC被分成3个输出地址的事务。18.5468、230.6512和158.9030731。
然后我看到230.6512使用事务id并将其发送到2地址。我知道是230.6512,只是因为输出是9.2293和221.420555。
我的问题是,如何才能发现与230.6512关联的地址已使用,而其他2个地址未使用?
我之所以这么问是因为如果你不知道哪个私钥签署了这个交易,那么你怎么知道一个私钥还有多少余额要花呢?
编辑:刚刚发现vout看起来就是我要找的。它似乎指向所使用的输出的索引。
交易
分享
改进这个问题
跟随
8小时前编辑
8小时前问
特雷弗·伍德
16177枚青铜徽章
添加评论
1答案
2.
你的问题是基于一种误解。比特币协议不适用于地址或余额。
交易有输出和输入。每一项产出都创造了一枚“硬币”,具有一定的价值,并且具有一定的消费条件。每一次投入都会花费一枚硬币——全部——通过明确引用该硬币,并证明它是被允许花费的。
这些消费条件通常表示为人类消费的地址,但“地址余额”只是所有与该地址相匹配的、尚未消费的硬币的价值总和。
那么钱包和协议如何确定交易是否有效呢?不是通过查看其余额,而是通过检查输入中引用的硬币是否尚未使用,交易是否包含有效的签名,以及输入值的总和是否至少与创建的输出值相同。
block explorer网站显示的内容是欺骗。它们试图将事务表示为减少某些地址的余额,增加其他地址的余额。事实并非如此。事实上,交易只是融化并重新铸造硬币。
分享
改进这个答案
跟随
7小时前编辑
7小时前回答的
彼得·维耶
71.9k88金徽章149149银徽章25225铜徽章
添加评论
你的回答