联盟链是介于公有链和私有链之间,具备部分去中心化的特性。
联盟链是由若干机构联合发起,由盟友共同来维护,它只针对特定某个群体的成员和有限的第三方开放。
8.1 部分去中心化
联盟链只属于联盟内部的成员所有,联盟链的节点数是有限所以容易达成共识。
8.2 可控性较强
公有链是一旦区块链形成,将不可篡改,这主要源于公有链的节点一般是海量的,比如比特币节点太多,想要篡改区块数据,几乎不可能,而联盟链,只要所有机构中的大部分达成共识,即可将区块数据进行更改:
8.3 数据不会默认公开
不同于公有链,联盟链的数据只限于联盟里的机构及其用户才有权限进行访问
8.4 交易速度很快
跟私有链一样,联盟链本质上还是私有链,因此由于其节点不多的原因,达成共识容易,交易速度自然也就快很多
9 联盟链应用场景
场景一:商品溯源
在传统的商业零售场景中,商品从出厂到消费者的链条存在中间环节信息不透明的情况。当发生商品质量或安全问题时,难以回溯和追责。同时供应链信息也存在被篡改或伪造的风险。
场景二:公益慈善
基于区块链数据可追溯、不可篡改等特点对捐赠资金及资金流向进行公示,可以提高受捐机构的公信力,减少捐赠人对资金使用的质疑。
场景三:供应链金融
在传统供应链体系中,除了核心企业外,还包含了上游的多级供应商和下游的多级经销商,但由于企业的信用无法实现传递,导致许多企业面临融资难融资慢的问题,影响了业务的健康发展和生产规模的扩大。同时由于信息难以共享,使得企业间交易协作的效率较为低下,比如由于票据流通不便导致的合同结算慢的问题。
场景四:互助保险
这种模式是基于特定人群自发组织成一个保险风险池互帮互助,无中心信任背书。此时,如何提高保险资金的公平合理使用就显得尤为重要。利用区块链技术公示所有保险资金的流向,增加了松散群体之间的信任,能帮助这种保险模式取得更好的发展前景。
哈希函数
定义
般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。
特点
正向计算容易,逆向计算困难;
常见Hash函数
MD5
摘要长度为128bit,由于容易受到碰撞攻击,目前使用越来越少
SHA
SHA系列哈希算法由美国国家安全局制定,具有多个hash算法标准,可以产生160~512bit不等的哈希摘要。目前在区块链中使用较多的是SHA256,摘要长度为256bit,具有较高的抗碰撞攻击安全性。
加密算法
默克尔树
证明一个数字是否在树中:
数据签名技术
核心数据结构
区块链中的哈希与签名
共识机制
定义
解决拜占庭场景网络环境下分布式数据一致性问题的一类算法
常见的共识协议
先写入后共识
如POW、POS、DPOS、POX
- POW: hash(B)< targetl nounce ,hash=sha256
- POS: hash(B)< target * balance i nounce, hash=sha2563
- .DPOS: topN(sort(candidate’ s votes))
- 4.POX: Proof of X
先共识后写入
如PBFT及BFT变种:
- Chained-BFT
- Tower-BFT
- TBFT、XBFT等
智能合约
核心数据和核心业务逻辑运行在区块链上,保证去中心化与上层业务系统进行衔接,提供用户界面或业务集成
区块链智能合约: 从数据可信上升到业务可信。