Aptos 是一条以安全和扩展性为主的的区块链。
原文标题:《投资者洞察:Aptos ——属于下一代 Web3.0 用户的新公链》(Portfolio Insights: Aptos)
撰文:Allen Zhao, Mustafa Yilham, Henry Ang,Jermaine Wong
编译:Evan Gu,Wayne Zhang
Bixin Ventures 很高兴宣布战略投资基于 Move 的高性能公链 Aptos,此轮融资是延续今年 7 月下旬 Aptos 团队宣布的新一轮融资。本轮融资由 FTX Ventures 和 Jump Crypto 领投,Apollo、Animoca Brands、Griffin Gaming Partners、Franklin Templeton 、Superscrypt、Circle Ventures 跟投,上一轮投资者 a16z 和 Multicoin 也继续参与此轮投资。我们希望引入更多的战略合作伙伴来促进 Aptos 生态的发展,扩大使用场景,同时推动开发者社区的建设。我们也欢迎希望在 Aptos 上部署产品的创业者与我们联系,共建 Aptos 生态。
一条以安全和扩展性为主的的区块链
Aptos 是一条全新的 L1 区块链,愿景是帮助数十亿人以公平、去中心化、无需许可的方式创建资产和访问网络。Aptos 也被誉为 Diem 的「亲儿子」,Solana 联合创始人 Anatoly 甚至认为相比其他的 EVM 区块链,Aptos 才是 Solana 的直接竞争对手。Aptos 由 CEO Mo Shaikh 和 CTO Avery Ching 共同创立。CTO Avery Ching 曾是 Meta 内部最著名的 Diem 区块链的技术负责人。 在加入 Meta 之前,Mo 曾在 Consensys、BlackRock 和波士顿咨询集团工作,而 Avery 则在雅虎工作。 Aptos 团队的其他成员由博士、研究人员、工程师、设计师和战略专家组成,他们曾入职过 Meta、Novi、Amazon、VMware 等企业。
在本文中,我们将介绍 Aptos 之所以能实现高 TPS 的原因以及如何确保安全性,之后再介绍即将推出的路线图,最后我们也会告诉大家如何进入即将发布的主网。
一、性能
Aptos 区块链旨在充分利用任何可用的硬件,并且使用并行执行事务的方法提升自身性能,目前能达到超过 160k TPS 和亚秒级的区块确定性。 Aptos 良好性能的关键是能够使用批量交易将交易层与共识协议分离来将交易生命周期模块化、并行执行引擎 Block-STM 以及新型状态同步机制来减少确定区块的时间。
1. 通过可用性证明实现批量交易(Batched Transactions)
在交易发送的过程中,验证者将把交易分组为批次,并在达成共识后合并进区块。执行、存储和账本认证都是批量处理的,这种操作可以优化排序体系,减少操作步骤和并行执行。
事务处理生命周期
交易以批次的形式在验证者之间传输。 之后,验证者将在每个批次摘要上签名,在收集到超过⅔验证者的签名时会形成可用性证明 (PoAv)。 PoAv 确保交易批次将由至少 ⅓ 诚实的验证者存储在本地,之后他们可以在执行之前检索交易批次。 因此,交易过程中可以仅使用每个块中所需的批处理元数据和证明进行排序,从而提高交易 TPS 并最大限度地减少确定区块的时间。
但是,连续的批量交易传播可能会引发 DDoS 攻击,从而导致验证器内存不足并崩溃。 针对此问题,Aptos 将每批交易都附带一个时间戳,以帮助验证者进行垃圾交易收集,这样做也有助于释放内存。
点击此处阅读有关批量交易、交易传播和区块排序的更多信息。
2. 并行执行引擎:Block-STM
Block-STM 是一种高效、多线程的并行执行引擎,理论上高达 160k TPS。 与其他并行执行技术相比,Block-STM 预先声明了所有依赖项,避免对事务造成限制或强制将其分解为小部分,Block-STM 可以在预设的事务顺序内检测访问冲突,从而提取最多的事务处理。
以下是 Block – STM 的关键特征:
- 乐观并行控制(Optimistic Concurrency Control):交易会以 Optimistic 的方式执行,并在执行后完成验证。 如果验证不成功,事务将被重新执行,所有关联的事务都需要重新验证才能被提交。
- 多版本数据结构:对同一位置的所有写入与其关联的版本一起存储,以避免每次有新事务时发生同时写入的冲突
- 验证:在执行期间,事务被分为读集和写集。 在验证期间,读取集合中的所有内存位置将返回的版本与写入集中的相应版本进行比较。
- 协作时间表:通过基于计数的方法协调线程之间的验证和执行任务。
- 动态依赖估计(Dynamic dependency Estimation):所有失败的验证都将导致一个「ESTIMATION」值记录在关联写入集的多版本数据结构中。 这将确保所有未来的事务在继续之前将等待任何依赖关系确保得到解决。
总的来说,Block-STM 使用协作调度器和多版本数据结构来估计预先设置的事务顺序的依赖关系并减少中止情况。然后 Block-STM 会使用一系列原子计数器来确保可以提交整个块。
可以点击此处获得更多关于 Block – STM 的信息。
3. 状态同步
状态同步是 Aptos 架构设计的关键,以下是他们的关键特性:
- 完成时间短:通过节点之间数据的快速传播,从而减少事务处理的时间
- 最新共识:通过将崩溃或新的验证者带到最新的区块链状态
- 数据正确性:防止恶意行为者修改或审查网络中的数据;
- 更加去中心化:通过提高轮换活跃验证者集的频率,以及允许更多节点在更短的时间内上线。
- 可升级性:验证节点的管理和配置通过链上状态进行从而实现快速和可升级性
为了构建这种状态同步协议,Aptos 必须确保能够:
- 持久存储:防止机器故障并通过 RocksDB 实现数据分发
- 可验证的区块链:通过验证器验证已提交交易的默克尔根和结果状态
- 信任基础,防止恶意修改区块链数据。
从而允许验证者随时通过创世块(第一个验证节点集 + 初始区块链状态)和受信任的路径点(当前验证者集的哈希值 + 区块链状态)同步到区块链。并且 Aptos 可以以超过 10k TPS 的速率与其他节点(例如完整节点或其他验证节点)进行状态同步,具有亚秒级的区块确定性和适度的硬件要求。
- 数据预取:通过在处理之前预取交易数据(交易 + 状态增量)来减少网络确定区块的时间
- 流水线执行和存储:通过分离事务执行和存储持久性来增加同步的 TPS。
- 对等监控:通过对行为、与验证者集的距离和本地评分的对等监控,在请求新的区块链数据时优化对等选择。
- 数据缓存:通过在内存中存储通常请求的数据项和响应来减少存储的读取负载
- 存储清理:通过从存储中删除不必要的交易和区块链数据来防止存储随着时间的推移而膨胀。
Aptos 团队为了匹配 Block-STM 而实现 100K+ TPS,已经确定了接下来要进行的优化:
- 批处理事务:通过验证批量交易与单个交易的证明来减少昂贵的验证和存储
- 网络压缩:通过压缩传输的数据和序列化的数据分布来优化带宽以实现可扩展性
- 更快的存储写入:通过使用更高效的数据结构和存储配置或备用存储引擎来减少将区块链数据写入到存储的时间
- 并行数据处理:通过分片或其他方法启用并行数据处理与顺序状态同步
点击此处阅读有关 Aptos 上状态同步的更多信息。
二、安全性
1. 智能合约编程语言 – Move
Move 最初是由 Facebook 开发的用于编写安全的智能合约。它与平台无关,支持跨区块链的共享库、工具和开发人员社区。Move 语言的设计强调安全性,旨在避免许多 Web3.0 用户受害的情形,包括但不限于重入漏洞(re-entrancy vulnerabilities)、毒令牌(poison tokens)和欺骗性令牌批准(spoofed token approvals)等问题。
为了提供额外的保护,Move 可以用 Move Prover 验证工具辅助开发,该工具允许开发人员为其应用程序的关键特征编写正式规范,并使用验证器在 30 秒内检查代码的执行正确性。
Move 的最大优势是其资产的数据模型,它允许高度可组合性。Move 资产是任意用户定义的类型,这意味着资产可以作为参数传递,存储在其他资产中,更重要的是,资产可以跨合约边界自由移动而不会失去其完整性。这与用 Solidity 编写的 EVM 类型的 资产形成鲜明对比,它们永远被困在了定义它的合约中。
Aptos 通过适配器层扩展了核心 MoveVM 的附加功能,其中包括通过 Block-STM 实现的并行执行,无需用户进行任何输入即可并发执行事务。
与 Solidity (38.4K)、Rust (68.9K)、Ink!(950)、Cairo(786) 相比,Move Github 存储库虽总共有 264 颗星。目前的开发采用率较低 。但随着 Aptos 的发展,我们愿意持续关注并跟踪该语言的使用情况。
点击此处阅读更多关于 Aptos 上 Move 语言的信息。
2. 共识机制:AptosBFT
Aptos 的共识机制源自最初为 Diem 设计的 HotStuff 协议,该团队已经对它进行了它第 4 次迭代。以下是 AptosBFT 的关键机制:
- 拜占庭容错
- 网络在获得超过⅓ 恶意验证者同意才可能被威胁
- 一旦得到>⅔的验证者的确认,就保证交易已经完成
- 协议的活跃性与安全性分离
- 只要 Aptos 的 BFT 共识一直存在,网络就不会分叉
- 防止网络上的 DDoS 攻击
- 基于信誉的领导系统
- 使用最后提交的状态跟踪活动验证节点
- 分析链上状态并自动轮换领导节点以适应无响应的验证者情况
- 最大限度地减少停机时间的影响
点击此处以更深入地了解 AptosBFT。
此外,Aptos 团队还在其他研究团队的工作产品上测试其下一代协议——包括 Narwhal & Tusk、Bullshark 以及更先进的衍生产品。
3. 密钥恢复和轮换协议
Aptos 将支持任何账户轮换其私钥,其中包括验证者的共识密钥,以此减少密钥被盗的可能性。 该团队还在研究可以直接集成到区块链帐户模型中的关键恢复方法。 这将确保任何货币价值都不会因密钥丢失而损失,并会降低新加密用户进入区块链世界的门槛。
4. 公开透明的交易预签名
Aptos 将提供服务,在交易签名方面为用户提供预防措施。在签署交易之前,交易结果将以人类可读的形式显示,让用户了解他们授予的权限。 加上以前的恶意攻击和智能合约的存储库,将有助于减少欺诈事件的发生。
三、发展路线图
测试网
Aptos 已经制定了他们的测试网路线图,为强大的主网发布做准备。下表涵盖了关键目标和重要时间表:
测试网提供了许多有价值的内容,使我们进一步相信主网的推出将会很稳健。以下是团队从过去的测试中得出的一些问题和应对措施:
在编写本文时,已记录了参与者在 AIT3 中的性能快照,节点可以自由脱离设置。AIT3 已被转换为一个长期运行的测试网,为开发人员提供了一个稳定的环境。开发人员设置长期运行的测试网表明了对软件堆栈长期稳定运行的信心,为后面主网的成功启动做了一个铺垫。
在主网之后,团队将在第四季度运行 AIT4,以进一步进行压力测试,并向更多验证器开放网络。我们将持续关注项目的进展。
四、Aptos 资助计划
Aptos 资助计划已于 6 月底宣布推出,并提供资金来加速 dApp 生态系统的发展。 资助产品的细分赛道包括:
- 开发人员工具、SDK、库、文档、指南、教程
- 用于系统开发、治理、DeFi 和 NFT 的工具和框架
- 核心协议贡献:代币标准、库、协议升级等。
- 开源和公共产品
- 指南方面的产品
点击此处了解有关申请标准、指南和审核流程的更多信息。
五、生态现状
由于 Aptos 是一个非 EVM 链,因此可能存在关于它如何在生态系统内引导流动性的问题。在合作伙伴和投资者的帮助下,全链互操作协议 Layerzero 将在 Aptos 主网发布后接入其中,使得用户可以通过 Layerzero 进入 Aptos 生态,为 Aptos 提供流动性。目前 Layerzero 支持的区块链有以太坊、Optimism、Arbitrum、Binance Smart Chian、Avalanche 等。
项目方面,Aptos 核心存储库中有超过 2,100 个 fork 和 3,800 个 star,现在有超过 200 个跨 DeFi、NFT、游戏领域等项目希望在 9 月底左右部署在主网上。
以下是一些有意思的项目:
Pontem Network
Pontem 是 Aptos 生态系统中的早期项目之一,包括一个钱包和一个已上线的 AMM。 作为他们路线图的一部分,他们打算构建一个 Move VM(用于跨链部署)和一个与 Move VM 兼容的 EVM(用于与其他区块链的互操作性)。
Martian Wallet
Martian Wallet 是一个加密钱包,它可以帮助用户管理数字资产和访问 Aptos 区块链上的 dApp。 它们将来可作为 Chrome 扩展程序和 iOS 应用程序使用。 截止 8 月底,下载量已超过 100,000 次。
Switchboard
Switchboard 是一种无需许可、可定制的多链预言机协议,用于通用数据的投喂和可验证的随机性。 他们在 Solana 上直播并且近期在宣布了他们在 Aptos 上的 devnet。 Switchboard 已经集成了一些值得注意的项目,比如 Tusnami Finance、Houston Swap 和 Econia Labs。
Econia
Econia 是一个运行在 DecNet 上高并行 DEX,采用的是链上订单簿的模式进行交易的撮合,由于同意采用了 Aptos 的并行执行引擎 Block-STM,在交易速度和效率方面有着显著的优势。
Topaz
目前处于内测阶段的 Topaz 是 Aptos 网络上的第一个 NFT 市场,为 NFT 创作者和艺术家提供了一个创作的平台。
Ditto Finance
Ditto Finance 是 Aptos 的一个安全的去中心化流动性质押平台。 目前 Aptos 上缺乏本地委托,它为无法运行验证器的用户提供质押收益。
Hippo Labs
Hippo Labs 正在为 Aptos 生态系统构建一个聚合层,包括的功能有交易聚合器、各类交易所、文字传输、交易模拟 API 等
六、结语 & 思考
Aptos 专注于构建快速、安全、可扩展和可升级的 L1 区块链。尽管 Move 编程语言的安全优势已得到充分证明,但开发者生态系统仍处于初期阶段,这可能会影响 Aptos 上 dApp 生态系统的发展。在更广泛的层面上,L1 领域竞争激烈,随着诸多高性能 L2 的出现,对开发人员的吸引方面存在激烈的竞争,而这将影响生态系统的建设和随后的市场采用。
然而,3 月份启动的 Aptos Devnet 的成果令人鼓舞,有超过 200 个涉及 DeFi、NFT、游戏等领域的项目要求部署在主网上。此外,6 月启动的 Aptos 资助计划将会进一步激励开发人员增长和加速 dApp 的开发。
总体来说,我们认为团队有能力实现他们的愿景。最近上线的激励性测试网也证明了团队在非常积极主动的解决问题。我们也将持续关注项目的经济模型等信息。
如果您是 Aptos 网络上的创业团队,或是希望在 Aptos 上部署您的产品,欢迎随时跟我们联系,一起交流!
附录:完整节点和验证节点要求
请注意:上图是撰写本文时的要求,这些要求可能会随着时间发生变化
Aptos 的完整节点并不参与共识。相反,这些节点重新执行 Aptos 区块链历史中的所有交易,并将结果存储在本地,当检测到验证器的任何违规行为时,他们将使用这些结果进行质疑并提供证据。
验证器节点运行分布式共识协议,同时执行事务并在本地存储结果。他们可以决定包含哪些交易以及以何种顺序执行。然后,BFT 共识协议用于验证节点,以商定最终交易的分类账和执行结果。然后将其传播到完整节点,这些节点便可以执行其验证的流程。