Anoma’s Adrian Brink on Validity Predicates, Ferveo DKG & More
Anoma’s Adrian Brink on Validity Predicates, Ferveo DKG & More
Anna (00:05):
欢迎体验零知识。我是您的主持人安娜·罗斯。在这个播客中,我们将探讨零知识研究和去中心化网络的最新进展,以及有望改变我们在线互动和交易方式的新范式。本周,我采访了Anoma的创始人之一阿德里安·布林克。Anoma 是一个用于多资产隐私和N方易货交易的新协议。我们聊了他的过往经历,然后深入探讨了这个新项目。我们讨论了他们旨在创建一个允许任何数字资产作为交换和支付手段的系统,以及 Anoma 可以启用的项目或想法。
Anna (00:50):
在开始之前,我想向大家介绍即将举行的 zkSessions 活动。活动将于6月23日举行,主题是关于DAO、NFT和新型融资机制。我们的目标之一是探讨是否以及如何将隐私和零知识理念融入这些新系统。我还将主持一个互动社区讨论,探讨零知识社区如何开始使用这些工具。如前所述,活动将于6月23日举行,我已在节目说明中添加了链接,希望在那里见到您。接下来,我想感谢本周的赞助商——EY区块链。EY致力于在公共以太坊区块链上使用强大的隐私技术(如零知识证明)构建一个更美好的工作世界。EY相信区块链技术将成为连接全球生产性商业生态系统的粘合剂。要了解更多关于他们的产品和服务,请访问 blockchain.ey.com 或查看 EY 在 github.com/eyblockchain 上的开源贡献。我已在节目说明中添加了这两个链接。再次感谢 EY 赞助零知识播客。现在,进入我对阿德里安的采访。
Anna (02:05):
今天我采访的是Anoma的创始人之一阿德里安·布林克。Anoma 是一个用于多资产隐私和N方易货交易的新协议。欢迎来到节目,阿德里安。
Adrian (02:15):
谢谢邀请我。
Anna (02:16):
阿德里安,你在这个领域已经有一段时间了。我想我们认识至少三年了,但这似乎是我第一次邀请你上节目。
Adrian (02:26):
是的,没错。
Anna (02:27):
在开始讨论 Anoma 之前,先介绍一下你的背景。你是从哪里开始进入区块链领域的?我记得我们在2018年的第一届 zkSummit 上见过面,所以你显然已经在这个领域了。给我们讲讲你的起点。
Adrian (02:42):
我在计算机科学的毕业论文中研究了基于区块链的电子投票,那是在加泰罗尼亚独立公投期间。我个人并不是很支持独立运动,但我认为如果加泰罗尼亚人能有一种抗审查的电子投票系统会很酷。我在以太坊上实现了这个系统。当然,任何听过这个的计算机科学家都知道,电子投票是计算机科学中没人想碰的领域,因为大家认为它完全不安全。奇怪的是,我们把金融系统放在了计算机上,但没人相信投票系统可以安全运行在计算机上,这对我来说仍然很有趣。在研究过程中,我接触到了Tendermint,特别是Tendermint共识,深入研究后,我加入了Cosmos,成为第三个核心协议工程师,主要是因为我给Jae写信说我会编程,问他是否需要帮助,因为我觉得这个项目很酷。
Anna (03:41):
那是早期了,是哪一年?
Adrian (03:43):
应该是2017年。
Anna (03:46):
项目已经启动了吗?
Adrian (03:47):
没有,那是在筹资前后。我大概是在筹资后一周加入的。从那以后,我们构建了整个Cosmos技术栈,贡献了很多。后来我们推出了Cryptium Labs 作为一个验证者。我们是最早的验证者之一,因为我们认为没人知道如何运行这些东西,也没人知道如何在实践中运行权益证明系统,而构建它的人显然不是最有资格运行它的人。所以我们卖掉了这家公司,今年早些时候卖给了Chorus One。但我们发现验证工作长期来看并不有趣,因为它主要是架设服务器和数据中心。我们一直热爱研究和协议工程,所以我们成为Tezos的第二核心开发团队,持续了大约两年,推出了所有重大升级。我们把15人的团队带到了Anoma,这个项目我们在今年早些时候启动。
Anna (04:47):
你提到你的两位联合创始人,Awa和Chris。Awa曾经上过一次节目,在一个活动中做了一个短篇访谈。Chris Goes去年也上过节目,谈到了IBC。
Adrian (05:02):
是的,Chris是IBC协议的主要作者,也在Tendermint共识和Cosmos的权益证明系统上工作了很长时间。
Anna (05:10):
Cryptium Labs 是你们三个人一起创立的吗?还是只有你和Awa?
Adrian (05:13):
不,是我们三个人。
Anna (05:13):
好的,所以这是一个长期合作的创始团队。
Adrian (05:18):
是的,我们已经一起创立了三家公司。
Anna (05:20):
顺便提一句,零知识验证者实际上是Anoma的早期投资者。但我们投资时,项目还处于早期阶段。我知道之后有了很多进展,这也是我今天希望和你深入探讨的内容。让我们开始聊这个多资产隐私的新协议。简单来说,Anoma 是什么?
Adrian (05:43):
简单来说,Anoma 是一个与现有智能合约平台(如以太坊)以及其他链(如比特币)完全不同的协议。Anoma 是资产无关的,它没有特定的基础层资产。当然,它有一个权益证明资产,但你可以用其他带到平台的资产支付交易费用。Anoma 的核心理念是世界将是可互操作的。我们不知道具体通过哪些协议,但我们有很好的想法,资产将在状态机之间自由流动。Anoma 旨在让人们拥有多资产隐私,无论他们带来什么资产,并允许以非常灵活的方式进行交易,这种方式源于Wyvern DEX协议,这个协议支持OpenSea。很少有人知道这个协议,因为这是Chris很久以前写的。
Anna (06:42):
那个协议叫什么名字?再说一遍?
Adrian (06:44):
Wyvern DEX协议。
Anna (06:45):
Wyvern DEX。好的,我们会在节目说明中放上链接,供感兴趣的听众了解。
Adrian (06:54):
是的。Anoma 在架构上也做出了很多不同的选择。它基于快速终局性的拜占庭容错(BFT),采用分形扩展。我们不认为需要一个统治所有状态机的单一验证者集合。从技术上看,无论以太坊多么可扩展,全球商业都不可能完全转移到一个验证者集合上,这与人类的社会运作方式不符,就像我们没有一个世界政府一样。所以Anoma采用分形扩展,不同地区、不同的人可以运行不同的实例,但它们可以相互操作,资产可以在Anoma内部以及与其他系统之间流动。你可以用这些资产私密地支付、屏蔽资产、创建自己的资产或私密地转移它们。它还允许复杂的多方状态转换,比如你想用CryptoKitty换巴塞罗那的演唱会门票、一些BTC和ETH,通常这些可以原子化地结算。最后,我们坚信零知识证明会变得很重要,隐私是基本人权。所以人们可以部署自己的有效性谓词(Validity Predicates),这些谓词可以做很多事情,比如新的私有易货电路、私有交易电路或隐私保护的转账协议。开发者可以使用我们正在开发的语言Duvix编写这些谓词,它会编译成零知识证明,非常方便。
Anna (08:31):
你刚才说的内容太多了,有很多需要深入探讨的地方。
Adrian (08:36):
我知道,抱歉说得有点多。
Anna (08:36):
其中一个让我印象深刻的是分形扩展(fractal scaling),这个关于不同生态系统和区块链的想法。这听起来很像Cosmos的理念和IBC的概念。我知道Chris在IBC上做过很多工作。所以我想问,在你看来,分形扩展和你之前在Cosmos以及Chris在IBC上的工作有什么联系?
Adrian (09:03):
是的,Chris是IBC协议的主要架构师。IBC是一个很棒的协议,我想很多人没有真正理解它。IBC并不局限于Cosmos,它可以在NEAR和Polkadot之间工作,也适用于Anoma。它就像……
Anna (09:19):
它是一种桥接方式,对吗?算是一种桥吗?
Adrian (09:23):
它本身不是桥,而是一种描述数据如何在两个区块链之间传输和认证的方式。你可以把它想象成TCP/IP,它只是一个协议,描述了从Polkadot传输的数据包如何在NEAR上被认证,反之亦然。
Anna (09:47):
它不涉及在每个链上创建轻客户端吗?
Adrian (09:50):
协议的要求是必须有高效的轻客户端。
Anna (09:54):
所以确实需要轻客户端。
Adrian (09:55):
是的,这是协议的要求:为了实现协议,双方都需要高效的轻客户端,否则通信复杂度会激增。但Anoma并不是资产的路由中心。Anoma只是一个协议,人们可以出于隐私原因使用他们的资产,实现多资产隐私。Anoma可能是全球首个提供所有资产统一隐私集的解决方案。像Zcash和Monero这样的项目之所以难以获得广泛采用,是因为它们的隐私功能 привяз到一个特定资产。我不想用ZEC或Monero代币买咖啡。
Anna (10:41):
不过我听说有些地方已经开始接受这些代币。Zooko最近向我展示了这个。
Adrian (10:47):
是的,柏林的Room 77接受比特币买汉堡,算是一种新奇的做法,但这不会成为主流。所以在Anoma,你首次实现多资产隐私,对外部观察者来说,无法区分你是用USDT买咖啡,还是用一亿美元卖房子。所有资产都有相同的隐私保证,你可以把多资产屏蔽池看作Sapling的扩展,Sapling屏蔽了发送者、接收者和金额,而多资产池还屏蔽了资产标识。
Anna (11:22):
这里有实际的计算吗?在隐私环境中进行的不仅仅是交易吗?我的意思是,除了账户余额变化之外,还有其他隐私计算吗?
Adrian (11:38):
多资产屏蔽池只是Anoma中的一种有效性谓词。你可以部署其他进行更多隐私计算的谓词,但多资产屏蔽池本身不进行隐私计算,它只进行账户余额的证明检查,确保不膨胀代币。
Anna (11:55):
我们来谈谈它与Sapling的关系,因为你在构造中用到了Sapling的一部分,对吗?
Adrian (12:03):
是的,这是Sapling的扩展。Sapling很棒,没有理由抛弃它。我不明白为什么以太坊上的很多隐私技术没有这样做。Sapling有很棒的功能,比如查看密钥、支出密钥等。所以我是Sapling的粉丝,这是对它的扩展。
Anna (12:23):
明白了。但你是重新部署它吗?还是说你会拿那部分代码重做?你并不是连接到Zcash上现有的Sapling,对吗?
Adrian (12:34):
不,完全不是。我们只是使用代码,重新部署扩展后的代码,也就是多资产屏蔽池。这也意味着我们需要进行一个新的信任设置(trusted setup),我们计划在今年夏天开始。根据研究进展,我们可能同时进行PLONK p-lookup信任设置,以获得通用的证明字符串。因为Anoma的一个理念是让人们可以用Duvix编写自己的零知识电路。如果每次部署零知识证明应用都需要重新做信任设置,那就太不方便了。希望通过PLONK p-lookup,我们可以绕过这个问题,让开发者可以直接编写和部署私有应用。
Anna (13:15):
如果有人想了解更多关于信任设置的内容,去年我做了一系列关于迄今为止所有信任设置的节目。我认为自那以后,至少还有Plumo,我也在这个项目上帮忙。所以这是一个新的信任设置,如果有人想尝试,信任设置有点麻烦,但也很棒,因为你深入技术,真正为隐私做出贡献。
Adrian (13:39):
说实话,信任设置最大的问题是你需要大量不相关的参与者,理想情况下你不想反复做这些设置。如果你能高效地完成一个通用的信任设置,并对此非常有信心……
Anna (13:54):
完全同意。让我们来谈谈易货系统。你在介绍Anoma时提到过这个概念,涉及不同资产的交易。易货交易,比如用牛奶换面粉,物体换物体,没有美元作为中介。告诉我这在Anoma里是什么样的?
Adrian (14:18):
是的,在其他命令式系统(如EVM)中很难实现,因为账户模型的结构不合适。但在Anoma,账户模型的构建方式是先应用所有状态变化,然后将结果状态传递给所有相关账户,账户只需验证是否接受这些变化。这使得对多个账户的状态变化计算非常高效,因为每个账户的验证可以完全并行进行,互不依赖。传统系统中,执行是逐步进行的,比如“合约1执行一些步骤,然后调用合约2”。在Anoma,所有状态变化先发生,然后所有账户同时被调用,确认是否接受结果状态。这让我们可以构建一个非常灵活的N方易货系统。N方易货的意思是,比如Alice有BTC想换ETH,Bob有ETH想换DOT,Charlie有DOT想换BTC。传统上,无法同时满足这三个需求,我们称之为“意图”。但在Anoma,我们可以直接处理这三个意图,原子化地结算,消除了对单一流动对(如USDT)作为中介的需求。
Anna (16:03):
我有一个关于价格和定义的问题。你们是如何确定这些的?有Oracle吗?你们会将价格锚定到某种东西上吗?
Adrian (16:15):
资产通过IBC或其他互操作协议流入Anoma,具体用什么协议并不重要。当资产进入Anoma后,你只需定义你个人愿意以什么价格进行交易或结算。然后有一个“撮合者”(matchmaker)角色,会查看系统中流动的数十万意图,找出哪些可以组合在一起并在链上结算。
Anna (16:46):
那有基础货币吗?有什么基础价值可以用来锚定?
Adrian (16:53):
没有,完全不锚定。当我提交意图,比如我有BTC想换ETH,我会说“我愿意以这个价格或更好的价格交易”。另一个人可能说他们愿意以某个价格或更好的价格用ETH换BTC。这些意图在系统中流动,撮合者会查看并说:“这两个意图是兼容的,我来组合它们并在链上结算。”
Anna (17:14):
这是一对一的交易,比如ETH换BTC,BTC换ETH。但当你谈到易货交易,涉及其他资产并打包在一起时,如何确定价值?
Adrian (17:26):
这就是为什么我们说“重新定义货币”。我们不需要一个基础货币。如果你的意图是“BTC换ETH”,它实际上附带了一个用户设定的汇率;另一个意图是“ETH换DOT”,也有一个汇率;第三个意图是“DOT换BTC”。每个人都有自己定义的愿意交易的汇率。如果有三个这样的意图,你不需要逐一结算,可以直接说:“同时结算这三个意图,每个人都能以他们愿意接受的价格或更好的价格得到想要的东西。”最棒的是,这不仅限于三方,可以是上千人,交易最随机的资产,比如本地货币、气候变化承诺、CO2证书等,因为它们不需要与基础货币挂钩。这是一个高度通用的系统,让人们可以有效地与他人做生意。
Anna (18:27):
我们在之前与Gnosis的Martin Köppelmann的节目中谈到了“需求重合”(Coincidence of Wants)概念,因为他们有CoW协议。我在研究Anoma时看到你们提到不遵循这个模型,不是基于需求重合。
Adrian (18:45):
是的,我不知道Gnosis具体怎么用这个,但我们不依赖于两个人必须有完全相同的“需求重合”。可以是三个人或N个人,他们的意图集合整体上是重合的。在传统市场中,这总是双向的,比如我想用鸡换牛,必须找到一个正好相反需求的人。在Anoma,你可以找到一群人,他们的意图集体满足所有人的需求。
Anna (19:19):
如果我想抛售一个没人想要的垃圾狗币,会发生什么?
Adrian (19:28):
那你的意图永远不会被结算。如果没人想买你卖的东西。
Anna (19:32):
所以我可以把意图放上去,但没人会接受。
Adrian (19:37):
正是。顺便提一下架构,Anoma系统中可能有数亿个意图在流动,但它们不会在链上结算。只有那些被匹配的意图才会上链。比如,市场做市商可能会每半秒更新一次价格,发送新的意图,更新最新的可行价格,有人看到后说:“我喜欢这个价格,我来链上结算。”
Anna (20:13):
作为一个参与者,我需要提供两样东西吗?比如我想给什么和想要什么?还是说我提供我要给的东西和一系列我愿意接受的东西?
Adrian (20:26):
都可以,完全取决于你。你可以把意图看作一个函数,描述你愿意接受的状态转换。你可以说:“我愿意接受巴塞罗那Imagine Dragons演唱会的两张票,或者三个蓝色Crypto Punks,或者一个BTC,或者它们的组合。”这由你决定。你写意图时,定义一个接受函数,说明你愿意接受什么。很酷的是,这不仅限于交易。你可以开始做集体承诺,比如“如果网络中有一定百分比的人同意用1%的交易费用来隔离大气中的CO2,我们就一起做。”我们称之为“集体承诺”。
Anna (21:25):
隔离碳,我知道Cosmos生态系统里有一个协议在做这个,比如……
Adrian (21:35):
哦,Regen。他们的方式不同,他们试图识别谁在环境损害方面做得好。Anna (21:43):
明白了。那么,如果有这些碳信用,它们需要由第二个实体发行,可能是NFT?我在想象这个例子是什么样的。
Adrian (21:55):
Anoma不做资产发行。你可以做,但这不是协议擅长的领域。像以太坊这样的平台非常适合资产发行,Anoma提供的是在你拥有这些资产后,通过这些资产达成一致的能力。碳隔离还很遥远,我们需要更多基础设施,更多供应链上链,数据需要可用,我们需要更好的Oracle系统。
Anna (22:23):
但最终可能会实现?
Adrian (22:26):
当然,最终这是目标。一旦全球经济运行在数百万个区块链上,数据可以在它们之间自由流动,我们可以设计出色的计算来激励人们正确的行为。
Anna (22:39):
这属于DEX(去中心化交易所)的范畴吗?你会把它放在那个领域,还是别的?
Adrian (22:48):
如果你简单地看,Anoma在推出时的第一个用例可以看作一个混合器(mixer),几乎是一个跨链混合器,因为你可以为所有连接的资产获得完美隐私,无需转移它们。多资产屏蔽池可以提供这种隐私。其次,你可以把它看作一个DEX,但也不完全是。DEX是可以在Anoma上构建的最简单的应用。你可以在Anoma上构建一个DEX,协议完全支持,但长期来看,这远不止是一个DEX。这是一个通过任意状态转换函数达成一致的方式,而不仅仅是“我想交易一个比特币”。
Anna (23:32):
明白了。它本身是一个权益证明协议吗?有验证者群体吗?
Adrian (23:41):
是的,Anoma是权益证明的。
Anna (23:43):
基于Tendermint吗?
Adrian (23:45):
权益证明系统不是基于Tendermint。我们使用Tendermint共识,可能会在推出后替换为HoneyBadger或Heterogeneous Paxos。但整个系统是从头开始写的,只是恰好使用了Tendermint共识,因为它是出色的共识机制。我觉得大家试图重新发明共识很奇怪。2017年那会儿,大家甚至能靠共识算法筹资,真是奇怪。
Anna (24:17):
你们会有一个验证者社区。这个社区是完全去中心化的吗?还是有较小的群体?
Adrian (24:34):
不,Anoma是一个完整的层一协议,有一个可能由100人或更多组成的验证者集合,运行去中心化的Anoma协议。他们可能同时运行撮合者或订单簿操作者,但核心是运行一个权益证明系统,为任何人提供私密的、资产无关的数字现金和N方易货交易。
Anna (25:00):
明白了。我问这个是因为最近我做了一系列关于L2的节目。我在想,谁不是L2?所以我在想你们是否会改变验证方式,不仅仅是基础链上的验证者,还可能是某种连接点。
Adrian (25:19):
是的,我对L2有很强的看法。当前大家都在试图构建自己的围墙花园。Cosmos、Ethereum、Polkadot都在做同样的事,每个人都说:“互操作性?当然,但仅限于我的围墙花园。”这就像早期互联网的AOL说:“我的互操作性在我的花园里是最好的。”我认为这长期来看没有意义。未来可能会有成千上万的区块链,通过现代快速终局性BFT连接,L1和L2的区别会变得很模糊。L2继承了现有系统的工程缺陷,但从可用性上看,与一个可互操作的L1相比,优势不大。所以我认为未来很多东西会变成独立的L1。
Anna (26:35):
我感觉现在越来越多的问题是,我们知道L2和其他L1桥接到其他L1是不同的,它们提供不同的定价和能力,但都在试图解决类似的问题。目前还不完全清楚哪种模型会胜出。
Adrian (26:56):
我认为现在很多人觉得要么赢要么输。但我认为整个市场比大多数人想象的要大得多。不是“以太坊会击败比特币吗?”而是“我们都可以共存,因为我们都有独特的价值。”对L2来说,它们的核心是从L1继承安全性,所以你没有自己的安全模型。早期人们认为没人会愿意把ETH转移到另一个L1,因为安全模型完全不同。但我认为大多数人并不在意,因为大多数L1的安全性都很好。L2在以太坊上存储状态根的劣势在于工程自由度大大降低。我不确定用户会关心,因为从用户体验角度看,转移到以太坊上的L2还是另一个L1,感觉是一样的,都要通过桥。
Anna (28:03):
我想回到隐私话题。我们已经谈到了一些使用Sapling的内容,很多东西都是私密的,但我想重新审视一下,现在我们更了解易货系统和其他部分。隐私是如何实现的?是所有操作都在屏蔽环境中进行吗?还是有些部分非常私密,有些部分不是?我知道在资产转移时,很难在每一层都实现完美隐私。所以我很好奇,隐私具体在哪里?
Adrian (28:38):
这取决于你使用哪种有效性谓词。多资产屏蔽池只是Anoma中众多有效性谓词之一。在多资产屏蔽池中,你几乎可以获得完美的转账隐私或混合隐私。但比如在交易中,我们也在编写私有交易电路,有些信息可能是隐藏的,有些可能是公开的,因为你需要公开一些信息来发现交易对手。未来,人们可以部署更多不同隐私保证的有效性谓词,甚至可以是非隐私保护的,比如他们想实现一个自动做市商(AMM)作为有效性谓词。这也行,你不一定要有隐私,这些只是用户可以交互的有效性谓词。当然,我们有一个“意图传播系统”,人们会说:“我想用比特币换以太坊。”问题在于,在交易结算时,人们透露了多少信息。长期来看,实际商务大多是物理发生的。你不会向全世界宣布你想买比特币,而是通过本地网络连接自动沟通和协商价格,然后直接私密结算。你可以有私有子网,不公开所有意图,或者仅在进一步自动协商中逐步透露更多信息,但仅限于点对点层面。
Anna (30:16):
这听起来像是一个私有场外交易(OTC)?Adrian (30:19):
可以这么看,但这不重要。
Anna (30:21):
你用了“有效性谓词”这个术语,你说多资产屏蔽池是一个例子,另一个可能是AMM结构或基于订单簿的DEX之类的东西。或者纠正我一下,什么是有效性谓词?这个术语对我来说还不完全清楚,属于这个范畴的是什么?
Adrian (30:50):
是的。有效性谓词是系统中每个账户关联的一个谓词。比如,你在Anoma持有原生资产XAM,它在一个账户中,这个账户关联了一个有效性谓词。最简单的形式可能是:“你需要一个私钥的支出授权来移动它。”但你可以升级它,比如说:“如果我移动100美元以下,可以用这个密钥签名;如果移动100万美元,需要三个不同的密钥签名。”
Anna (31:24):
但这些不是SNARKs,对吗?不是与证明相关的部分?
Adrian (31:29):
不,完全正确。比如,你可以说你的有效性谓词只接受特定的证明。你部署的有效性谓词是一个验证器,验证那个证明。多资产屏蔽池就是这样实现的:它的证明验证器作为一个账户部署在Anoma上。每次你想通过多资产屏蔽池发送资产,你向那个有效性谓词提交一个证明,它会验证并说“是”或“否”。这意味着可以有多个多资产屏蔽池,我们也可以无缝升级,比如部署多资产屏蔽池2、3,作为系统中的独立有效性谓词。
Anna (32:15):
在这种情况下,可以有完全没有隐私的有效性谓词模型吗?
Adrian (32:20):
当然可以。
Anna (32:20):
所以隐私不是强制性的。隐私更多是在你正在开发的第一个有效性谓词中,是核心功能之一,对吗?
Adrian (32:30):
是的。比如,Polkadot通过桥接进入Anoma,因为它有高效的轻客户端。DOT代币在系统中是一个独立账户,拥有一个验证Polkadot轻客户端证明的有效性谓词,验证你在Anoma上两个账户之间发送DOT时,供应量是保持不变的。
Anna (33:04):
明白了。Anoma技术栈中还有其他地方涉及隐私吗?
Adrian (33:10):
是的,可能不是长期隐私,但至少是短期隐私,用于防止抢先交易(front-running)。我们还在开发一个叫Ferveo的分布式密钥生成协议,验证者集合共同构建一个公共密钥,每个验证者本地持有一个密钥分片,然后用分片解密,组合足够的解密分片后得到最终结果,即解密的交易。在其他系统中,提交交易时,观察内存池的人会有信息不对称优势,比如你可能说愿意交易某个资产,这在区块最终确定前是公开的。在Anoma,用户将交易加密到验证者集合的公共密钥,区块只对加密交易进行排序。作为区块提议者,我看到一堆加密交易,竞价费用,但我不知道交易内容。下一区块(N+1)中,验证者联合解密这些交易,然后执行,防止抢先交易。
Anna (34:34):
但它们已经被排好队了,放入区块时仍加密,因此无法进行类似矿工可提取价值(MEV)或Flashbots的抢先交易。
Adrian (34:49):
是的,当你看到交易内容时,它已经被排序,你无法回溯更改顺序或插入自己的交易。
Anna (34:58):
我把它想象成一个队列,但可能不完全是。交易在解密前是加密的,什么时候被包含?包含时还是加密的吗?还是在包含时解密?
Adrian (35:17):
让我解释一下。Anoma网络有一个验证者集合,共享一个公共密钥,每24小时生成一次。作为用户,我想从账户A转账到账户B,我构建交易并在提交给任何全节点前加密。然后我将加密交易提交给全节点,它进入内存池,只显示可以支付的费用,但不知道交易内容。假设现在是第10区块,区块提议者看到一堆加密交易,放入区块。验证者集合通过BFT达成一致,第10区块最终确定,包含这些加密交易。然后,验证者开始为这些交易提交解密分片。下一区块(N+1)提议者使用所有解密分片,包含解密的交易,但不是为了排序,而是为了执行。
Anna (36:36):
NuCypher不也是分布式密钥生成吗?我感觉是,但不知道是否用在这个场景。
Adrian (36:45):
不同。NuCypher允许生成由多方持有的密钥,更多用于像共享比特币密钥的场景。在Anoma的Ferveo,解密阈值遵循BFT阈值,需要三分之二的诚实多数,防止单个验证者抢先交易。
Anna (37:21):
这听起来很像Osmosis的Dev和Sunny在做的工作。有联系吗?
Adrian (37:31):
是的,我们在与Sikka合作开发这个协议。
Anna (37:31):
我提到这个是因为最近我们在Cosmos生态系统中举办了一个活动,展示了与隐私相关的项目。我会添加Dev在那个活动上的演讲链接,因为有一些可视化内容可以说明这些。现在这个协议处于什么阶段?是理论上的吗?
Adrian (37:51):
已经完全实现了。
Anna (37:53):
太好了。所以这是已经工程化的,实际运行的东西。
Adrian (37:59):
是的,不是理论上的“五年后可能实现”。它现在就有效,只是需要集成到基础层。这几乎无法改装到现有基础层,因为它从根本上改变了执行流程。这也是为什么我们无法在其他生态系统上构建Anoma,交易执行、提交和传播的结构完全不同,允许我们构建非常不同的应用。
Anna (38:42):
现有的POS系统可以通过重大升级纳入这个吗?
Adrian (38:47):
当然,任何POS系统都可以变成另一个POS系统,因为都是开源的。
Anna (38:54):
但验证者可能不高兴,工具可能也不兼容。
Adrian (38:58):
就像Google可以变成Facebook,技术不是火箭科学。但大多数人不会这样做,因为要维护旧系统,社区可能不喜欢。
Anna (39:12):
有没有针对工作量证明(POW)系统做类似工作的?我们一直在讨论验证者。
Adrian (39:20):
这对POW无效。因为在POW中,你事先不知道矿工是谁。在POS中,我们有验证者的公钥列表,这是必须的,因为每个验证者需要生成私钥分片。
Anna (39:36):
所以这是一个非常POS的解决方案。
Adrian (39:39):
是的。这也是为什么POW会继续存在于简单应用中。比特币很酷,因为它提供了一个难以偏见的全球稳定时钟。但创新来自POS,因为协议更灵活。Ferveo还提供安全的随机性,不需要像VDF那样的特殊硬件。这是协议运行的副产品,我们目前没有具体应用,但它可用。
Anna (40:30):
很好奇。可以用这个回到核心吗?
Adrian (40:36):
其他共识算法用随机性选择验证者,我不是很喜欢。
Anna (40:41):
不会是那样的。
Adrian (40:44):
也许未来可以用在POS系统和共识机制中。
Anna (40:51):
你提到过意图传播(intent gossip)。我想在易货系统和多个池的背景下再谈谈这个。传播通常是消息传递,对吗?但在这个系统中如何工作?有什么不同?
Adrian (41:16):
好的,让我解释一下意图传播系统如何工作。它是一个撮合系统。在Anoma,人们不仅可以提交直接上链的交易,还可以提交意图,需要与其他人协调,比如交易或共同应对气候变化的协议。意图是任意的,它们在意图传播系统中流动,在上链结算前,人们会寻找可以匹配的意图。这对Anoma的升级系统也很有用。
Adrian (42:03):
Anoma以分形方式升级,这意味着我们没有其他系统的二元切换。在二元升级中,新软件突然上线,控制巨额价值,但没有在测试环境外逐步增加价值的测试。在Anoma,你可以部署新协议版本,资产慢慢迁移到新版本,因为分形实例是可互操作的。从主账本启动新版本,资产逐渐迁移,最终进行二元切换,迁移剩余状态。意图传播系统是全局的,覆盖所有实例,包括旧版本和未来版本。
Anna (43:11):
这意味着交易也可以跨实例进行?
Adrian (43:14):
是的,交易可以在分形实例之间进行,流动性也是如此。否则,流动性会绑定到某个分形实例,升级几乎总是二元的,但在Anoma不是强制性的,你有一个全局传播层。
Anna (43:36):
我忘了问,所有实例都运行轻客户端吗?是这么设计的吗?
Adrian (43:44):
是的,它们通过IBC或其他互操作协议连接。我有点纠结于人们认为互操作协议专属于某些系统。互操作协议应该是中立的,Anoma支持任何设计良好的互操作协议。如果两年后出现更好的协议,比如UDP,Anoma也会支持。分形实例也通过相同的互操作协议连接。
Anna (44:33):
分形实例可以是不同类型的区块链吗?比如UTXO模型、账户模型?还是需要一定的基线一致性?
Adrian (44:50):
Anoma协议可能会发生根本性变化,但我不认为会变成UTXO或不同的账户模型,因为交易执行和隐私与这个通用的账户模型紧密相关。我也不觉得有理由这样做。UTXO明显更差,现有命令式执行的账户模型也是如此。
Anna (45:16):
那我们来谈谈不同的账户模型。Anoma是像以太坊那样的吗?
Adrian (45:25):
有账户,但NEAR或Polkadot比Anoma更接近以太坊。这些系统的账户和智能合约是命令式执行的,你调用一个智能合约,从第一条指令开始,逐步执行,可能调用另一个合约,可能是同步或异步调用。在Anoma,先计算状态变化,然后同时传递给所有有效性谓词。这些谓词不进行计算,而是验证是否接受状态变化,比如“我失去一个比特币,得到10个ETH,满意吗?”这就是模型。
Anna (46:24):
每个账户都有一个有效性谓词,是提交的还是用于验证的?
Adrian (46:30):
每个账户都有一个有效性谓词。创建账户时,必须附上一个有效性谓词,用于验证。
Anna (46:50):
以太坊的模型是怎样的?更像是编写……
Adrian (46:54):
在以太坊,你调用一个账户,执行其中的代码,但代码看不到最终状态,只是逐步执行计算,比如5+5,调用另一个合约,移动代币。Anoma更像是函数式系统,以太坊是命令式的。
Anna (47:25):
Anoma项目目前处于什么阶段?是测试网、模块组装,还是激励化的?
Adrian (47:37):
Anoma已经很成熟了,不是研究阶段,是否可行的疑问已解决,研究已经完成,现在专注于实现。我们正在运行第一个内部测试网,希望在未来四周左右启动公共测试网,今年晚些时候可能会有激励化测试网。
Anna (48:14):
也许现在说还早,但你有想突出或主推的第一个用例吗?
Adrian (48:21):
是的,第一个用例肯定是多资产屏蔽池,为人们提供极佳的隐私保证,无论他们持有何种资产。人们低估了这一点,目前在我们的领域几乎不可能做到。比如,你想屏蔽一个CryptoKitty,根本不可能。在Anoma,你的CryptoKitty可以和你的USDT咖啡支付享有相同的隐私集。后续用例可能涉及交易或AMM,尤其是私有易货。
Anna (49:12):
我想退一步问,CryptoKitty的例子让我想到一个问题。如果是基于以太坊的CryptoKitty,进入Anoma需要锁在以太坊上吗?是这样工作的吗?
Adrian (49:27):
是的,桥接通常是这样工作的。你将资产锁定在接收方的验证者集合中,他们为你铸造资产。如果有人想返回,你在Anoma侧销毁资产,验证者集合在以太坊侧解锁。未来我们应该做一期专门讲桥接技术的节目。
Anna (49:50):
绝对同意,桥接话题最近经常被提到。
Adrian (49:58):
我可以给你一个小预告:桥接不会赚很多钱。
Anna (50:03):
你怎么知道?
Adrian (50:04):
因为从Anoma到NEAR的桥接几乎没成本,只是发送双方都有的数据。没人会为从Anoma到NEAR转移资产支付1%的费用。对于传统链如比特币、ETH、Monero、Zcash可能不同。
Anna (50:22):
NFTs呢?
Adrian (50:22):
取决于NFT在哪里。如果在以太坊,可能有成本。但如果在NEAR,转移到Anoma很简单。
Anna (50:32):
好的,这个话题我们下次再深入探讨。阿德里安,感谢你来节目分享Anoma和相关思考。人们可以参与或了解更多吗?他们该去哪里?
Adrian (50:55):
当然可以。Anoma.network 是第一站,我们有研究博客,解释了很多底层技术,我们会发布更多技术栈的说明。还有白皮书,全面解释了Anoma,不长,大概八页。
Anna (51:16):
其实是14页,我最近看了。
Adrian (51:21):
好吧,14页,别告诉大家!先把他们吸引进来……我们一直在寻找优秀的工程师。如果你对隐私、将隐私带给大众、为所有资产提供隐私感兴趣,请联系我,邮箱是 adrian@anoma.network。你也可以在Twitter上找到我们,Anoma Network。公共测试网即将在未来四周左右上线,加入我们的Discord,期待你的参与。
Anna (51:48):
再次感谢阿德里安。也要感谢播客制作人Andrey,编辑Henrik,以及我们的听众。谢谢。