基于区块链的分布式存储系统开发论文研究(一)
论文一《基于区块链的应用系统开发方法研究》-蔡维德
论文引用:[1]蔡维德,郁莲,王荣,刘娜,邓恩艳.基于区块链的应用系统开发方法研究[J].软件学报,2017,28(06):1474-1487.
1. 区块链介绍
区块链是由多独立节点参与的分布式数据系统,也可以理解为分布式账簿(distributed ledger technologt,简称DLT),由这些节点共同维护,它的特点是不易篡改,很难伪造,可追溯。区块链记录所有发生交易的信息,过程透明,数据高度安全。凡是需要公正、公平、诚实的应用领域,都可以用用区块链技术。
区块链具体把数据分成不同的区块(block),每个区块通过特定的信息链接到上一区块的后面,前后顺连,呈现一套完整的数据。每个区块的块头(block header)包含前一个区块的哈希值(previous block Hash),该值是对前区块的块头进行哈希函数计算而得到的。简单来说,区块链就是将普通指针替换成了哈希指针的“链表”。如下图所示。
区块链具体把数据分成不同的区块(block),每个区块通过特定的信息链接到上一区块的后面,前后顺连,呈现一套完整的数据。每个区块的块头(block header)包含前一个区块的哈希值(previous block Hash),该值是对前区块的块头进行哈希函数计算而得到的。简单来说,区块链就是将普通指针替换成了哈希指针的“链表”。如下图所示。
技术层面上看,区块链的核心要素包括以下三个方面:
(1) 块链结构:每一块都使用前一区的哈希加密信息,对每个交易进行验证;
(2) 多独立拷贝存储:每个节点都存储同样信息,享有同样权力;独立作业;相 互怀疑,相互监督;
(3) 拜占庭容错:容忍少于三分之一的节点恶意作弊或被黑客攻击,保证系统仍 然能够正常工作。
要素(1)指出,区块链是一个“账簿”;要素(2)指出,区块链是一个“分布式账簿”,尤其是指出”享有同样权力”对与区块链来说是至关重要的,如果这一点不能保障的话,就不可称为区块链。另外,与现有分布式存储方式不同,区块链分布式账本是以同步的方式进行的,而不是在一个账本形成之后,再制成多个备份;要素(3)指出,区块链是一个“一致性的同步分布式账簿”。
区块链中另外一个重要的组成部分就是共识算法,以比特币的区块链为代表的第一代区块链采用的是PoW(51%的投票)。作为第