👑web3.0 公链

web3.0 主要结构

  • 激励层

  • 应用层

  • 身份层

  • 计算层

  • 存储与通信

计算层

web3.0 计算层是开放的,谁都可以使用,不像现在我们登录的网站,都是运行在自己的服务器上,在web3.0的世界里,把计算层独立了出来,就像是我们现在用到的5G网络,自来水,电网一样

独立出来的好处,避免数据垄断,让数据以公共账本的形式公开,当然数据公开也不是终点,让数据回归创造数据的人才是终点,但是这一切需要从摆脱数据垄断开始

  • 公链: 公链节点随时加入或者退出

  • 联盟链: 联盟节点接入需要许可

公链

以太坊(eth)就是一种提供通用计算服务的基础设施,由于eth的计算网络可以随时进出,即不回收到任何限制,也不会影响算功能的输出,所以我们一般都把eth这样的网络称为 『公链』

比特币(btc)

比特币是第一个基于去中心化的网络,实现了一种确定性的计算服务,我们也可以管他叫做『数字黄金』,带引号的,但是从技术角度来将,**比特币实际是一套『状态转换系统」,**这个系统是以比特币的交易信息作为输入,并将这些输入,转换为新的比特币的账本进行输出

比特币目前不完备的特点

  • 架构涉及太紧密,缺乏必要性的扩展

  • 脚本只能实现一些简单的合约功能

  • 不支持复杂的循环计算,无法完成实现图灵完备

  • 比特币系统里面,代表还未花费余额的 UTXO,进行类似0和1的逻辑功能

  • 不能实现诸如多阶段期权合约,以及去中心化交易报价等功能

所以eth,就是在btc的基础之上建立了一个替代框架,基于这个框架,就可以让客户端的计算性能更强大,也可以让开发更简单,同时还能允许应用程序共享区块链的安全性

ETH 世界通用账本

eth内置了图灵完备的编程语言,这样任何人都可以基于eth编写智能合约,进行去中心化应用开发,也可以自由的针对所有权规则,交易形式和状态转换函数进行设定

eth 通过账户来反应状态,账户包括资产余额,还可以和合约进行交换,有了『账户』之后,智能合约的执行,就更加轻便和快捷,从而可以给他的扩展性创造条件

所以,基于以上设计,以太坊就可以实现更多更加精细化的控制。举个例子。在转账的功能方面,比特币可以设置成集齐五个账户中的三个,才可以发起转账支付,而以太坊则可以设置为集齐五个账户中的三个账户的签名,最多可以提取合约中的 80% 的金额,如果只是集齐五个账户中两个账户的签名,则每天最多可以提取合约中的 10% 的金额。

功能

  • 为去中心化的应用提供计算支持 ,比如金融应用

  • 为用户提供代币发行,储蓄,与借贷以及金融衍生品等服务,典型例子是Defi

可以说ETH就是去中心化应用的提供通用计算功能的基础层,强调账户状态的严格同步,eth 也被称为『世界通用账本」

IPFS

ipfs全称 星际文件系统 他是一个可以按照内容进行检索的文件存储和调用系统

基于ipfs协议,存储文件流程的大概是,以256kb为单位,进行切割文件,然后分别到不同节点进行存储,同时为每个文件生成一个哈希值,将哈希值和文件进行捆绑,会形成一个完整的索引架构,可以想想文件的目录功能

但是这样的搜索文件起来,就会显得慢一些。因为每次需要遍历所有索引文件来寻找

文件是通过加密手段进行内容加密的,而且只有旷工在用户发出检索文件请求以后,才会在ipfs的索引结构中找到对应的文件

我们知道,数据的基本特性就是 存储即拥有,我们自己的行为数据保存在互联网公司的服务器上,其实同时也就把数据的使用权,默认赋予给了互联网公司,那互联网公司为了获得『被赋予』数据使用权的资格,也会宁愿提哦那个免费服务吸引客户,而IPFS设计模式,正式为了打破这种模式,基于IPIF协议,用户不用担心网站被攻击,跑路,删除而无法下载数据,也不需要为数据存储篡改而担忧,同时IPFS还可以将分布不同地域的存储空间进行整合利用,从而就为个人,分散的存储空间找了一个经济变现的机会,下面看俩个案例

NFT头像

2021年下半年,加密头像突然火了起来, 比如Crypto Punk 和 Bored Ape Yacht Club 的地板价,已经达到了 数百个ETH

post image

我们可以想想看,如果这些头像保存在中性化的网络服务器上,理论上来说,图片就是随时可以被篡改的或者永久消失,而如果把图片直接上传到eth上,可能Gas费会非常昂贵,因此,大量的NFT项目就选这通过IPFS来存储这些图片

2022年4月1日,eth宣布其官网网站 ethereum.org ,已经部署到了IPFS上,用户可以通过ens浏览 etheretherum.et网站。这样的消息动态,其实也是正说明web3.0不同协议之间的可组合性

internet Computer

专门web3.0 而生的公链

我们知道,目前eth 在btc的基础上,实现了图灵完备的智能合约,理论上是可以支持去中性化应用,但是理论归理论,实践归实践,事实上,eth只能支持有限的去中心的应用

为什么会是这样呢?因为就是著名的CAP不可能三角定理,在一个分布式系统中,一致性、可用性、分区容错性三项特征中,最多智能存在其中俩个。

简单来看,一致性(Consistence)也就是 CAP 中的 C,它是指所有节点数据是否保持一致。我们根据数据一致性的不同程度,可以分为强一致性、弱一致性和最终一致性,这里的强一致性,是指所有节点写操作完成之后,数据都是完全一致的;而弱一致性则可以容忍写操作之后,出现部分或全部不一致数据;最终一致性则只要求,经过一段时间之后的数据一致即可。

然后是可用性(Avalibility),就是 CAP 中的 A,是指系统每次向未崩溃的节点发送请求,都能得到回应。也就是说节点处于可响应状态,对于需要处理的计算任务可以及时完成。

至于分区容错性(Partition Tolerance),就是 CAP 中的 P,它是指节点之间传递信息,可以出现误差或延误,但不会影响系统整体运行。

那么,对于区块链来说,分区容错是前提。所以,不同的区块链,只能在一致性和可用性上做出取舍。比如比特币和以太坊,就是以放弃一定的可用性为代价而追求强一致性的代表。比如说比特币。从数据结构上来看,它的每个节点、每一次交易验证,都需要遍历操作。也就是说,在发起转账之前,我们先要验证这个人是否有足够的比特币用来转账。那么如何判断这个人是否拥有足够的比特币呢?比特币的设定是要看转账给他的人是否拥有足够的比特币,按照这种方式,我们每一次转账,都要回溯到这个比特币是在哪个区块、由哪个矿工挖出来的,然后又通过多少次转账才到了自己的名下。整个验证一遍,我们才能最终确认这笔转账是否有效。所以,这样的查询方式效率就会非常低。

从数据存储上来看,比特币的每个节点都需要下载完整数据包,那么当交易越来越多的时候,节点存储空间,就成为了区块链处理效率的又一个瓶颈。从计算方式上来看,比特币的全部交易都只能通过串行计算而没有并行计算,所有节点都需要针对所有任务进行重复计算,所以计算效率也会受到很明显的影响。

然后我们再来看以太坊。首先,虽然它设置了“账户”,从数据查询的角度来看不再需要“遍历”操作,但以太坊每块存储空间仅为 1MB,区块大小的限制依然很明显。而且,以太坊同样也只支持串行计算,不支持并行计算。所以,以太坊仍然属于强一致性、低可用性的公链。强一致性对于金融相关的应用非常重要,但是对于其他类的应用来说,就显得能力不足了。

目前基于以太坊的应用,往往会采用一种“混合结构”,即和资产相关的操作在链上执行,而和资产无关的业务放在链下执行。这样做的好处是成本上的经济,但缺陷就是,去中心化应用仍然在某种程度上,依赖于中心化节点,由此而来的“单点故障”“数据泄露”等问题,仍然没有得到完美解决。

而现在我们要说的 Internet Computer(IC),是以打造“互联网计算机”为目标,为去中心化应用提供全栈式开发及运维系统,它把去中心化应用延伸到了更广泛的场景。

IC 是由一组加密协议组成的,这些协议会把独立操作的节点连接到一组区块链网络中。同时,它还克服了传统区块链上,智能合约在速度、存储成本和计算方面的限制,使得智能合约可以以近似于中心化网络的速度运行。另外还有一点,不同于以太坊生态往往偏向于金融属性,基于 IC 建立的是一种“全栈式”的去中心化应用,从前端到计算再到后台,都可以基于 IC 通过不同的容器,从而实现一种“无单点故障”运行状态。

而且,基于 IC,我们不仅可以实现已经出现在以太坊上的各种应用,甚至可以构建一个完整的比特币和以太坊的节点,使得在 IC、比特币和以太坊之间,能够实现一种原子层面的互操作性。

不过,虽然 IC 的技术架构更加适应去中心化应用,但由于 IC 还处于生态发展的早期,各种基础设施有待完善,比如说转账的原子性,还没有形成统一的技术标准。

ETH 依然处于在赛场的最前沿

eth把pow机制转换为了 Pos共识机制,并且通过分片技术进行全面扩容,这个分片技术的思路,就是支持eth并行计算,提升效率

Layer-2

Layer-2的思路是将部分计算工作从链上移到链下,并通过某种机制实现链下和链上安全性的共享,目前已经出现了zk Rollup(zkr)和Optimistic Rollup(op) 等技术路线。不过也还没有进入大规模的状态,使用的时候,也请注意风险,从另外一个角度来看呢,也算是可能一个投资机会

最后想说,其实这些公链都有一些问题还有待解决,希望通过今天的讲解,能够比较深入了解公链的赛道

谢谢