作者:Xiang|W3.Hitchhiker
一、Web2.0架构
Web2.0应用以去中心交易所Binance为例,Binance允许用户去交易各种代币。
Binance是一个Web2.0应用程序,架构听起来很简单,但实际上在开发中,需要进行大量的工作。
用户需要通过网络运营商来使设备联网,然后打开浏览器,输入币安的域名,通过http协议去访问币安的网站。
Binance需要用户通过手机或者邮箱来进行注册并登录该平台。
然后币安自己需要一个地方来存储像用户注册信息,交易额度,成交历史,挂单等的基础数据。而这些都需要搭建一个数据库用来存储,并且要不断地更新。
其次,后端代码语言决定了Binance的所有的业务逻辑。需要一个搭建服务器部署后端跑后端的逻辑。例如,当新用户注册、交易,挂单会发生什么情况?
钱包开发商Safeheron:某些多签钱包可以被使用Starknet协议的Web3应用程序攻击:金色财经报道,多方计算 (MPC) 钱包开发商Safeheron表示,某些多签钱包可以被使用Starknet协议的Web3应用程序攻击。该漏洞影响与dYdX等Starknet应用程序交互的MPC钱包。Safeheron正在与应用程序开发人员合作修补该漏洞。(Cointelegraph)[2023/3/9 12:52:37]
还有,像前端代码语言(JavaScript,HTML,andCSS)决定了Binance的UI逻辑。需要一个搭建服务器部署到前端跑前端的交互逻辑。例如,网站是什么样子的?当用户与页面上的每个按键交互时会发生什么?
当你在Binance上写交易时,这些所有的东西都会整合起来进行联动。你与它的前端互动,前端和后端交互,后端再与它的数据库交互。所有这些代码都托管在中心化服务器上,并通过互联网浏览器反馈给用户,而中心化服务器的所有控制权在Binance的手上。
狗狗币联合创始人质疑Web3和NFT的重要性:6月5日消息,狗狗币联合创始人Jackson Palmer表示,所谓的Web3是一个不存在问题的解决方案:“我认为(Web3)是一个寻找钉子的锤子,它没有以任何有意义的方式为社会提供太多的价值。”在数字收藏品方面,Palmer称,围绕NFT的炒作正在被用来吸引更多的人进入加密行业。他还认为,去中心化协议并不一定需要区块链技术或加密资产才能蓬勃发展。(The Daily Hodl)[2022/6/5 4:03:04]
这是对当今大多数Web2.0应用程序的工作原理的一个简单总结,当然实际会更为复杂。
二、Web3.0架构
Web3.0应用以Uniswap为例,Uniswap是去中心交易所,允许自由添加并交易各种代币。
Penguin发布Web 3.0去中心化数据网络:12月31日消息,去中心化存储网络Penguin最近发布Web 3.0通用去中心化数据网络。
Penguin是专为Web3.0设计的节点对等网络,联合提供去中心化存储和通信服务。通过为Web3.0提供一个通用的去中心化数据网络,平台可以为区块链行业的不同区域发挥多种作用。此外,Penguin旨在与区块链行业合作,创建在Web3.0中无缝访问的DApp、产品和服务。(Globenewswire)[2021/12/31 8:17:04]
Uniswap是一个Web3.0应用程序,架构听起来很复杂,但实际开发实现很简单。
首先,用户要通过设备来进行联网,需要通过网络服务商,类似电信,移动之类。
然后,用户访问程序要通过浏览器或者操作系统
Astar Network背后公司获Web3基金会资助:波卡生态DApp平台AstarNetwork(原PlasmNetwork)宣布其背后核心公司StakeTechnologies获得Web3基金会资助,将使用该笔资金帮助波卡开发人员轻松在Substrate上实施零知识证明系统ZKPlonk。ZKplonk被称为通用zkSNARK,最初由Aztec和ProtocolLabs共同提出,用于优化zk-SNARK的问题,比如,参考字符串是通用的,不需要为每个创建的Circuit重新创建可信设置。[2021/7/13 0:48:59]
用户访问程序要通过浏览器与服务端交互,这一操作需要通过协议来支持
Uniswap需要用户通过私钥,钱包去登录,此外统一的DID也是未来的一个方向
钱包需要连接区块链的节点,这时会需要节点的服务器来提供,这也就需要对应区块链的节点,或者由?Infura/Alchemy?这种专业的节点服务提供商来进行。
现场 | Nervos基金会联合创始人吕国宁:Rust是适合Web3.0底层设施的开发语言:金色财经现场报道,由Web3基金会主办的Web3大会10月29日在上海举行。Nervos基金会联合创始人兼COO吕国宁在会上表示,Rust是适合Web3.0底层设施的开发语言,因为:1、极致追求性能;2、集合现代语言典范的语言;3、包容、开放哦社区治理;4、多方区块链底层设施的安全验证,已实现案例Pokadot、Parity、Eth 2.0、Nervos、CITA。他还举例证明Rust的安全性,2015年以太坊遭到大规模DDOS供给,其他语言的客户端都宕机了,而只有基于Rust的parity客户端安全运行。[2020/10/29]
Uniswap网站是什么样子的,当用户与页面上的每个按键交互时会发生什么?还是JavaScript,HTML和CSS之类的前端代码语言实现Uniswap的UI逻辑。
但Web3可以不需要自己搭建服务器部署跑前端的交互逻辑。这些前端的数据可以保存在去中心化的存储网络中。
以下是Uniswap的官方的IPFS链接,此方案不需要搭建前端服务器,用户同样可以正常使用。
ipfs://bafybeiagkgmmhux6fswdoedmwqqsvt5arjivl35wuk25jljb2yqgn7njgu/#/swap
以上的链接,可以看到是由ipfs://开头的,所以需要支持解析ipfs的浏览器才能打开
并且该链接不是人类可读的,所以又需要域名服务,把对应的域名映射到该链接,例如uniswap.eth。
当然IPFS也只支持兼容Http的网关去访问。
UniswapInterface
当网站访问量高的时候,需要更加灵活的带宽市场——CDN加速网络。
Uniswap通过区块链智能合约语言solidity等实现,决定了Uniswap的所有的业务逻辑。因为是跑在EVM环境内,所以Uni不需要自己搭建服务器部署后端跑业务逻辑。
但交易所需要展示的,肯定不只是业务逻辑,也需要展示币价的历史价格曲线,交易额度等。这些历史数据并不能通过智能合约获取。假设项目方需要展示的话,仍然需要自己搭建服务器,跑一个节点,通过链上的数据,筛选出来保存到Uni自己的数据库。所以Web3需要一个链数据索引的解决方案。
TheGraph就提供了一个链数据索引方案,可以方便用户查询数据。在TheGraph中,你可以定义哪些智能合约需要索引、哪些事件与函数调用需要监听,包括调用时、产生时的状态,也可以规定如何将传入的事件转化为前端逻辑可处理的。
链上数据的保存会由专门的Graph索引挖矿节点保存,该索引节点将提供API供用户页面端调用,项目方不需要搭建服务器,只有索引节点需要搭建服务器来跑索引数据挖矿节点。
通过索引区块链数据,TheGraph可以让我们在应用逻辑中查询链上数据,并且几乎不会出现延迟的情况。
例如Uniswap交易信息的呈现就是通过TheGraph生成的。
UniswapInfo
如果Uniswap想呈现的更多,把链下的币价数据也在链上呈现出来,这时就需要打通链下链上数据的桥梁。
按照以上的开发逻辑,Uniswap相当于发布了一个Web3.0的应用,但实际实现的成本比开发币安交易所的成本低非常多,因为:
Uniswap不需要用户绑定邮箱,绑定手机,可以直接通过钱包登录,Uni自身也不需要保存
Uniswap可以不需要搭建前端服务器,用户可通过IPFS或AR存储前端页面进行访问
不需要搭建后端服务器。后端逻辑是跑在智能合约上
不需要搭建数据库,历史数据与数据库操作通过TheGraph来实现
专业的人去做专业的事,Uniswap只需做好、设计好自己的逻辑,其他逻辑由模块化Web3基础设施去支撑。
这样Uniswap不仅仅实现了完全的去中心化,也是Web3模块化的一个简单的应用案例。
Web3的核心是能去信任化交互价值,模块化的发展不仅能做到去信任化,还能提高运行的效率,模块化的趋势会应用到各行各业。
前文所说的是Web3网络架构的模块化,提高了Web3的生成力效率,那怎么提高Web3生产关系的效率。DAO又依赖于区块链,区块链本身也正在走向模块化,同理元宇宙,游戏等等都是如此。
模块化时代到来将带来更高的效率,更好的服务,W3Hitchhiker将持续跟进crypto的模块化之路。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。