古典区块链的实现

 主页   资讯   文章   代码   电子书 

支持轻量客户端

在上一章中,逐步的编写了一个基本的区块链程序,这个程序可以处理区块链上的所有事务, 包括创建区块、验证区块和发起交易,在网络视图中,我们称运行这样的程序的网络节点为全量节点, 与其对应的是只存储了少量数据的轻量节点,而在轻量节点上运行的便是受限的轻量客户端。

由于资源的限制,不是所有的设备都可以运行完整的全量节点,例如在手机、平板等只有受限资源的智能设备上, 通常是无法存储区块链记录的大量数据,而轻量客户端仅仅需要下载区块头信息, 而不用下载包含在每个区块中的交易信息。 由此产生的不含交易信息的区块链,大小会远远小于完整的区块链,这样便适合在受限环境上执行。 鉴于轻量客户端并不知道网络上所有交易的完整信息,其验证交易时所使用的方法略有不同, 这个方法需依赖对等的全节点“按需"提供区块链中相关部分的局部视图。

本章内容便顺着实现轻量客户端的思路,分别讲了用于比特币的非对称加密算法中的椭圆曲线算法, 用。。。。。。。