风险提示:理性看待区块链,提高风险意识!

比特币双重支付应该怎么解决?

2个回答

杨帆John5星评价

2020-09-27 14:28:17

比特币双重支付应该怎么解决?

1、 所有的交易全网公开:历史交易全网公开,那么每个账号里面有多少比特币,并不是由一个数据来表示的,而是根据历史交易得出来的。而这个历史交易链是经过全网公认的,才能保证不被造假。

2、 需要有时间戳,所有交易有先后顺序:所有交易,,要按照先后顺序,给其加上时间戳,前面一笔交易成功后,整个交易链被公认后,下一笔交易是基于上一笔交易来生成的,整个交易就是一个交易链,这样才能保证不被双重支付。

3、 需要投入计算资源对交易进行确认:交易的确认,需要投入计算资源来确认,比特币引入了工作量证明,矿工投入计算力来打包交易,若需修改某个区块上的交易,需重新计算自区块以来所有区块,参考比特币网络目前的算力,这在数学上几乎是不可能的。

整个比特币系统中的每一个节点都获知每一笔交易的发生,且它们是有时间顺序的,有一个公认的交易序列。那么,只有当大部分节点都认同这笔交易是首次出现时,这笔交易才能发生。唯一可能造成这个系统崩溃的是,有一个人拥有超过整个系统51%的计算能力,那么他就能随意更改每笔交易记录,这就是所谓的“51%攻击”,但这几乎是无法实现的。

依米荷燕子2星评价

2020-09-17 15:30:53

为了解决这个问题,中本采用了共享公共账簿的概念,我们现在称之为区块链技术。这种想法也已经存在了一段时间,但直到2009年才与比特币本身一起实现。

这个过程相当简单——比特币持有者进行的交易与其他人进行的其他交易是分组的。这个组称为块,为了确保商人将得到他的钱,以及不会发生双重支付,需要验证分组在块中的交易。

一个选择这样做是有一个能够集中的第三方进行验证,但如果是这样的话,他们将会是一个责任,任何攻击,设法把服务将对整个加密货币体系产生大影响。

比特币选择采用的另一种选择是,让一大群个人单独参与解决区块(验证交易),以换取回报。这样,即使他们中的一些人成为黑客攻击的受害者,剩下的人仍然可以完成这个过程。在交易被验证之后,它们被存储到区块链中,区块链作为一种确认,即商家确实得到了支付,并且客户的代币确实被花掉了。