主页 > imtoken钱包苹果 > 解决比特币全节点同步太慢的问题,让比特币被称为真正的比特币

解决比特币全节点同步太慢的问题,让比特币被称为真正的比特币

imtoken钱包苹果 2023-02-24 07:50:03

比特币自问世以来就被诟病浪费电力资源,但其强大的算力是一个必要的过程,很难找到更好的方式来替代它。

随着它出现的时间越来越长,越来越多的人在其底层技术区块链上参与交易,分布式账本的内容迅速扩展。一个区块的 1 MB 存储容量限制了交易过程和交易速度。

例如比特币主链当前的区块数据高达200多G,对于普通用户来说太大了。所以下载整个账本变得很头疼。你不能下载整个分类帐而只找到与你相关的部分吗?换句话说,找到一个过滤器,把无用的东西排除在外。

矿工为什么能见证比特币交易_比特币程序化交易_比特币交易慢

于是SPV机制出现了。

1. SPV 机制

如何解决比特币全节点同步慢

SPV全称“Simplified Payment Verification”,通常翻译为简单的支付验证。目的是验证交易是否存在,但无法验证交易的合法性。这需要两个步骤。第一步是确认交易支付是否经过验证,第二步是计算获得了多少确认。

比特币交易慢_矿工为什么能见证比特币交易_比特币程序化交易

中本聪在他的论文中提到了这个概念:在不运行全节点的情况下仍然可以验证交易,用户只需将所有区块头数据保存在最长的链上。

简单来说:如果小黑给大白转账一个比特币,大白怎么知道交易已经完成?在去中心化系统中不可能找到见证人。

按照传统方法:大白需要下载所有的区块链账本,然后找到小黑的账户,先看看之前有没有这样的比特币,是否已经转入大白记录了。仅仅迈出第一步,就会让大白的存储容量爆发式增长。每个比特币的区块大小为1 MB,而区块头只有80 KB,因此只需下载区块头即可节省大量空间。

比特币程序化交易_比特币交易慢_矿工为什么能见证比特币交易

什么是区块头和区块体?

区块头比作一个人的头部,里面存储了区块的头部信息,比如哈希值、时间戳等;而区块体类似于一个人的全身,存储着这个区域的区块的详细数据,比如具体的交易信息。区块头包含在区块体中。

也就是说,一个区块头虽然有哈希值比特币交易慢,但是在下载区块头后,大白仍然无法知道该交易记录在哪个区块中。这时候需要带上交易ID才能找到全节点检查检查是否存在以及在哪个块中。

2.SPV支付验证流程,如果矿工和小黑联手欺骗大白怎么办?

矿工为什么能见证比特币交易_比特币程序化交易_比特币交易慢

这就是SPV机制派上用场的地方。

如果矿工说小黑转身,他没有转身。那么为了说谎,他必须伪造更多的交易,这样这些交易才能得到与自己的区块头相同的哈希值。但是由于哈希的技术特性,改变后的数据很难获得与原始数据相同的哈希值。

简而言之,SPV的整个交易流程是这样的:

比特币交易慢_比特币程序化交易_矿工为什么能见证比特币交易

第一步是确认交易支付是否已经过验证。首先计算待验证支付的交易哈希值,将区块头从区块链网络保存到本地,然后从区块链获取待验证支付对应的默克尔树哈希认证路径。比较得到的hash值是否和自己的一致。如果一致,则证明付款真实有效。

第二步是验证获得的确认数量。根据区块头的位置,确定支付收到的确认数。完成这两步后,交易支付验证就完成了。

3.总结

SPV机制不仅节省了存储空间,还减少了P2P网络带宽的浪费,使普通用户无需下载完整数据即可进行操作比特币交易慢,也为查账带来了极大的便利。但是,由于 SPV 没有完整的区块数据,因此无法验证交易不存在。这种情况很容易导致双花,随机链接节点也可能被网络恶意攻击。返回搜狐,查看更多