区块链的技术定义:
区块链的存储基于分布式数据库;
数据库是区块链的数据载体,区块链是交易的业务逻辑载体;
区块链按时间序列化区块数据,整个网络有一个最终确定状态;
区块链只对添加有效,对其他操作无效;
交易基于非对称加密的公私钥验证;
区块链网络要求拜占庭将军容错;
共识算法能够“解决”双花问题。
区块链的核心技术组成
P2P网络协议、分布式一致性算法(共识机制)、加密签名算法(sha256)、账户与存储模型
P2P网络协议:节点发现、节点交互 、局域网穿透
共识机制:Pow Pos DPos
比特币的初始交易时间是10分钟一次
Pow:工作量证明 优点:稳定、信任度高
缺点:计算资源浪费
51% 攻击(双花攻击)
Pos:权益证明 优点:可解决计算资源浪费问题,51% 攻击 hash (block_header) < Target * CoinAge 跟币龄有关
缺点:如何让币分散出去 早期是先pow后pos
DPoS:代理权益证明 优点:交易确认时间短 选取固定节点数来获取记账权
hash算法 sha-2 (sha256 sha512等) 应用在默克尔树
加密算法:公私钥都可加密解密。 量子计算对加密算法威胁论(基本上)
两种账户模型:1 普通账户 记余额
2 UTXO账户 记每笔交易 每一次的UTXO 包含输入输出 输入 = 输出 + 手续费
提升区块链TPS两种方案: sharding 分片 分片技术是一种安装传统数据库分片的扩展,主要思路是将数据库分成多个分区(碎片)并将分区放置在不同的服务器上。(网络分片:、状态分片)
去中心化的架构TPS必然是低的 。像DPOS共识机制选好固定节点的,弱化了去中心化。提高了TPS。