DApps认知升级:用类比思维破除对去中心化应用的迷思

我准备从本月开始推出一个专栏《去中心化应用认知升级》,配合这个专栏我还准备制作一些相关的短视频,定期播出或者通过Clubhouse讨论。这个专栏面向更广泛的关注区块链和去中心化应用的人,而不仅仅是开发者或专业人士,力图每一段短视频只讲述一个概念和知识点,并且配合ArcBlock的实际设计和实现,让更多人在认知去中心化应用价值的同时,意识到这一切已经不仅仅是愿景,而是立刻可以使用的现实技术和产品。

很多年前在互联网刚刚开始商用的时候我亲历过一件事:一个著名的广告设计背景的团队为客户设计一个网站的方案,设计非常精美,从审美角度他们在所有的竞争者中一枝独秀,但只有一个问题——他们认为是HTML页面就是图片,因此每个页面他们的设计都是一张完整的图片!在今天大家对Web的认知之下,看起来这是很可笑的事情,但是在当时这样的事比比皆是。今天如果看去中心应用,如果以为就只是一个和互联网架构一样的东西,使用了区块链,使用了智能合约,就认为这是去中心化应用应该的样子,就如同以为做Web网页和做一批印刷彩页图片一样。

破除迷思就是认知升级的一部分

去中心应用一直是一个非常令人费解的名词。对去中心化应用的本质不太能够透彻理解,这并不奇怪。几年前,我自己刚刚开始接触这个领域的时候,同样也会对各种概念困惑不解,看着市场上各种是是而非的描述,甚至偶尔怀疑自己的智商或者多年的计算机科学常识。早期的DApps更多流于概念,以至于很多人都很迷惑,而且对去中心化应用的各种曲解层出不穷——有过度崇拜的原教旨主义者,有故弄玄虚的各种“概念”,更有很多出于商业推广目的而夸大其辞的宣传。最近这两年,由于对去中心化应用的过度憧憬进而带来的失望,似乎又开始走向另一个极端。

因此在过去几年里,我们边开发?ArcBlock平台边撰写了数十篇文章从多个不同的角度来探讨什么是DApps,以及什么不是Dapps,实现DApps有些什么优势。我们撰写的由中信出版集团去年出版的《区块链实战:从技术创新到商业模式》一书更是拿出了好几章篇幅来阐述这个问题。

在2019年《去中心化应用开发设计:学习如何运用聚焦去中心化的产品思维模式》的在线课程中,我主要从去中心化身份角度讲述了开发去中心化应用的思想。如果你还没有看过那个讲座,那么我建议你花一些时间去听一下,因为开发去中心化应用最需要的是一种思维模式的转变,在开发方式、开发工具、语言、框架甚至技能方面并不需要太大的更新,但却需要在设计思想上有一些新的思路。

类比“中心化应用”与“去中心化应用”

了解ArcBlock的朋友都知道,我们在产品和技术设计上经常提到“第一性原理”,但是在帮助大家如何更好地理解去中心化应用的时候,我想更多使用“类比”的方法。

前些时候,我们的设计师曹雯写了一篇用乐高积木来类比理解ArcBlock体系架构的文章《逛乐高玩具店:开发一款去中心化应用的有趣旅程》就是从类比的角度让读者轻松理解我们的软件架构,获得了很多好评。

当我们采用正确的类比,就很容易理解去中心应用和中心化的应用的区别和联系,一些问题和疑问就迎刃而解。无论是建筑设计还是乐高积木,都是用类比的方法来帮助大家更好理解:建筑和去中心化应用是从宏观的角度类比,让大家更容易体会什么是去中心应用;从乐高积木看去中心化应用,是从微观的类比,让大家从细微处去理解如何构建中心化应用。两者有异曲同工之妙。需要注意一点,“类比”的方法往往是为了帮助大家的理解,有些时候未必精确,因此一定需要在类比对概念理解后,进一步深入思考。

日本加密货币交易所Fisco运营商将推出DApps平台:日本上市公司、加密货币交易所Fisco运营商FISCO计划为FISCO Coin (FSCC)提供贷款,将涉及多个企业。该公司还将推出一个平台,其中包含一系列DApps,所有这些都将被定位为工具。(Cointelegraph)[2021/5/28 22:53:50]

图:一个用积木搭成的房子的模型和实际的房子

软件设计师和和建筑设计师都是Architect,因此我们不妨用住宅来理解一下,从架构的角度,去中心化软件跟今天常见的互联网时代的中心化软件有什么区别和联系。

下图左边的高层公寓,可能是很多人都熟悉的每日生活环境。用这样的住房来类比今天的很多互联网服务还是挺贴切的:公寓式的住宅是一种典型的具有中心化特点的服务,很多住户共享了楼道、楼梯、电梯,包括地面以上的空间。很多情况下,住户实际上并没有拥有建筑或者土地,本质上只是在“租用”使用权。对比想象一下,你使用的微信、微博等很多互联网服务,你是和千千万万其他人一起“租用”服务提供商搭建的服务,你账户其实并不是真正属于你,你的数据并不在你的掌控之下。

图:香港一处高层公寓和澳洲一栋现代风格住宅(Unsplash/img/20230515203027219410/3.jpg "/>

最近流行的和区块链相关的很多去中心化应用都没有解决这个关键问题,大部分去中心化软件其实还是中心化部署的,比如CryptoKitties、Uniswap等都只是把智能合约部署在区块链上,而Web的前端仍然采用互联网服务一样的方式部署。

ArcBlock的ABT节点和ABT通证机制可谓是去中心化应用皇冠上的明珠,ArcBlock的ABT节点解决的最大的问题就是“去中心化部署”。在ArcBlock平台上,用户只需要付出ABT通证,就能全自动获得ABT节点的节点资源,这些节点的安装、部署、启动、管理全部是自动化的,用户通过NFT来证明自己对节点和服务的使用权。我将在未来的视频演示中,展现如何轻松地实现ABT节点的“去中心化部署”。这仅仅是一个开始,未来这将会成为人人可用的服务,并且会越来越完善。

今天的第一部分,给出的是一种思维方式,用类比的方法思考什么是去中心化软件和服务,和中心化服务有什么区别,破除对去中心化应用的迷思。对这些有了清晰的认知提高,下面随我们一步步展开,看看ArcBlock平台现在已经可以帮助开发者做到什么。一切才刚刚开始,很多事情也许超乎想象,因为去中心化软件的设计思维是一次认知的升级。

References

?ArcBlock平台:?https://www.arcblock.io/zh/platform?数十篇文章:?https://www.arcblock.io/blog/zh/tags/DApps?《区块链实战:从技术创新到商业模式》:?https://books.arcblock.io/?《去中心化应用开发设计:学习如何运用聚焦去中心化的产品思维模式》:?https://v.qq.com/x/page/i0831skrccc.html?《逛乐高玩具店:开发一款去中心化应用的有趣旅程》:?https://www.arcblock.io/blog/zh/post/2021/03/01/how-to-create-your-app?ABT节点:?https://docs.arcblock.io/abtnode/zh/introduction?Blocklet:?https://www.arcblock.io/zh/blocklets

动态 | 今日EOS Dapp活跃用户121143个:据DappReview数据显示,今日Dapp新增5个,EOS Dapp活跃用户121143,交易额4464万元(-27%);Tron Dapp活跃用户35878,交易额4316万元(-7%);ETH Dapp活跃用户16291,交易额5299万元(-8%)。过去24小时Dapp交易额:EOS最高的为“鲸交所”(交易额3148万元);Tron最高的为“WINk(TRONbet)”(交易额2038万元);ETH最高的为“NEST”(交易额3682万元)。[2019/9/5]

作者:?冒志鸿

NFT成为“新鲜事”经历了很长的过程

虽然NFT最近才“火”起来,但NFT其实并不是新鲜的概念。早在“染色币”时代,类似NFT的早期使用和尝试已经开始,通过“染色币”技术,人们在比特币网络上发行新的资产,产生类似股权凭证等记录,也有极客在比特币数据里保存图片等信息,这些都可以视为“上古”时代的NFT雏形。

早在ArcBlock项目刚刚成型的2017年,第一次真正把NFT带入大众视野的项目CryptoKitties就造成了以太坊的严重拥堵,一方面人们惊讶于一个介于卡通收集和养成游戏之间简单的“加密游戏”会引发这么高的兴趣,另一方面人们更吃惊于立志成为“世界的计算机”的以太坊性能会如此不堪一击,一个简简单单的游戏就让其性能拖慢到几乎不可用状态。正是由于CryptoKitties对以太坊的冲击,2017年底我们发布的?ArcBlock白皮书就以CryptoKitties为例说明了当下区块链存在的普遍的问题并将此作为ArcBlock平台努力解决的问题之一。

同样成立于2017年的OpenSea最近伴随着NFT的火热也变得非常热门,并成为迄今最大的NFT交易平台,但其实他们也已经在NFT交易领域默默耕耘了很久。我很喜欢OpenSea给自己起的这个名字,象征NFT展现了如同星辰大海一般无限可能性和无限包容性。

任何一种创新的技术从首次出现,到迭代升级,到开始让大众“吃惊”或者“眼前一亮”,往往都需要很多年的时间。如果从染色币时代计算,NFT已经出现了8年了,即便从首次进入主流的CryptoKitties算,也已经是第5年了。NFT是综合性的技术和产品,目前仍然处于探索创新的初期,未来会有日新月异的飞跃性发展。

NFT与去中心化应用,以及时下流行的Web3.0生态有什么关系?

NFT的应用场景远不止于数字艺术品和收场品,实际上他有着无限的空间。

声音 | 前摩根大通高管:DApp应该易于使用 用户无需担心技术细节:据CryptoGlobe消息,摩根大通前执行董事Amber Baldet认为,“当人们使用DApp时,应该更多地关注应用程序的功能,而不是它的底层技术。”[2019/4/29]

熟悉ArcBlock的朋友都知道,我们去年举行的开发者大会已经采用NFT作为大会门票,用NFT发放了各种参与活动纪念的徽章和黑客马拉松获奖证书。我们在DevCon2020上也演示了用NFT来作为各种应用的可能性,包括用NFT来换取我们的签名版实体书《区块链实战:从技术创新到商业模式》。

除了实用性,我们的NFT徽章同时也是数字艺术家采用哈希计算方式生成的多层艺术作品,每一个人的纪念徽章都是独一无二的,而黑客马拉松的纪念徽章不但独一无二,而且可以多个可组合,我们今年6月举行的DevCon2021还会展现更多的NFT应用形态。

其实NFT的应用场景远远不止步于此。在ArcBlock的设计中,用户在服务上的账户和数据、对某个节点或软件的所有权、软件的版权和授权许可等等都是NFT,我们的设计把去中心身份、可验证证书和NFT结合起来,形成强大的应用能力,可以对现实世界中大量事物和应用流程建模,从而让区块链能够更好地应用解决更多实际问题。

我们一直认为区块链的大部分应用本质上都是Token的应用,离开了Token区块链将失去很大的意义。欣慰的是,最近“无币区块链”这一买椟还珠的概念几乎无人问津,Token带来的应用繁荣时代即将来到。

在去中心化应用和目前日渐流行的Web3.0的概念中,去中心化身份、用户自主控制的数据以及去中心化的服务部署是实现去中心化愿景的关键技术,而NFT在这些技术细节的实现上是一种非常合适的机制。我们前不久发表的文章《NFT:数字所有权的伟大试验才刚刚开始》指出,NFT让区块链来介入现实世界的确权和验证变得可行和标准化,感兴趣的读者可以从那里了解更多。

NFT完全存在于区块链上吗?

很多人在接触使用NFT时可能没有意识到,今天的NFT虽然一部分数据在链上,但大部分实现的数据是在链下的。

目前的NFT其实大部分被设计为链上和链下两部分,链下的部分往往是NFT的数据,链上部分在以太坊上通常只被用于登记NFT的归属权。虽然一些早期如CryptoPunk的NFT尝试试图把数据全部放在区块链上,但是现在把数据放在链下而仅把有限的信息放在链上是目前通行的最佳实践。

有些NFT平台把数据保存在IPFS或者Swarm这样的分布式存储平台上,有些干脆就是一个Web的链接,也就是传统的互联网数据存储方式,可能是用AWSS3这样的云服务,也有可能就是在某个Web服务器上。这样带来的一个风险就是,万一这些公司或者服务不存在了,即便链上的记录说明你拥有某个NFT,这些NFT本身的数据也将丢失。这是NFT早期的一种不完善的形态,已经有越来越多的人开始意识到这个问题。

分析 | 67%的Dapp开发人员认为用户数量少是当前的最大痛点:据Cointelegraph消息,去中心化数据聚合器Fluence Labs在最近的调查中发现,67%的Dapp开发人员认为用户数量少是当前的最大痛点,而44%的人则认为用户体验差是最大的问题。调查还发现,很多人根本无法将加密货币和Dapp区分开来。[2019/1/30]

IPFS创始人JuanBenet的推文“NotonIPFS,notyourNFT”

作为先行者和探索者,ArcBlock在NFT的技术演进上也是经历了一个过程。我们NFT的最早版本设计数据完全在链上,为此我们限制一个NFT数据不能超过1M,这对证书、徽章等类型的应用绰绰有余,但对数字艺术品就必须能扩展到链下,因此在2021年新版资产链升级中我们对NFT的数据格式进行了扩展,通过扩展W3C规范中的ServiceEndpoint的标准做法,使得我们的NFT可以由发行者进行最大自由度的控制,兼容全链上方式和链上链下协同方式。而ArcBlock对DID和MyData等用户自主身份、用户自主数据的支持,能让NFT的数据问题得以完善的解决。

NFT可以“跨链”吗?

既然很多NFT数据部分在链下,那么要求NFT链上数据“跨链”存在是一个很现实的需求。

目前以太坊的ERC721和ERC1155协议和ERC20协议类似,仅仅定义了符合建议的规范接口。任何NFT只需要在以太坊上部署智能合约并提供符合ERC721或1155的接口,就被以太坊生态视为一种NFT。一个在其他区块链上或者Layer2系统上实现的NFT如果支持以太坊ERC721或ERC1155的接口,就可能可以直接加入现有基于以太坊的各种生态。目前出现各种Layer2方案主要还只是考虑Token和转账的问题,我相信这将是Layer2发展的一个未来方向。

目前以太坊ERC721等NFT在智能合约里记录的完全是以太坊地址为单位的“归属权”,因此这对在采用不同地址体系的其他链之间来“跨链”记录NFT归属会产生困难。即便采用相同的地址体系,由于NFT的归属是记载在ERC721的智能合约内部数据结构的,因此当不同链上归属权不一致的时候将会产生归属权界定的困难。我认为要彻底解决NFT归属权的跨链,就必须采用DID和可验证证书或类似技术,也就是NFT的归属并不只是来自智能合约里的内部数据,而是来自可用密码学验证的证明,如此NFT的跨链存在才会真正得以实现。

ArcBlock的NFT设计是原生“跨链”的。我们一直认为“链网”架构是未来区块链的形态,NFT不但能在ArcBlock的?ABT链网内的链之间自由流通,而且能作为以太坊的Layer2而存在,采用OptimisticRollup技术,用户可以把ArcBlock的NFT放回到以太坊上成为符合ERC721的资产,从而加入以太的生态。

NFT和去中心化身份可验证证书有什么关系?

正如前文所述,采用DID和VC来确定NFT的归属权能让NFT跨链存在变得可行。在区块链里引入DID是ArcBlock的创新之一,把可验证证书和NFT结合也是我们在NFT领域深耕的创新之一。

目前以太坊生态的NFT虽然有ERC721等协议和规范,但这些协议仅仅考虑了以太坊生态自己完全没有考虑其他环境,而且ERC721等协议仅仅定了NFT的交易接口规范,却没有对NFT本身的数据格式做出约定,导致目前各种NFT格式基本是各个平台自己定义,大多数做法就是一个JSON格式的MetaData,再附加指向一些外部的媒体文件。这么做的一个最大问题是”链下“的NFT数据可以复制也无法验证。你花数万甚至数十万美元的代价获得的数字艺术作品,在链上指向的数据往往是任何人都可以精确复制下载,也无法验证真伪的数据,这和很多人以为的NFT不可复制、不可篡改、容易验证属性其实存在理想与现实之间的巨大鸿沟。

自2019年ArcBlock推出?DID?开始,我们就把DID和可验证证书和NFT结合在一起。首先我们把NFT的拥有对象定义为DID,而非某个特定的区块链地址。在此基础上,我们把整个NFT设计为可验证证书,NFT的可验证性包含了NFT的所有数据,包括其媒体文件等,真正实现了NFT的不可篡改、不可复制,以及可验证。

NFT和FT可以互相结合吗?

NFT和FT其实是两种相辅相成的Token,两者之间不是非黑即白,而是可以互相兼容。

以太坊的智能合约设计,使得NFT和FT可以在实现上非常巧妙地结合和重组。从这个角度而言,早期的Token设计,甚至一些所谓”以太坊杀手“的区块链没有这样的灵活性。因为在以太坊里,智能合约和一个有私钥的普通账户并无区别,这就是说一个ERC721的智能合约本身就可以成为其他Token的持有者,而对持有的Token的控制逻辑又是这个智能合约本身来决定的。同理,一个ERC20的智能合约本身可以持有其他的Token,因此通过ERC20就可以“分拆”自己持有的资产。著名的去中心化交易所UniswapV2的设计里,LPToken就是这样的一种符合ERC20规范的FT,每个交易对合约本身持有了用于交易的两种Token,而投入这些Token的人则获得持有LPToken,而最新的UniswapV3改为采用NFT的方式来实现持有不同仓位的LPToken。

NFT和FT的组合可以带来非常多的应用形态,从含有面值的礼品卡、彩票、股权证明、期权、产权证书、收益权合约等等,都可以采用NFT和FT的组合来建模。ArcBlock的Token设计上充分借鉴了过去系统的利弊,让用户不需要编写复杂的智能合约就能轻易铸造安全易用的FT和NFT,并可任意地形成循环嵌套组合来描述非常复杂的业务需求。

NFT和DeFi有什么关系?

如果说DeFi是“金钱积木”,那么NFT可以说将是“万物的积木”,毫无疑问NFT可以和DeFi有机结合,形成非常多的创新性应用。

利用前述NFT和FT可以合这样一个特性,就能采用计算机科学里一个常见而强大的“循环嵌套”的设计模式,把简单的部件优雅地组合成为非常复杂、功能强大的部件。例如,可以设计一种NFT,可以包含其他的Token,这很容易形成如股权、期权等应用形态。而NFT又可以把其归属权通过DAO的方式切分成FT的方式,可以让一群人来按份共有一个物理上无法分割的资产所有权,比如分时度假的别墅的产权可以是一个NFT,而这个NFT通过建立一个DAO的组织来采用FT的方式发行分时使用权甚至进行收益分配等。采用类似的方法可以无限地组合和分拆,而这将为DeFi带来比现在的“质押”、“收益播种”等有意义得多的创新。

Uniswap的最新版本产品设计已经采用NFT来作为其LPToken,而不是过去采用ERC20方式。过去以ERC20方式的设计让SushiSwap的“吸血鬼攻击”变得直接方便,而采用NFT方式可以有效防范此类问题发生。

NFT和DeFi结合的应用,我们预期在这个领域会诞生大量的创新和耀眼的明星。需要说明的是,要让NFT能在DeFi领域获得发展,NFT本身的数据必须具备可靠性、不可篡改和可验证性,这就是为什么我们认为与DID/VC的结合是NFT成为更严谨应用的必由之路。

ArcBlock的NFT技术发展路线图

ArcBlock成立之初,我们就意识到NFT是一种重要的Token形态。在ArcBlock的“可编程通证”体系中,我们从一开始就对NFT形态的Token作了非常清晰的定位和规划,NFT相关的协议在ArcBlock的区块链上被称为ABBA协议。在我们撰写分别由中信出版集团出版的《区块链实战:从技术创新到商业模式》和人民邮电出版社出版的《2020区块链漫游指南》两本书中都可以找到我们对NFT的实践的详细介绍。

在ArcBlock的NFT实现中,我们引入了一些非常独特和创新的设计,包括:

?NFT完美结合DID和VC:?ArcBlock的NFT结合了DID和VC技术,因此在链下数据可验证、不可篡改、数据可携带、数据用户自主拥有等方面有不可比拟的优势。我们认为这会是将来NFT的普遍方向,我们采用符合W3CDID规范的设计具有很好的前瞻性和标准兼容性。?原生的NFT的铸造和交易能力:?由于NFT和FT的重要性,我们在ArcBlock的资产链设计中把Token的铸造、不同Token之间的原子性交换等都作为原生协议来支持,不同于其他基于智能合约的区块链如以太坊等需要通过部署智能合约的方式来支持。此外我们意识到NFT交易本身的重要性和通用性,我们把NFT的交易基础作为标准的BlockletService来提供,开发者可以立刻在自己的Dapps中铸造自己的Token并立刻实现基于链的去中心化交易,不需要自己开发,更不需要依赖第三方。?原生ABT“燃料”机制的开放经济协议:?在ArcBlock系统中,我们把NFT的铸造、存储等应用和系统其他部分如ABT节点、Blocklet等完全统一了起来。事实上,用户通过ABT来运行的ABT节点、Blocklet,各种业务在底层实现上完全采用了NFT交易和确权机制。只需要使用原生ABT为基础的简单而一致的经济协议,开发者就可以为用户实现全方位的服务,并且ABT的经济协议还通过NFT来隔离了支付和底层的业务提供,意味着应用可以对最终用户使用任意Token的支付方式,甚至采用传统支付方式就能提供服务,这对服务提供的简化、业务的”出圈“等非常有帮助。我们在这部分有非常多的创新,以后会专门介绍。?完善的支持NFT的钱包生态:?没有完善的生态钱包技术支持将是NFT的一个致命缺陷,这点在目前的以太坊NFT生态里已经可以看到这个问题,其实以太坊的ERC721的NFT应用,如CryptoKitties、POAP等都已经很早就推出,但是由于缺乏面向用户的钱包支持,导致最终用户难以感知,让NFT“出圈”很难。ArcBlock非常重视钱包生态,ABTWallet实现了从iOS到Android,并实现了纯Web端应用,并且在不同版本之间完全兼容和采用标准的用户体验,这对以后众多NFT的应用非常重要。?完善的支持NFT的区块浏览器:?过去以太坊生态的NFT另一个问题是区块浏览器对NFT不够友好,用户不能从常用的区块浏览器上一眼看清NFT的交易信息,也无法通过区块浏览器来检查校验NFT的数据。ArcBlock的区块浏览器支持完善的NFT数据展示,并能完善帮助用户校验链下数据的一致性。ArcBlock的区块浏览器是完全开源实现的Blocklet,意味着不但可以使用官方部署的,任何人可以轻松部署区块浏览器实现更去中心化的校验。?作为以太坊Layer2接入以太坊生态:?ArcBlock的NFT自成体系,但是用户可以通过rollup技术把ArcBlock系统上的FT/NFT在以太坊生态映射为符合ERC20和ERC721的Token,从而融入以太坊生态。

ArcBlock设计的NFT体系具备上述许多与众不同的特点,由于我们研发时间久、投入大,我们很多设计已经在实际应用中进行了多次迭代改进,在NFT真正走向更广泛的应用时能获得更大的先发优势。

References

?ArcBlock白皮书:?https://www.arcblock.io/zh/whitepaper/latest?开发者大会:?https://devcon.arcblock.io/zh/?《NFT:数字所有权的伟大试验才刚刚开始》:?https://www.arcblock.io/blog/zh/post/2021/03/30/nft?ABT链网:?https://abtnetwork.io/zh/?DID:?https://github.com/ArcBlock/abt-did-spec?中信出版集团出版的《区块链实战:从技术创新到商业模式》和人民邮电出版社出版的《2020区块链漫游指南》:?https://books.arcblock.io/

作者:?冒志鸿

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

银河链

[0:0ms0-2:215ms