区块链技术的原理

保证区块链落地应用的技术基石
第一块基石是 P2P 网络,P2P 的网络去中心化,高性能,高可靠通讯的保证。
第二块基石是密码学,密码学保证数据无法被篡改而且是安全并可验证的。
第三块基石是共识算法,区块链网络各节点达成一致性的保障,也是现在评判区块链技术的核心指标之一。

1)P2P 网络是什么?
传统的网络是中心化的网络,所有的机器、通讯都要走过一个中心化的节点完成通讯,一旦这个节点出现了问题整个网络就瘫痪了。而 P2P 网络并没有一个中心化的节点,所有的节点之间直接互联互通。同时也因为没有中心化的节点,其中任意一点出现问题依旧能够保证整个网络还能通讯,因为你可以连接到其它节点上。所以 P2P 网络是去中心化的,参与各方地位对等,从而保证网络的健壮性、扩展性、高性能。

2)密码学在区块链当中用的非常多。
这里着重看如何通过“Merkle Tree”保证区块链上的数据不可被篡改。下图中的区块链数据结构,上方每一个大长方形就是一个区块 (block),该区块内所有的交易数据都被存储在这个区块上;最下方的第三个交易 Tx3,简单说每一个交易会生成一个哈希,Hash3 就是第三笔交易 Tx3 的哈希值。Hash2 下面没有画,是第二笔交易 Tx2 的值,Hash3 和 Hash2 组合在一起就是 Hash23,最后变成“Merkle Tree”的根节点“Merkle Root”。

每一个区块都有 Merkle Tree,区块上所有的交易都会被存储在 Merkle Tree 上。区块和区块之间也是相互链接的,每一个区块都知道上一个区块的 Hash 值。那为什么这样的区块结构能实现数据不可篡改呢?假设我要篡改 Tx3,那我们将要篡改 Hash3 的值,接下来改变了 Hash3 就要改变 Hash23,以此类推一直要改变 Merkle Root 的 Hash 值。因为区块的 HASH 中包括了该区块 Merkle Tree Root 的 HASH 值,所以一旦你改变了区块的 HASH,就必须要修改之后所有区块的哈希值。同时这样的修改还要被网络中超过共识算法要求的节点接受。这就造成了篡改数据树的成本极高,几乎是不可能的。比特币网络运行了那么久,在没有一个人去专门维护它的情况下,从来没有发生过任何篡改,也就是这个道理。

3)共识算法是区块链比较核心的技术之一
保证区块一致性是其主要作用。常用的共识算法有:POW、POS、DPOS、PAXOS、PNFT。
1.POW共识算法。也就是常见的比特币网络的共识算法,它通过哈希算力作为工作量证明去竞争记账权。POW的几个缺点:性能比较低;消耗大量的资源,尤其是算力;出块比较慢,10分钟左右。但它也优点,抗容错性很好,只有超过 51% 的节点攻击网络,网络才会失败,容错性50%。
2.POS共识算法。相对POW,POS是用所谓的权益计算法。相对POW来说它有几大改进:不再消耗资源;提高性能,2 分钟左右出块;同样容错性也是50%。
3.DPOS共识算法。POS实现2分钟左右出块是比较大的提高,但距离业务的要求还有一定距离,所以在此基础上进行优化产生了DPOS,简单来说DPOS不要求每个节点记帐,而是有代理节点来记帐,这比较像现实生活当中的议会制度,大家选出代表帮忙记帐,这样参与记帐的节点会相对集中,性能也就会提高。所以在DPOS情况下基本可以做到秒级出块,容错性也是50%。
4.PBFT共识算法。PBFT也就是所谓的拜占廷容错,它的性能非常非常快,可以达到秒级出块甚至比秒级还要快,但是它的容错性相对差一些,一般是33% 左右。
5.PXOS共识算法。PXOS假设的前提是没有恶意参与者,简单说就是节点不会发送错误的信息,但有可能漏发信息。在这种前提下容错性 50%性能也是很快的,基本上秒级出块。
评判共识算法大概有 3 个标准:
1.效率,达成共识确认的效率,简单就是出块的效率。
2.资源消耗,可能消耗电力、存储或者其他资源;
3.容错性,就是网络可以抵抗多大比例的节点出错。
互联网时代只是信息交换的时代,而区块链时代有了价值的交换,我们可以产生数据的市场,每个人拥有自己的数据,然后在交换的过程中产生新的价值。 我们都理解货币的价值在于共识。那么人类所有的知识当中,哪一个大家最容易达到共识?显然不是经济学,不是法律学,不是政治学,不是化学,不是生物,甚至也不是物理,最容易达到共识的是数学。 区块链中,底层是数学,中层是法律,上层是经济行为。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值