码迷,mamicode.com
首页 > 其他好文 > 详细

如何防止double spending

时间:2020-03-01 12:14:01      阅读:72      评论:0      收藏:0      [点我收藏+]

标签:如何   余额   span   多少   比特币   分布式   交易   hash   防止   

一、 比特币的来源

比特币一共有两种来源,一是作为挖矿者得到的coinbase铸币交易;

二是别人转账给你;

二、 比特币的交易

首先需要明确的是,比特币虽然说是分布式账本系统,但是系统中并没有维护账户信息,也就是说,我们是无法直接查到现在我的账户有多少钱的。

但是,我们可以通过计算得到,类似于加减法,从最开始得到币的交易开始进行加减法得到现在币的剩余量。

那这里币的来源怎么得到呢?

这里仍然是Hash指针。

区块链系统中其实是有两种hash指针,一个是区块和区块之间的;

另一种这里提到的用于溯源的hash指针。这个指针该顺着区块链向上溯源,得到所有收钱和花钱的交易,最终判断是否有足够的余额支付这笔交易。

从以上讨论看出,这个溯源的过程是非常消耗算力的。

三、 UTXO

区块链作为Transaction-based ledger,并没有账户的概念。

因此为了解决上述溯源的问题,比特币系统在全节点里维护了一个UTXO的系统,unspent Transaction output,没有被花掉的交易输出。这样溯源的计算量将会大大下降。

如何防止double spending

标签:如何   余额   span   多少   比特币   分布式   交易   hash   防止   

原文地址:https://www.cnblogs.com/siyuan-Jin/p/12388862.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!