本章内容,没有IT和数学基础的同学可以不看,草草略过即可。
2.1 区块链的6层架构
2.2 区块链的4个组成部分
(1)分布式数据库
比特币系统中的区块,就像一个记账本一样,记录了所有比特币的交易信息,每一个比特币用户的比特币收支情况,都被永久的嵌入了数据区块链中,以供别人查阅。这些数据区块中的交易数据,存放在每一个比特币用户的客户端节点中,所有的这些节点则组成了比特币极其坚韧的分布式数据库系统,任何一个节点的数据被破坏,都不会影响整个数据库的正常运作,因为其他的健康节点中都保存了完整的数据库。
(2)点对点通信技术
P2P(Peer to Peer)网络是整个区块链的基础计算架构,P2P网络或者称为对等网络,是一种通用的计算机通信架构,与我们所熟知的客户端服务器(C/S)网络架构不同,在P2P网络环境中,成千上万台彼此连接的计算机都处于对等的地位,各个计算机节点直接相连,节点可以自由进入和退出,整个网络一般不依赖于专用的集中服务器。
如图,大家熟悉的网络电影下载工具VeryCd电驴,就是一个基于P2P网络的互联网服务。P2P网络保障了区块链是一个分布式系统,没有中心枢纽,即所谓的去中心化系统。
(3)加密算法
比特币中存还在一种为交易加密的非对称加密算法。(椭圆曲线加密算法)
非对称加密算法指的就是存在一对数学相关的密钥,使用其中一个密钥进行加密的数据信息,只有使用另一个密钥才能对该信息进行解密,这对密钥中对外公开的密钥叫做公钥,不公开的密钥叫做私钥。
打个比方来说,公钥就像银行的账户,私钥就想该账户的密码或者账户所有者的签名,区块链上的有效交易,有一个用于交易发起方私钥签名有效的数字签名,而该交易的签名可以通过使用交易发起方的公钥进行验证,公钥可以通过算法,从私钥中计算得出,但私钥却不能从公钥中推出,比特币系统中使用的就是一种非常典型的非对称加密算法——椭圆曲线加密算法(ECC)。
(4)共识机制
共识机制是对区块链的记账权进行集体验证的机制。
工作量证明(POW):——比特币、以太坊:
通过哈希运算找到满足规则的随机数,获得记账权。
优点:去中心化,节点自由进出
缺点:挖矿资源浪费、共识达成周期长,不适合商业应用,算力集中在比特币,其区块链应用获得算力难
股权证明(POS):——点点币、NXP
根据每个节点所持有代币数量和时间等比例降低挖矿难度,加速寻找随机数时间。
优点:缩短共识达成时间
缺点:还需要挖矿,牺牲普遍公平性来赢得效率
股权代表证明机制(DPOS):——比特股
持币者选出一定数量的节点,代表他们进行验证和记账
优点:缩小参与节点数量,妙计共识达成
缺点:集中化、信任化,牺牲去中心化优点
2.3 区块
(1)区块的链式结构,每个区块都会有指向前一个区块的链接,保证区块链起来。
(2)区块的内容较多,简单了解下,详细的可以去网上搜。
2.4 区块链分叉
对于比特币挖矿而言,全球那么多节点在挖矿,如果同时有两个节点挖到了矿,到底算谁的呢?咱们细细往下看。
假设当前最新的区块链有三个区块,假设中国有一个节点,美国有一个节点,同时挖到了矿(即找到了符合哈希预期的区块,挖矿的过程详见《1分钟了解挖矿的本质》),这两个节点都会把自己挖到的矿,链到自己本地的区块链上,这就出现了区块链分叉。
同时,这两个节点会将“我挖到矿啦”同步全球其他节点,以便于其他节点同步完最新的数据后,在最新的区块链上继续挖矿,此时:
离中国节点较近的点,可能先同步到“中国链”,并在此链的基础上继续挖,链条会持续增长;
离美国节点较近的点,可能先同步到“美国链”,并在此链的基础上继续挖,链条也会持续增长;
节点收到两个冲突的区块链同步,会判断此时哪条链的长度更长,会以长度更长的区块链为准;
画外音:长度更长的区块链消耗的计算力更多,不能让大部分矿工“白干啦”。
如此迭代,最终全球区块链终究会达成一致,以最长的区块链为准。
画外音:如果不遵守规则,成为“少数派”的节点挖到的新矿将不会被“多数派”承认,就等于“白干啦”,在区块链系统里,“遵守规则”是所有节点的最佳策略。
除非,有人掌握了全球51%的计算力(这基本已经算无敌了,拿这些资源干啥都比挖矿强),才能为所欲为。承载比特币应用的区块链,一般认为一个区块后面再链了6个区块后,就不肯能被“颠覆”了,故称为“六次确认”。
画外音:额,挖到一个新区块别高兴太早,等后面链了6个其他区块的时候,再庆祝吧。承载比特币应用的区块链,平均10分钟生成一个区块,“六次确认”大概需要经历1个小时。
注:本帖内容素材均为从互联网上获取整理