首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

比特币白皮书解读10

作者按

关于这一段,内容不多,我看了5种翻译,核心基本一致,它的意思我觉得就是字面上的意思,虽然各版本翻译出来都很拗口。只能尝试着把个人有限的理解来表达出来,如果理解有误,我觉得也正常。

白皮书:9,组合和分割价值(combining and spliting value

Combining)

9.组合和分割价值(Combining and Spliting Value)

9.组合和分割价值(Combining and Spliting Value)

虽然可以独立的处理货币,但是在一次转账中为每一分钱都成为一个分离的交易是不明智的(就是说coin不是由元单位组合起来的)。为了允许价值能够分割和组合,交易包含了多个输入和输出。正常情况下会有一个从前面一大笔交易而来的一个单笔输入或者包括很多更小总数的多笔输入,然后最后会有两笔输出,一个是付款,另一个是找零,不管有多少,全部都返回购买者。

应该被注意到那个全部分配(fan-out),这里一个交易依托几个交易,然后这里交易又依托于更多的。这不是个问题。这里是没有必要去提取交易历史的完整独立副本。

唐诗解读

区块链的交易并不是通常意义上的一手交钱一手交货的交易,而是转账。如果每一笔转账都需要构造一笔交易数据会比较笨拙,比特币跟现实货币是不一样的,没有单位换算(元单位)比如中国的货币总是有一个最小单位作为”元“单位(比如人民币:1分),只有差额,价值的组合和分割完全可以用加减法来实现。最重要的一点是,明确一个交易(Tx)包含多个Input和多个Output。一个转账交易是由前面的多个交易进行验证,inputs就是之前的交易的outputs。

需要明确:这里所有的挖矿和转账,都属于交易的范畴,但是不是所有的交易,意思都一样,需要结合上下文去理解。对所有的inputs进行验证,就可得到该交易的付款者的余额是否大于要转移的数目。inputs关联的所有Tx就是之前的”历史信息“,节点可检索自己的区块获得结果。每个区块的第一个交易(激励交易)就相当与只有Input而没有output。

比特币的交易被设计为可以纳入多个输入和输出,由于比特币系统不记户头帐,只记录交易信息,所以每个人的持有货币数量都是由交易反推的。同理,当进行一笔交易时,你需要援引一条甚至多条交易记录来凑出你的电子货币,所以由多条输入(Input)。比如我曾经转账出去的0.1个btc可能是由20条或者50条交易记录凑成的。具体条数应该可以看代码。

从生成到在网络中传播,再到通过工作量证明、整个网络节点验证,最终记录到区块链,就是区块链交易的整个生命周期。整个区块链交易流程如下图所示:

“一个是付款,另一个是找零,不管有多少,全部都返回购买者。”这段我个人不是太理解,有些观点是说交易每次都把钱花光,可以参照铸币厂的工作流程,但是我想了一下还得不得其法。所以,留个问题吧,讨论一下,请高手多多指教。

封面题图:遵循COO协议。来自colorhub.me

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180813G00YU600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券