Sui Lutris: 结合DAG和无共识实现高吞吐低延迟的区块链新协议

自比特币诞生以来的十年间,区块链技术取得了显著进步。随着游戏和NFT等新应用场景的兴起,区块链社区不断探索提升技术效率的方法,尤其是在处理高负载和实现实时延迟方面。L1区块链面临两大主要挑战:一是在保持低延迟的同时实现高吞吐量,二是确保共识协议的长期稳定性。在应对这些挑战时,还需通过验证节点的动态参与和重新配置来维持去中心化。

提高吞吐量的一种方法是采用基于DAG的共识协议。这类协议使区块链能够同时处理大量交易,非常适合游戏和NFT等应用场景。然而,基于DAG的协议通常会导致几秒钟的延迟,对于普通转账或游戏操作而言,这种延迟成本较高。

另一方面,无共识协议在减少延迟和扩展性方面展现出巨大潜力。这些协议消除了对共识的需求,允许快速处理交易,无需对并行处理的独立交易进行总排序。但是,它们仅限于一类受限的简单区块链操作,限制了可实现的智能合约功能,且对动态变化的验证者集进行重新配置可能具有挑战性。

尽管这些方法潜力巨大,但目前都未在生产级区块链中得到应用,仅停留在学术会议发表阶段,未被区块链社区广泛采用。Sui Lutris是一种支持Sui的协议,它结合了基于DAG的共识和无共识方法,实现了两全其美:亚秒级延迟和每秒数千笔交易的持续吞吐量。Sui不仅完成了这两项任务,还保持了在共享对象上表达复杂合约、生成检查点以及跨时期重新配置验证者集的能力。

深入研究Sui Lutris,了解Sui Network高性能的秘密

Sui Lutris采用了一种独特的方法,将上述两种方案结合起来。为确保单一所有者资产(拥有的对象)操作的安全性,系统在验证者之间采用了一致的广播协议,从而实现低于共识的延迟。Sui Lutris仅依靠共识来处理在共享对象上运行的复杂智能合约,即任何用户都可以改变的对象。此外,Sui Lutris还支持网络维护操作,如定义检查点和重新配置验证器。在复制的拜占庭环境中处理交易时,这种创新策略提供了两全其美的解决方案。

Sui Lutris中的交易生命周期如下:拥有私钥的用户创建并签署交易,以改变他们拥有的对象,或他们拥有的对象和共享对象的混合体。交易被发送到每个Sui Lutris验证节点,验证节点执行一系列有效性和安全性检查,对其进行签名,并将已签名的交易返回给客户端。客户端收集来自绝大多数验证节点的响应以形成交易证书,此时交易可被认为是不可逆的。

证书组装完成后,将被发送回所有验证节点,验证节点检查其有效性并向客户确认收到。如果交易涉及独占对象,交易证书可以立即处理并执行,无需等待共识引擎。所有证书都转发到基于DAG的共识协议。共识最终输出证书的总顺序;验证节点检查并执行包含共享对象的那些交易,客户可以收集绝大多数验证节点的响应,将它们组装成一个效果证书,并将其用作交易结算的证明。随后,为每个共识提交形成检查点,这也用于驱动重新配置协议。

除主要交易流程外,Sui Lutris还提供了多项支持生产级区块链的功能:

  1. 在达到最终确定性后实施检查点协议,生成系统中所有交易的因果历史。这用于完整审计,以及以高效方式保持完整节点和滞后验证节点同步。

  2. 支持在每个时期结束时进行重新配置,此时验证者集及其投票权可能会发生变化。为确保所有最终交易都包含在一个纪元中,每个纪元都需要仔细关闭并确认最终安全性。

  3. 解决了以往无共识协议中,当存在漏洞的客户端双花资产时导致资产永久锁定的问题。Sui Lutris在epoch结束时安全地"解锁"错误锁定的资产,将bug造成的损害降到最低。

Sui Lutris为用户提供了管理大量价值的区块链解决方案。完整的技术报告详细介绍了安全和活性协议的运行方式,以及它们在标准分布式系统模型中与部分同步的拜占庭参与者的安全性证明。

此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 3
  • 分享
评论
0/400
GasFeeSobbervip
· 07-15 15:32
dag?还不如用pow
回复0
HashRateHermitvip
· 07-15 15:32
谁懂共识才是真的..纯干货
回复0
NotAFinancialAdvicevip
· 07-15 15:21
dag也不咋样嘛 几秒都扛不住
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)