1. 区块链 基础¶
* 比特币
* 以太坊
* Linux基金会 Hyperledger
* EOS
* 各厂商自研区块链技术
1.1. 技术名词¶
- 交易(Transaction) 一次状态转移操作(一次转账)
- 区块(Block) 交易的集合
- 链(Chain) 区块的顺序排列 典型的单链表结构
1.2. 区块链类型¶
- 公有链
- 联盟链 所有的节点不是随意加入退出
- 私有链
1.3. 区块链特点¶
- 去中心化
- 去信任化
- 数据共享
- 不可篡改
1.4. 区块链平台¶
- 1.0 数字货币
- 2.0 智能合约
- 3.0 EOS
- 超级账本(Fabric)
1.5. 应用场景¶
- 去信任(去中介)
- 价值转移!=拷贝
- 数据共享 (之前的方式,由中介机构保存、有相互之间的API调用、有公共存储的地方)
1.6. 区块链技术¶
P2P网络协议 区别于完全不同的P2P投资 使用场景:BT下载¶
- 历史: 中心化 分布式 去中心化
- P2P网络实现
- Hyperledger Fabric–>gRPC对等服务 区别于P2P协议
- Ethereum–>Kad DHT技术
密码学¶
- 哈希(Hash)
- 将不定长度的数据转换成固定长度的哈希值
- MD5、SHA1、SHA2(SHA2-256)
- 正向快速、逆向困难
- 输入敏感
- 抗碰撞
- 加解密算法 U盾
- 对称加密
- 非对称加密 RSA、椭圆曲线
共识算法(分布式一致性算法)¶
- 强一致性 (很难保障、效率低)
- 最终一致性
共识算法–CAP原理¶
- 一致性(Consistence)
- 可用性(Availability)
- 分区容忍性(Partition Tolerance)
共识算法–ACID原理¶
- 原子性 一致性 隔离性 持久性
共识算法分类¶
- Paxos 解决故障节点
- 拜占庭容错(PBFT) 既能解决故障节点 也能解决恶意攻击节点
- 小结:一般的分布式节点 Paxos能够胜任解决
- 延伸:公有链和联盟链核心的区别就是共识算法的不同
1.7. 拓展阅读¶
- 比特币白皮书
- 区块链技术指南《杨宝华yeasy》
- Hyperledger Fabric官方文档