世界超级计算机排名2015 【紫冬声音】区块链技术综述:区块链技术发展现状与展望(6)

电脑杂谈  发布时间:2018-02-22 00:55:11  来源:网络整理

2018年qs世界大学排名_世界超级计算机排名2015_最新2018世界大学排名

图 4 比特币非对称加密机制

以比特币系统为例,其非对称加密机制如图 4 所示:

比特币系统一般通过调用操作系统底层的随机数来生成 256 位随机数作为私钥。比特币私钥的总量可达 2256,极难通过遍历全部私钥空间来获得存有比特币的私钥,因而是密码学安全的。为便于识别,256 位二进制形式的比特币私钥将通过 SHA256 哈希算法和 Base58 转换,形成 50 个字符长度的易识别和书写的私钥提供给用户;

比特币的公钥是由私钥首先经过 Secp256k1 椭圆曲线算法生成 65 字节长度的随机数。该公钥可用于产生比特币交易时使用的地址,其生成过程为首先将公钥进行 SHA256 和 RIPEMD160 双哈希运算并生成20字节长度的摘要结果(即 hash160 结果),再经过 SHA256 哈希算法和 Base58 转换形成 33 字符长度的比特币地址 [19]。公钥生成过程是不可逆的,即不能通过公钥反推出私钥。

比特币的公钥和私钥通常保存于比特币钱包文件,其中私钥最为重要。丢失私钥就意味着丢失了对应地址的全部比特币资产。现有的比特币和区块链系统中,根据实际应用需求已经衍生出多私钥加密技术,以满足多重签名等更为灵活和复杂的场景。

2.2 网络层

网络层封装了区块链系统的组网方式、消息传播协议和数据验证机制等要素。结合实际应用需求,通过设计特定的传播协议和数据验证机制,可使得区块链系统中每一个节点都能参与区块数据的校验和记账过程,仅当区块数据通过全网大部分节点验证后,才能记入区块链。

组网方式

区块链系统的节点一般具有分布式、自治性、开放可自由进出等特性,因而一般采用对等式网络(Peer-to-Peer Network,P2P 网络)来组织散布全球的参与数据验证和记账的节点。P2P 网络中的每个节点均地位对等且以扁平式拓扑结构相互连通和交互,不存在任何中心化的特殊节点和层级结构,每个节点均会承担网络路由、验证区块数据、传播区块数据、发现新节点等功能。

按照节点存储数据量的不同,可以分为全节点和轻量级节点。

前者保存有从创世区块到当前最新区块为止的完整区块链数据,并通过实时参与区块数据的校验和记账来动态更新主链。全节点的优势在于不依赖任何其他节点而能够独立地实现任意区块数据的校验、查询和更新,劣势则是维护全节点的空间成本较高。以比特币为例,截止到 2016 年 2 月,创世区块至当前区块的数据量已经超过 60 GB。

与之相比,轻量级节点则仅保存一部分区块链数据,并通过第 2.1 节提到的简易支付验证方式向其相邻节点请求所需的数据来完成数据校验。

数据传播协议

任一区块数据生成后,将由生成该数据的节点广播到全网其他所有的节点来加以验证。现有的区块链系统一般根据实际应用需求设计比特币传播协议的变种,例如以太坊区块链集成了所谓的「幽灵协议」以解决因区块数据确认速度快而导致的高区块作废率和随之而来的安全性风险 [4]。根据中本聪的设计,比特币系统的交易数据传播协议包括如下步骤 [3]:

1) 比特币交易节点将新生成的交易数据向全网所有节点进行广播;

2) 每个节点都将收集到的交易数据存储到一个区块中;

3) 每个节点基于自身算力在区块中找到一个具有足够难度的工作量证明;

4) 当节点找到区块的工作量证明后,就向全网所有节点广播此区块;

5) 仅当包含在区块中的所有交易都是有效的且之前未存在过的,其他节点才认同该区块的有效性;

6) 其他节点接受该数据区块,并在该区块的末尾制造新的区块以延长该链条,而将被接受区块的随机哈希值视为先于新区块的随机哈希值。


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-87886-6.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...