基于UTXO生态系统的Perun通道

文章详细介绍了Perun通道框架在UTXO生态系统中的应用,强调了其在提升区块链可扩展性、降低交易成本和增强隐私方面的潜力。通过与其它扩展解决方案的比较,展示了Perun通道在UTXO区块链中的独特优势。

由 Jan Bormet 和 Marcel Kaiser 撰写

摘要

在本文中,我们提供了 Perun Channel Framework 在 UTXO 生态系统中当前状态的全面概述。借鉴我们在之前集成项目中的专业知识,我们讨论了 Perun Channels 的实际应用和好处。此外,我们将 Perun 与其他可能不具备相同程度的 UTXO 兼容性的可扩展性解决方案进行了比较。最后,我们探讨了我们相信将塑造区块链技术下一波采用的账本上的 Channels 潜在应用。

动机、背景和应用

Channels 已成为一种有前景的解决方案,能够在区块链网络上实现可扩展和安全的交易。本文深入探讨 Channels 的角色和潜力,特别关注其在基于 UTXO(未花费交易输出)区块链中的运作原理。

传统的区块链交易通常面临可扩展性限制和高交易费用。Channels 通过在参与者之间建立链下交易通道来解决这些挑战,使他们能够进行多次交易,而无需给基础区块链带来负担。通过减少对链上交易的需求,Channels 实现了更快速且更具成本效益的交易,进而改善了可扩展性和用户体验。

基于 UTXO 的区块链依赖于未花费交易输出的概念来管理交易状态。在 Channels 的背景下,可以利用此模型实现高效交易。参与者创建一个通道合约实例,并将其资金锁定在特定于通道合约的输出中。一旦通道获得资金,他们可以在彼此之间进行无限次的免费链下交易。这些交易会修改通道的状态,同时保留底层区块链的安全保障。对于 Perun 已经有充分的证据表明该 协议是安全的

他们只需要在想要关闭通道并赎回资金时重新与通道合约和锁定的资金进行互动。

参与者可以在通道内自由交易,并且可以在任何时候将最终状态结算在链上。这种灵活性和安全性使得 Channels 成为微支付、重复交易和机器对机器交互的理想解决方案。

Channels 的采用为区块链生态系统本身带来了多种好处。Channels 实现即时交易最终性,因为交易发生在链下,不必立即等待底层区块链的确认。此外,Channels 显著降低了交易成本,因为参与者可以避免为通道内的每笔交易支付链上费用。这种成本效益使得此技术对需要低延迟、频繁或小额交易的应用特别吸引。

Channels 还促进了隐私,因为大多数交易发生在链下,减少了外部观察者对交易细节的可见性。这个增强隐私的特性对优先考虑数据保密性和用户匿名性的应用至关重要。

此外,Channels 解锁了新的用例和商业模型,使创新应用如微支付、游戏平台、内容订阅服务和去中心化金融(DeFi)协议得以实现。通过利用 Channels 的潜力,区块链生态系统可以简化交易流程并提高效率。

因此,channels 可以在改善区块链的交易机制方面发挥关键作用,通过增强可扩展性、降低成本和改善隐私。Channels 在基于 UTXO 的区块链中的运作原理为安全和高效的链下交易提供了一个有前景的框架。Channels 准备改革各个行业,并释放去中心化应用的全部潜力。

Perun Channels 在基于 UTXO 的区块链中的集成

  • 基于账户的区块链通常具有单实例合约。在基于 UTXO 的区块链中,用于消费输出的执行脚本通常与输出一起指定。虽然具体实现取决于具体基于 UTXO 的区块链,我们遵循将通道智能合约一次性部署在链上的范式。如果一组参与者现在选择开启通道,他们将在一个或多个输出中实例化通道智能合约,引用可能参数化的 Perun 智能合约代码。与基于账户的 Perun Channels 主要区别在于,在 UTXO 中每个通道都是其独立的合约实例作为输出,而在基于账户的链上,所有通道都存在于一个单实例合约中。
  • UTXO 的设计在这方面更具优势,因为它提供了不同通道实例之间更清晰的分离。不同通道的资金锁定在不同的输出中,每个通道的状态存在于其自身的输出中。
  • 在我们为 CKB 实现的 Perun 中,我们部署了三个独立的脚本,perun-channel-type-script (PCTS)、perun-channel-lock-script (PCLS) 和 perun-funds-lock-script (PFLS)。
  • 在通道开启时,通道参与者发布了一笔包含通道智能合约作为输出的交易。该输出的类型脚本是 PCTS 的一个实例,参数化为处理这个确切的通道实例。它管理通道的状态以及状态转换、资金、关闭等的控制逻辑。它还负责存储:通道的常量,例如参与者,存储在脚本参数中,变量数据如通道状态存储在与通道单元对应的交易数据字段中。通道单元由 PCLS 实例锁定,基本上将与通道的互动限制为通道的参与者。最后,通道通过将资金锁定在特定于该通道的 PFLS 实例所锁定的单元中进行资金支持。
  • 各方通过消费活动通道单元与通道进行互动,并在输出中反映互动后的新通道状态(例如,以相同 PCTS 但更新数据的新通道单元的形式)。PCTS 根据 Perun 协议验证互动的有效性。
  • 各方可以通过消费活动通道单元和锁定到 PFLS 的通道资金来关闭通道,可能跨越不同的输出,并在交易的输出中相应地支付给通道参与者。再次,PCTS 在这个互动时被执行,并验证交易根据 Perun 协议的有效性。
  • 有关更多细节,请查看 https://medium.com/perunnetwork/perun-channels-coming-to-nervos-ckb-1d72081ee887

展望:潜力和应用领域

支付通道网络

Perun,名字源于日耳曼雷神,受 Bitcoin 的闪电网络启发。Perun 也被设计为能够扩展大规模支付通道网络。如果广泛采用,这些网络可以强有力地促进我们在去中心化生态系统中的互动。对于 Perun 可以提出一个强有力的案例。Perun 的虚拟通道(参与者之间仅间接连接的通道)充当了一个缺口填补者,使实现双向支付通道向完整通道网络的过渡成为可能。

实时游戏与应用

Perun 状态通道(对 Perun 支付通道的扩展)可以运行任意逻辑和合约。由于其轻量级架构,Perun 可以实现超低延迟。因此,通道也可以用于在时间维度上扩展应用。这一特性可用于 P2P 游戏。我们已经在 EVM 链上以及 Polkadot 上实现了状态通道,它们有演示版本。

互操作性

通道不仅是时间和经济维度上可扩展性的绝佳工具,还可以用于互联不同区块链生态系统的兼容通道部署。实际上,Perun 通道允许跨 Rollup 和跨链的通信和交易。然而,必须指出的是,我们在使用 Perun 实现跨链功能的早期阶段。

钱包集成

为促进通道在各个使用案例中的使用,无缝集成到现有钱包中至关重要。这种集成确保通道使用对所有用户变得方便和易于访问。我们正在积极寻找钱包提供商的合作伙伴关系,以试点这一集成并探索 Perun 能力的潜力。如果你有兴趣合作并试点这一创新解决方案,我们希望听到你的消息。

go-Perun SDK:抽象与应用

在 CKB 上实现的 Perun Channels 具有独特的属性,使其与其他通道实现区分开来。

一个关键特性是通道的唯一性,每个活动通道都由一个包含通道类型脚本、锁定脚本和状态的单一单元(即一个单元或 eUTxO 或相关概念)表示。这确保了通道的状态不分散在多个单元中,每个通道都存在于自己的单元内。

通道状态由多个组件组成,如 ChannelID、各方之间的余额分配、IsFinal 位和版本号。这些字段对于理解协议至关重要,可以在我们的文档中进一步探索。

除了通道状态外,链上智能合约还维护无常、不可变的信息,如方的标识符和争议时间锁长度。还可能有可变的辅助状态来跟踪资金和通道的状态机,但这些细节与 Perun 协议本身分开。

例如,在 CKB 的情况下,一个通道由交易中的一个活动通道单元表示。紧邻通道单元,可能有 UDT 单元由 PerunFundsLockScript 锁定,用于识别用于通道资金的资产。

PerunFundsLockScript、PerunChannelLockScript 和 PerunTypeScript 的脚本代码是预先部署的,每个脚本接收唯一参数以识别特定的通道。

这种 Perun 通道的结构确保了有效的操作,并实现了 Perun 网络内的安全与可扩展交易。然而,这种结构不一定是 UTXO 链上唯一可能的通道逻辑。

与其他 Layer-2 解决方案的比较

Perun Channels 提供了一种独特的方法,在基于 UTXO 的区块链上实现链下交易,与 Rollup 和 Plasma 等替代 Layer-2 解决方案相比,提供独特的特征和优势。

通道技术特别适合在基于 UTXO 的区块链上实现,因其固有特性。相反,为基于 UTXO 的链设计高效的 Rollups 存在多个挑战。

基于 UTXO 的链对于通道的一个关键优势是能够高效处理多个状态更新。在基于 UTXO 的通道中,每个通道都有其独特的合约实例,允许并行处理状态更新。这种并行性确保通道的可扩展性不因单个合约实例处理所有状态更新而受到影响。相比之下,Rollups 通常面临在处理多个状态更新时的挑战,因为它们通常依赖单个合约实例处理所有更新。这可能导致显著的延迟问题,尤其是在大量用户撤出 Rollup 时,可能会严重影响高流量协议信息的性能。这在 DeFi 协议发生事故时尤其麻烦。

此外,基于 UTXO 的链为高流量协议提供的优势可能在 Rollup 实现中无法充分实现。在基于 UTXO 的通道中,独特的合约实例允许优化处理和有效处理交易,即使在状态更新数量众多的情况下。这对于具有高交易量的协议尤其有利,因为它们可以利用基于 UTXO 的通道提供的并行性来保持性能和响应能力。

一个值得注意的细节是,Perun 状态通道,也常被称为应用通道,提供了一个基于账户的 Layer 2 (通道)账本抽象到基于 UTXO 的 Layer 1 区块链。其他通道协议如 Cardano 上的 Hydra 具有基于 UTXO 的 Layer 2 通道账本(他们实际上甚至声称 Layer 1 和 Layer 2 是同构的)。在我们所知的范围内,没有明显的优越或更可取的变体,但添加基于账户的通道协议提供基于账户的 Layer 2 抽象到一个以 UTXO 为基础的 Layer 1。这样可能有助于将历史上设计用于基于账户链(如 Ethereum)的区块链应用程序、DApp 和智能合约迁移到所有提供这种基于账户的 Layer 2 抽象的 UTXO 区块链。

结论与展望

本文展示了 Perun 框架如何在基于 UTXO 的区块链上实现可扩展和安全的链下交易,并论证了为什么基于 UTXO 的区块链通常适合此目的。Perun 协议利用状态通道使参与方能够在链下进行大量交易,同时保留底层区块链提供的安全保证。

我们概述了 Perun 协议的技术细节,包括通道的构建、通信和结算协议以及争议解决机制。我们描述了 Perun 如何通过减少参与者所需的链上交易数量来实现可扩展性,从而缓解拥堵并降低交易费用,尤其是在通道网络(或 Perun 虚拟通道)情况下。

此外,Perun 还拥有安全特性,如防止欺诈行为和能够以公正和去中心化的方式解决争议(裁决)。如果你想深入了解通道状态,欢迎 查看我们的文档。它还涉及该协议的隐私方面,确保链下交易可以保持机密和安全。

我们设想 Perun Channels 作为各种使用案例(包括微支付、去中心化交易和多方计算)的可扩展和高效的解决方案。此外,文章承认正在进行的研究和开发工作,以改善和扩展 Perun 协议。它提到潜在的未来发展,如跨链交易的集成和探索先进加密技术以增强安全性和隐私性。

我们展示了一个全面的框架,以实现基于 UTXO 的区块链的可扩展链下交易。强调了 Perun Channels 的潜力,使其成为区块链可扩展性和隐私领域的重要贡献。

备注

如果你希望直接与我们联系以获取问题或反馈,欢迎通过电子邮件与我们联系 info@polycry.pt 或加入我们的 Discord!

本文受到 Nervos Foundation 的启发。我们对于持续的支持和合作表示感谢!

了解更多信息请访问 https://polycry.pt/ 和 https://perun.network/ 或加入我们的 Discord 服务器!

  • 原文链接: medium.com/perunnetwork/...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,在这里修改,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
perun.editor
perun.editor
江湖只有他的大名,没有他的介绍。