知识背景:
- 分布式(CAP理论)
- 区块链
web3.0 的特点:
- 将互联网转化为数据库
- 人工智能
- 语义网络和 SOA 的实现
- 向 3D 进化
- 延伸性定义
- 无处不联网
- 网络计算
- 开放技术
- 开放身份
- 智能网络
- 分布式数据库
- 智能应用程序
区块链的技术定义:
区块链是一个提供拜占庭容错,并保证了最终一致性的分布式数据库。它有以下几个特点:
- 节点之间的数据交换过程不可篡改,并且已生成的历史记录不可被篡改;
- 每个节点的数据会同步到最新数据,并且会验证最新数据的有效性;
- 基于少数服从多数的原则,整体节点维护的数据本身可以客观反映交换历史。
拜占庭容错
故事背景:拜占庭帝国是 5-15 世纪的东罗马帝国,也就是现在的土耳其。拜占庭帝国拥有巨大的财富,它的十个邻邦国家都垂涎已久。但拜占庭城墙高耸,没有一个单独的邻邦能够成功入侵。任何单个的城邦的入侵行动都会失败,而且入侵的军队也会被歼灭,使得自身反而容易受到其他九个城邦的入侵。 这十个邻邦之间也相互觊觎对方的财富而时常爆发战争,拜占庭的防御能力很强,如果有六个或者更多的邻邦一起进攻才会成功。然而,其中一个或者几个邻邦发生背叛,答应一起进攻,但在其他人进攻的时候反悔了,就会导致只有五支或者更少的军队同时进攻,所有的进攻军队都会被歼灭。 因此,每个邻邦都小心翼翼,不敢轻易相信邻邦,因为稍有不慎,就会给自己带来灾难。这就是拜占庭将军问题。
具体含义:
在存在消息丢失的不可靠信道上试图通过消息传递的方式达到一致性是不可能的。
区块链的技术特征
- 区块链的存储基于分布式数据库;
- 数据库是区块链的数据载体,区块链是交易的业务逻辑载体;
- 区块链按时间序列化区块数据,整个网络有一个最终确定状态;
- 区块链只对添加有效,对其他操作无效;
- 交易基于非对称加密的公私钥验证;
- 区块链网络要求拜占庭将军容错;
- 共识算法能够“解决”双花问题。