美文网首页
第十四课-简单支付验证|《树哥解读以太坊》笔记

第十四课-简单支付验证|《树哥解读以太坊》笔记

作者: 吉祥在成长 | 来源:发表于2019-02-28 21:05 被阅读0次

新生大学2018年10月份推出了区块链技术系列课程之《树哥解读以太坊》,由树哥主讲。本简书文集记录我的学习笔记。


我们平时使用微信支付时,怎么算是支付成功了呢?是对方手机上有余额变化吗?万一他的网速不好呢。其实支付成功与否,要看腾讯是否记录了这笔转账。而在区块链上,如何算是交易成功了呢?要看这笔交易是否在区块链上能查到。区块链上有这笔交易,代表支付成功,否则就是不成功。

一、简单支付验证的由来

判断一笔交易是否成功,就是到区块链上查找这笔交易。在一个全节点中就可以做到查询,因为全节点保存了整条区块链的所有数据。

整条区块链的数据其实是非常大的,比特币约500M,以太坊约1T。在服务器中存储这么多数据是没有问题的,但在手机等设备中就不行了,因为这占用了太多的存储空间。

想在手机等设备中验证交易,需要用到简单支付验证,(Simplified Payment Verification),这是不存储大量数据就能进行支付验证的方法,支持简单支付验证的节点称作 SPV节点

二、简单支付验证的好处

1、节省存储空间。只需要存储全节点的千分之一。这样,手机、iPad等都可以成为 SPV 节点。

2、降低终端处理压力,因为需要处理的数据少了。

3、实现终端多样化。笔记本、手机、iPad都可以成为SPV节点了,让更多的参与者进入到区块链中。

三、如果实现简单支付验证

要实现简单支付验证,就要做到只保存少量的数据,需要查询某笔交易时,再到全节点中去查询。

所要保存的数据要有三个特点:1、数据量足够小;2、能完全代表这一条区块链;3、能通过这个数据定位到具体区块。区块头能满足这三个特点:区块头数据量足够小,区块头能完全代表这一条区块链,能通过区块头定位到具体区块。

===以下不是太懂、待加强学习===
简单支付验证是怎么实现的呢?需要用到根哈希值和布隆过滤器。根哈希值的作用是得到通过树根到达存储交易的数字指纹的叶子节点,布隆过滤器的作用是过滤无关交易。

具体的验证过程如图:


SPV支付的验证过程

小结:各种节点的出现是为了满足区块链不同应用的场景需求,也就是说成为节点的终端越来越多样化,可以逐渐完善区块链的生态。区块头汇聚了区块链实现各种功能的重要信息。SPV节点就是充分利用了这一点,只保存区块链的区块头信息而实现“简单支付验证”的功能。


|
|
|
|
|
|
|
|
|
|
|

课程大纲

吉祥
2019年02月28日21:08:16

相关文章

网友评论

      本文标题:第十四课-简单支付验证|《树哥解读以太坊》笔记

      本文链接:https://www.haomeiwen.com/subject/nfgkuqtx.html