建议和反馈

请填写你的反馈内容

UTXO:其实从来没有人拥有过比特币

2019-09-05 ·2599次阅读 ·读完需要8分钟

在广告界呢,百达翡丽有一句非常经典的广告语,这句话这么说的:“你从未真正拥有一只百达翡丽的手表,你只是替你的后代暂时保管而已!”简单而有效的传达了产品的传世和收藏价值。而这句广告语其实用在比特币上更为合适:“我们从未真正过拥有比特币,我们只是在替别人暂时保管而已!”

“不就是突出比特币的资产属性嘛!买一个给孩子当嫁妆!了啦了啦!”

还真不是!这句话的真正意思其实是在反映比特币的交易模型!

UTXO:Unspent Transaction Output

翻译为:未花费交易输出,这和我们平常所接触到的记账模式有本质的区别,一般来说,我们所能接触到的银行也好,支付宝也罢,其交易的核心,是基于账户的数据系统Account based,这个很好理解,比如:小王爸爸转账给了小王100块,然后小王又给小八转账50块,那么,在基于账户的数据系统中,小王的账户和小八的账户上面会怎么记载呢?

1111.jpg

这个账户模型显然并不关心小王的100块是从哪里来的,而是关心小王账户的当前余额,这个账户中记录了资金的入账和花费,最终得到一个余额,这个余额就是你的钱!当我需要转账或者支付100块时,银行/支付宝会验证我账户余额里是否有100块,然后进行交易。

而在UTXO的结构中,并不是基于账户中资金的加减得到一个可用余额,而是在记录交易,记录每一笔交易的资金来源和资金的去向!

那在上面案例中,UTXO会首先记录小王是怎么得到100块的:

22222.jpg

当小王转给小八50块的时候,小王发起了交易:

3333.jpg

这里需要注意,在小王发起的交易里,小王必须给自己找零,因为在UTXO体系里交易来源和交易输出必须是相等的,而且前面也说了,交易是必须有来源的,当小王需要使用剩下的50块时,这个来源就是“我自己给我自己的”!

这个时候,你可能要问了,那小八不是也得到了50块吗,他的账户里是不是就有50块的余额了?看,又掉进惯性思维的误区里了吧!

再次强调,UTXO是在记录交易,也就是说,小八的50块并不是“余额50元”,而是“交易:小王给自己50元,小王给小八50元

4444.jpg

而当小八要去花费50块的时候,调用的交易来源,就是这一笔交易中的“小王给小八50元”。所以在很多解释UTXO的文章中,我们常常听到的那句话:

每一笔交易的来源都是上一笔交易的输出。

所以在比特币系统中,其实你看到的账户余额、可用资金,代表的是你可以使用的资产,这笔资产依然在上一笔交易中,而只有你的秘钥可以调用它!

所以,银行转账时确定的是账户中的余额,而在比特币转账时,确定的是UTXO未花费交易输出是否合法,既交易来源。

我们再总结一下:

银行记录的是账户里的余额,比特币记录的是交易、是UTXO。


在比特币的整个设计中,UTXO绝对称得上神操作,这个设计的最大亮点其实并不在于可追溯,不可伪造或者匿名性啊什么的,而是这种结构大大减轻了数据库的体积并拥有了并发处理能力。虽然在我们上面的陈述中,大家会觉得很复杂,但实际上,UTXO操作起来却是很轻量级的。账户数据库会因为无用账户的增加而加速膨胀,而UTXO模型记录的只是交易,意味着更高的处理速度和同步速度。

并发是什么意思呢,比如在账户模型中,我要分别给小王和小八50块,只能排队进行,总要有个先后,因为系统需要验证余额是否足够,而在UTXO中,只要我有可用的UTXO,理论上就能无限并发……

6666.jpg

所以回到开篇那句话,没有任何人拥有过比特币!你所拥有的是“未花费的交易输出”。

换一句话来说,你拥有1个比特币,并不等于在你的地址账户里有个“1”,更不是你拥有某串代表“1”的代码,而是在整个比特币系统中,能够被你交易的未花费交易输出是:“1”,而这个1单位的比特币,其实还在上一笔交易里!

那顺带一说,能够保障你使用这笔交易输出的,就是从私钥到公钥再到地址的非对称加密体系,这个我们下次再说!

CoinBI Media!认知传递价值!我们下期再见!


评论(0)问答(0)
请先登录或注册

请先登陆或注册

相关推荐

区块链钱包app开发,区块链理财钱包,中心化钱包

区块链钱包app开发,区块链理财钱包,中心化钱包区块链钱包app开发,区块链理财钱包,中心化钱包,详情咨询开发可以咨询13823153121   Q:1992891126区块链资产多币种钱包......
ruixll · 2020-02-15
136阅读 · 0赞赏 · 0问答

区块链钱包app开发,区块链理财钱包,中心化钱包

区块链钱包app开发,区块链理财钱包,中心化钱包区块链钱包app开发,区块链理财钱包,中心化钱包,详情咨询开发可以咨询13823153121   Q:1992891126区块链资产多币种钱包......
ruixll · 2020-02-15
139阅读 · 0赞赏 · 0问答

区块链支付结算系统开发,USDT入金结算系统开发

区块链支付结算系统开发,USDT入金结算系统开发需要开发区块链支付结算系统,USDT入金系统的联系我13823153121   Q:19928911226USDT承兑跑分系统最直接应用即是构......
ruixll · 2020-02-15
150阅读 · 0赞赏 · 0问答

量化交易机器人,自动化交易软件,做市机器人

量化交易机器人,自动化交易软件,做市机器人量化刷单系统开发可以找我,成熟的自动化交易软件,3-5天快速对接好,全天24小时,自动化交易,砸盘,拉盘,做市效果明显,操作监督,有需要联系我13823153......
ruixll · 2020-02-14
160阅读 · 0赞赏 · 0问答

中心化钱包开发,虚拟币钱包系统,理财钱包

虚拟币交易系统搭建,区块链交易所开发区块链数字资产交易所开发,从目前行情来看,区块链数字资产的行情还是可以的,那么近期也还是有很多朋友是想要做交易所运营,却找不到好的技术开发交易系统,这个时候您可以联......
ruixll · 2020-02-14
189阅读 · 0赞赏 · 0问答

虚拟币交易系统搭建,区块链交易所开发

虚拟币交易系统搭建,区块链交易所开发区块链数字资产交易所开发,从目前行情来看,区块链数字资产的行情还是可以的,那么近期也还是有很多朋友是想要做交易所运营,却找不到好的技术开发交易系统,这个时候您可以联......
ruixll · 2020-02-14
219阅读 · 0赞赏 · 0问答

1294

LK币

81

粉丝

27

笔记

感谢"CoinBI Media"

这篇精彩的笔记,目前已经帮助

  • 0
  • 2
  • 5
  • 9
  • 9
喜欢0
链客社群 加入

微博进入

商务合作>

广告投放>

公司名称:北京链客行科技有限公司

联系方式:010-67707199

ICP备案号:京ICP备18032136号

Copyright:链客区块链技术问答社区 版权所有

感谢您的提问,问题被社区永久收入以便新人查看。一定要记得采纳最佳答案哦!加油!

感谢您的善举,每一次解答会成为新人的灯塔,回答被采纳后获得20算力和相应的LK币奖励

您将赞赏给对方2LK币的奖励哦!感谢您的赞赏!

您将赞赏给对方2LK币的奖励哦!感谢您的赞赏!