文章转载来源:Yangz
注:原文作者为 RainandCoffee,下文由 DeFi 之道编译。
过去几周,更广泛的 Cosmos 生态系统出现了复兴,因为应用程序和构建者要么决定构建自己的特定应用链,要么表达了这样做的兴趣。这发生在 Terra 生态系统消亡之后,一些应用溢出到了更广泛的 IBC 生态系统。我们认为值得注意的是,整个堆栈在技术方面都表现得非常好。尽管成交量变化非常大,但它能够通过 IBC 跨链处理内部和外部的消息和资产传输,也可以通过带有 Tendermint、ABCI 和定制虚拟机的 Cosmos SDK 内部链处理。在这篇文章中,我们旨在解释特定应用区块链兴起背后的理论,以及为什么它们带来的主权、可组合性和互操作性对于在未来周期中建立下一个“杀手级应用”和生态系统至关重要。
在我们深入研究这一论题之前,我们有必要达成共识,因此,我们将以一种易于消化的方式简要介绍一些使 Cosmos 生态系统独特的技术。
在使用 ABCI 和 Cosmos SDK 的基于 Tendermint 的链中,整体架构看起来如下:
Cosmos SDK 是一套模块化工具,允许区块链开发者以与虚拟机无关(VM agnostic)的方式构建其应用层逻辑。Cosmos SDK 被设计为通过 ABCI 连接到 Tendermint。除了作为允许创建特定应用区块链的框架,它还允许各种定制选项,如协议无关(protocol-agnostic)的治理、交易和质押机制等等。SDK 处理应用逻辑层所需的大部分任务,这意味着开发人员不需要完全从头开始构建。它通过路由处理从 Tendermint 共识引擎收到的交易,该路由将消息与状态变化一起发送到适当的处理模块。
ABCI 是连接区块链应用部分和提供共识和网络机制的 Tendermint 状态复制引擎的接口。ABCI 实现了区块链堆栈的拆分,这意味着区块链的应用部分可以是虚拟机无关的,因此,任何虚拟机和执行环境都可以用于堆栈的应用部分。这方面的例子有 Junowasm、Cosmwasm、Agoric 的 Hardened JavaScript,甚至 Secret 的 Cosmwasm 版本也允许使用 TEE。Tendermint 本身创建了三个 ABCI 与应用部分的连接。这些功能包括在 mempool 中广播时对交易的验证,应用程序和用于区块建议的共识引擎之间的连接,以及查询应用状态的能力。
Tendermint Core 负责 Cosmos 生态系统中的共识和网络层。共识层通过网络参与者之间的共识算法过程来保证交易的有效性和顺序,在 Tendermint 的情况下 -- 即权益证明设置中的验证者。网络层负责促进系统中节点之间的点对点通信,并使第三方应用程序和节点能够与共识层互动。
Tendermint 使用拜占庭容错(BFT)共识模型,并实现即时终结。BFT 过程在提议区块的最终承诺阶段之前经历了三个阶段。这三个阶段是:提议阶段,一个区块被指定在一个特定的高度;预投票阶段,2/3 的验证者对提议的区块进行预投票;预承诺阶段,2/3 的验证者对提议的区块进行预承诺。
区块链间通信(IBC)的核心是同质区块链的跨链信息传递协议。这意味着它连接了具有类似功能的链,在这种情况下,即时终结性由 Tendermint 共识算法和具有轻客户端功能的链提供。IBC 的运作方式是,两个有兴趣相互连接的链将在目标链上提出治理建议。这通常会首先通过 Cosmos Hub 或 Osmosis 进行(目前 Osmosis 有 45 个 peers,Cosmos 有 40 个)。这意味着在协议层面上有一个协议,因此,不需要外部桥中的可信第三方。
然后,这两条链需要对方链上的一个轻客户端来加密验证两条链之间的共识状态,还需要一个中继器在两条链上的轻客户端之间传递信息。中继器是有效性的要求 -- 即能够在节点之间交换信息,使节点成功达成共识的能力。
这意味着信任假设是在所连接的区块链的两个验证器组内,因此,与其他类型的桥和消息传递协议相比,信任假设要少得多。例如,在 Polkadot 生态系统中的 XCMP,信任假设只在于中继链(Polkadot)。
为了显示 IBC 在 Cosmos 生态系统中的兼容性和广泛性,以及它所连接的链的数量 -- 让我们看一下当前的实时连接图谱。
来源:mapofzones.com
ICS 是 Interchain Standard 的缩写,可为使用 IBC 的链之间发生的交易设定参数。ICS 基本上是 IBC 交易的模块规范。对于两个使用 IBC 的链来说,它们需要拥有相同的 ICS 规范。
一个更为有趣独特的 ICS 是 ICS-27,也被称为链间账户。
链间账户实现了可组合性,也就是互操作性。它们不仅允许链间数据交换,还允许写入状态。这意味着,只要指定交易的端点,用户将能够利用源链上的单一接口,而不是在资产或消息移动时要求在各种接口之间移动。支持 ICS-27 的链在其他支持 ICS-27 的链上创建账户,并能够通过 IBC 交易控制这些账户。链间账户保留了普通账户的所有功能,但由单独的链或最终用户通过 IBC 进行操作,这样,源链上的所有者对其在目标链上启用的任何链间账户保持完全控制。当初始化链间账户交易时,你可以利用 IBC 来发送非 IBC 交易(IBC 交易中的非 IBC 交易)-- 为了说明这一点,经常给出的一个例子是“盒子里的信封里的信”的概念。
IBC 交易后的程序是按照每条链所需具备的 ICS 规格发生的。这意味着,它允许交易从特定应用变成与应用无关,换句话说 -- 它实现了一系列不同网络间的真正可组合性。
链间安全允许一个链或 Hub 为其他链生产区块。验证者运行两个(或更多)节点,每个链上都有一个,但只需在主链上质押其原生代币即可。这是由跨链验证实现的,这是一个 IBC 级别的协议。子链使用 IBC 与主链通信,以跟踪哪些验证者使用跨链验证参与了链间安全。通过这种方式,从主链上锁定的质押价值中获得的安全性将与子链共享。因此,消费者/子链从主链上获得安全保障,而不需要建立自己的验证器组。这使得资本负担较轻的应用可以轻松地启动自己的链,同时保留现有验证器组的强大安全水平。
主链负责为一组子链生产区块。验证者将从他们正在验证的链上获得质押奖励。罚没则是为了减少验证者的恶意行为。
特定应用链实现了我们所说的区块空间的“仓库”。如果你把区块链堆栈看作是一个供应链,那么堆栈各个部分的区块空间在技术上被它所在的链/层上的应用“购买”。这意味着,它与无数在同一个区块空间的不同应用一起支付 Gas,而这也导致了高度拥挤和高度竞争,推动费用的上升。这种由数以千计的应用所在的严重拥挤的单体链造成的费用飙升,之后会被推到终端用户身上,他们不得不承担这沉重的费用。但在一个特定应用链上,应用本身能够更好地控制由终端用户支付的费用,并有能力将其保持在一个恒定的水平。这方面的一个很好的例子是 Osmosis。此外,它还可以让那些想要完全消除飙升费用结构的应用更容易地补贴费用。例如,一个应用程序可以补贴某一时间段的平均费用,而不必担心因严重拥堵而导致的费用飙升。
这意味着该应用拥有自己的仓库,而不用依赖出租一个角落里的一个托盘。
由于这样的应用不依赖 x 或 y 链作为仓库,这将意味着为应用承担平均费用较高的风险,类似于商店的库存风险。当然,这也意味着应用程序本身以及作为其延伸的社区,可以参与并进行库存风险管理。这会提高资源定价效率,从而为应用程序提供更好的经济模型。
由于应用程序是它所在链的所有者,允许对收费结构进行自我管理,这意味着你不再受你所在链的影响,你可以决定你的链上的每个资源的成本。
除此之外,底层技术栈所允许的灵活性允许在应用层进行优化,同时由于其原生的跨链信息传递系统,在更广泛的生态系统中保持链之间的可组合性。这种可组合性不需要对第三方进行信任假设,而是允许通信的两个链的验证器集作为信任假设。
在 Cosmos 盛行之前,应用和基础设施(链)之间存在着明显的鸿沟,而具有 IBC 的特定应用链打破了这一障碍,使应用成为连接和可组合的基础设施。
来源:Yangz
发布人:暖色
声明:该文观点仅代表作者本人,不代表火讯财经立场。火讯财经系信息发布平台,仅提供信息存储空间服务。
如文章涉及侵权, 请及时致函告之,本站将第⼀时间删除⽂章。邮箱:840034348@qq.com