由 OneBlock+ 出品「Substrate 生态项目技术月报」,定期汇总整理 Substrate 生态各个领域项目的技术进展,涵盖了产品/技术重要提交、修改及发布,社区方案讨论,技术社区和生态建设,技术资料参考文档等方面,帮助大家快速了解 Substrate 生态项目的最新技术相关情况。本篇为第三十八期月报,Enjoy!

DeFi

Acala Network

Acala 正在为 Web3 金融构建自动捕获收益的可持续流动性层,旨在成为加密和现实世界资产的 HyFi(DeFi+CeFi)基础设施。Acala 多链资产中心 UAH(Universal Asset Hub)提供多链流动性质押(LST)协议,例如 LDOT 与合成资产 tDOT(DOT - LDOT)、AMM 以及与高度兼容且可定制的 EVM+(基于 Substrate)。Acala 网络的安全由 Polkadot 中继链支持,也是 Polkadot 平行链和 L1/L2 区块链的流动性网关。‍

一、重要递交、修改和发布

  • Acala 2.26.0 升级,支持 LDOT 持有人选举波卡验证人节点,增加更多 EVM precompile,以及 evm-tracing 的支持

    https://github.com/AcalaNetwork/Acala/issues/2809

  • Chopsticks 支持最新的 JSON RPC,兼容 polkadot-api

    https://github.com/AcalaNetwork/chopsticks/releases

二、技术方案讨论

XCQ 开发进度更新,实现了绝大部分 XCQ 程序的框架

https://forum.polkadot.network/t/cross-consensus-query-language-xcq/7583/18?u=xlc

三、技术文档资料参考

Bifrost

Bifrost(彩虹桥)是波卡生态 DeFi 基础协议,致力成为质押资产提供流动性的基础设施,是 Substrate Builders Program、Web3 Bootcamp 成员。其通证可在多场景下优化交易,起到质押权益的转让通道的功能,实现质押资产风险对冲。

一、重要递交、修改和发布

Runtime 0.14.0 (开发中)

  • Full Pallet Review & 优化

  • vTokenVoting 支持 vBNC 参与治理

DApp 1.9.2

  • 支持 EVM 地址进行完整链上操作

  • 支持 ETH 在 Assethub 与 Bifrost 之间的互跨

  • 新增用户订阅邮箱提示

二、技术文档资料参考

智能合约

MoonbeamNetwork

Moonbeam 是开发者友好型区块链,可实现完全兼容 EVM、Web3 的 API 兼容以及将 Moonbeam 连接到现有的以太坊网络的网桥。开发者可借助 Moonbeam,利用现有的以太坊开发者工具和网络,轻松实现跨链兼容。开发者只需基于自身开发成果稍作修改,即可轻松将现有的 Solidity 智能合约和 DApp 前端部署到 Moonbeam。

一、重要递交、修改和发布

Moonbeam v0.40.1

变更:

  • 修复检索包含超过 16 个主题的日志时出错的问题

  • 修复旧 Runtime 的 EVM 跟踪回归问题

Runtime 3102

仅适用于 Moonbeam,此版本仅包含针对 Moonbeam的变更,不会部署到其他网络

变更:

  • 将区块大小设置为 6000 万 Gas

  • 调整 ref time XCM 费用

  • 将 XCM 费用成本恢复为相当于区块前gas限制增加的值

  • OutOfGas 传播到外部调用,若是由 proof size 检查或 MBIP5 导致

  • 避免对具有高 PoV 或 MBIP5 成本的交易进行低 Gas 估算

Runtime 3200

XCM 指令权重应符合 EVM 外币资产要求

XCM 指令 WithdrawAsset、DepositAsset 和 TransferAsset 在处理 EVM 外币资产时成本更高

将区块大小设置为 6000 万 Gas

变更:

  • 修复由 Proof of Size 检查或 MBIP5 导致的 OutOfGas 传播到外部调用的问题

  • 避免对具有 PoV 或 MBIP5 成本的交易进行低 Gas 估算

  • 修复自动暂停 XCM:自动暂停时传入的 XCMP 消息被丢弃

  • EVM 外部资产:change_asset_location 不应删除已经存在的位置

  • 调整 ref time XCM 费用

  • 将 XCM 费用成本恢复为相当于区块前 Gas 限制增加的值

  • 添加对元数据哈希扩展的支持

  • 允许使用 EVM 外部资产支付 XCM 费用

  • 添加缺失的基准

  • 更新 rocksDB 权重

  • 删除过去的迁移

  • 添加延迟迁移以设置 EVM 合约元数据

二、技术方案讨论

三、技术文档资料参考

存储

CESS

Cumulus Encrypted Storage System (CESS) 是基于 Substrate 开发的高速、安全、可扩展的兼容智能合约的去中心化云存储网络基础设施,是第一个支持大规模企业级商业应用的去中心化分布式云存储网络。它由区块链、存储网络、内容分发网络和应用层四层网络架构组成。CESS 采用随机选取轮值共识节点机制来对网络资源和负荷进行协调,并通过多副本可恢复存储证明(PoDR²)、多类型数据确权(MDRC)、去中心化代理重加密等机制来保证数据的完整、安全、可溯源以及隐私性。CESS 将支持 WASM 并兼容 EVM 智能合约,以实现其为 Web3 和大型商业应用构建安全高效的去中心化存储网络。

一、重要递交、修改和发布

共识节点[v0.7.8-venus]

  • 完成交易代理转发 pallet 功能的开发;

  • 完成 EVM NFT 合约的测试,以及相关交易事件监听模块的开发;

  • 修复因数据包装格式不一致,导致无法验证 SDK 提交的数据签名的问题;

  • 完成跨链机制的测试,实现 CESS 与以太坊测试网的代币转移;

  • 完成新版本共识节点关键 pallet 的 benchmark 用例编写和测试;

  • 完成 CESS 链 RPC 节点的规范化部署和负载均衡策略配置;

  • 完成 CDN 网络缓存节点工作奖励协议 Substrate Ink! 合约的设计与实现;

存储节点 [v0.7.13]

  • 修复因闲置替换失败后状态未回滚导致节点工作异常的问题;

  • 完成新版本文件传输协议的文件上传/下载的测试;

  • 完善闲置空间证明模块的日志系统,为后续的升级维护提供有效的跟踪信息;

  • 完成数据传输模块的升级,消除了 P2P 发现机制对传输效率的影响;

  • 修复随机挑战时因服役文件数量与链上不一致导致挑战无法通过的问题;

  • 修复因 RPC 异常而无法有效领取挑战收益的问题;

  • 完成 P2P 传输模块的代码审查和优化方案设计;

  • 修复因缓存了失效密钥导致服役存储证明无法被有效验证的问题;

  • 修复因交易事件接收延迟造成闲置空间证明状态同步失败的问题;

  • 修复因挑战快照恢复失败造成无法生成闲置空间证明的问题;

TEE 节点 [v0.7.8-venus]

  • 修复闲置随机挑战验证模块因版本不匹配导致证明验证失败的问题;

CESS 以向 Web3 提供可落地的存储服务为使命,打造新一代对象存储服务(DeOSS)。当前 CESS 网络的产品生态逐渐丰富与繁荣,已孵化出在线文件分享工具(DeShare)、公链快照存储服务、 CESS 网盘等创新应用,欢迎前去体验。以下是本周进展:

对象存储服务(DeOSS

  • 实现文件传输和分发流程的状态监控和数据统计功能;

  • 完成 DeOSS 对新版本存储节点数据传输模块的适配;

  • 完成 DeOSS 对 annas-archive 项目超过 1TiB 数据的接入;

  • 升级文件上传和分发机制,提升文件分片(fragments)分发到存储节点的效率;

  • 升级 go-sdk 的交易发送机制,防止多交易并行提交时出现的交易批量失败问题;

  • 完成对 Http 协议分片上传机制的实现;

  • 优化断点续传机制,减少不必要的验证环节以提升响应速度;

官网(cess.cloud

  • 升级 CESS 官网架构,采用多种模式来减少崩溃问题,保持官网及各活动的稳定性

区块链浏览器(CESS Scan

  • 修复后台在删除文件事件时导致的区块信息停止同步问题;

二、技术文档资料参考

基础设施

Deeper Network

Deeper Network 致力于构建真正的去中心化因特网和安全网关。它旨在为每个家庭带来更好的互联网体验,并成为用户通往 Web3.0 应用的入口。

一、重要递交、修改和发布

1. GUI-Frontend:

  • 硬件钱包界面开发及前后端联调

  • 硬件钱包前端页面的开发已全部完成,目前正在进行前后端接口的综合联调工作。

  • 完成了 index.tsx、createWallet 组件、Feedback 组件、SEED PHRASE 组件的前后端联调,以确保各模块之间的无缝集成。

  • 进一步完善了 AddAccount、BackupMnemonic、BackupReminder、ConfirmAgrent、CreateWallet、ImportOptions、ImportViaSeedPhrase、VerifySeedPhrase 和 WalletDashBoard 等页面的接口联调,确保全局功能的一致性。

  • 新增 getWalletInfo、getWalletName、getCurrencyExchangeRates 接口,并针对 getAddress、addAddress、tokenList、balance 等接口进行了逻辑上的优化和功能增强。

  • 账户管理与 API 集成

  • 实现了增强的账户管理功能,优化了添加账户的流程,并在添加账户时加入了密码确认模态框以提高安全性。

  • 重构了添加地址的流程,确保与账户的关联操作更加直观和逻辑清晰。

  • 在 WalletDetailPage 页面中新增了钱包备注功能,通过新增的 API 支持用户在页面上对钱包进行注释管理。

  • 系统一致性与用户体验优化

  • 对网络名称的显示进行了统一,以确保不同页面间的网络信息一致性,提高用户体验。

  • 增加了钱包重命名功能,并在 WalletDetailPage 中新增备份检查功能,强化了钱包的管理和安全性。

  • 删除了原有的多钱包选择页面,改为单钱包流程,以简化用户操作路径。

  • 界面优化及功能增强

  • 解决了 Dashboard 页面在备份提示为 true 时引发的布局混乱问题,确保容器在各种状态下保持布局一致。

  • 更新并重构了 WalletDetailPage 中的图标按钮,优化了网络名称显示和箭头图标的旋转逻辑,提升了用户交互体验。

  • 集成了 BNB Chain 和 Solana 的 API,新增了相关的 SVG 图标,增强了跨链兼容性。

2. GUI-Backend:

  • 实施了 check password 的 hd-wallet 接口来增强密码检查的安全性和可靠性。

  • 新增了获取法币汇率的接口,并深入讨论了新地址生成与链之间的关系,确定了未来改进的接口方案。

  • 增加了与钱包信息相关的接口,包括钱包名称和各种网络派生地址的获取,以支持更复杂的账户操作。

  • 增加了账户相关的接口,涵盖了账户内多种网络的派生、路径生成,以及派生地址插入数据库的事务处理,进一步优化了账户管理。

  • 完善了账户内地址的添加、查找及名称更改的功能,确保操作简便且具有逻辑一致性。

  • 明确了网络名称的标准化规范,并相应地更改了数据库表结构和操作 SQL,以实现系统的一致性和灵活性。

3. Proxy-Wallet:

  • 增加了获取 BTC Runes 代币信息和 BTC Runes UTXO 的接口,进一步完善了对 Runes 代币的支持。

  • 成功测试了 Runes 代币的铸造(mint)操作,并详细研究了 Runes 的部署和转移细节,确保该功能在实际应用中的可行性。

  • 引入了从 exchangerate-api 获取法币汇率的接口,并通过缓存机制避免多次调用 API,以提高效率。

  • 定位并修复了用户获取信息错误的原因,确保数据的准确性和系统的可靠性。

4. HD-Wallet:

  • 集成了 BTC Runes 代币的铸造功能,完成了相关签名及交易生成操作。

  • 更新了可能与新功能产生冲突的旧库版本,新增了 check password 接口以替代原有的导出助记词接口,从而防止敏感信息泄露。

二、技术方案讨论

1. GUI-Frontend: 硬件钱包加密与解锁方案

  • 针对 WASM 加密 keystore 的技术进行了深入研究,探讨了其在硬件钱包解锁 (Unlock) 场景中的应用潜力。通过引入 WASM 以处理加密与解密操作,显著提升了系统在密钥管理过程中的安全性和性能。此方案的采用旨在减少敏感信息暴露的风险,并增强硬件钱包的整体防护能力。

2. HD-Wallet: 安全性与混淆代码技术的应用

  • 在解密 keystore 的函数中引入了代码混淆技术,以进一步增强代码的安全性,防止恶意逆向工程攻击。混淆代码通过使关键逻辑复杂化,有效提高了攻击者进行代码分析的难度。

  • 讨论并实现了钱包 keystore 文件的加密存储方案,对助记词和密码进行保护。在创建钱包的过程中,助记词和密码均被加密存储,以确保敏感信息的安全。

  • 在进行签名和派生地址等操作时,采用了动态解密和加密的策略,从而最大限度地减少敏感数据在明文状态下暴露的时间。

三、技术文档资料参考

Darwinia Network

Darwinia是社区驱动的技术和服务,为去中心化应用程序的跨链功能提供动力。

一、重要递交、修改和发布

协议更新

  • 允许代替其他人进行质押存单迁移。链接

  • DIP-7 上线之后,修复 KTON 资产权限。链接

  • 升级 Frontier 版本。链接

  • 发布 Darwinia v6.7.1.链接

  • Crab 已经开始升级使用 DIP-7。

  • Collator Set 增加时间戳优化。链接

生态更新

  • Darwinia 和 Pendulum 开通 HRMP 通道。链接

  • ParaLink,Msgport 以及 XAP 集成进入 RingDAO。

  • 在 Near testnet 和 Sepolia 上开发 xRING。

  • Awesome-darwinia 更新版本。链接

  • Darwinia Chain 重写 README。链接

  • RingDAO vote app 发布测试版本。链接

  • 修复 ParaLink 钱包连接问题。

  • Collator Staking V2 发布新版本。链接

二、技术文档资料参考

Wallet

SubWallet

SubWallet是适用于 Polkadot、Substrate 和以太坊生态系统的综合非托管钱包。以拉近用户与 Web3 的距离为使命,我们设想了一个 Web3 多元宇宙网关,用户可以通过它轻松、绝对安全地享受多链服务。借助 SubWallet 扩展程序、移动应用与网站仪表盘,连接和使用基于区块链的应用程序比以往更加顺畅。

一、重要递交、修改和发布

  • 添加了 Hydration 上的新交换对:DOT ↔ MYTH、WUD ↔ DOT、WUD ↔ HDX、vDOT ↔ vASTR 和 PHA ↔ DOT

  • 支持 DENTX 的应用内质押

  • 集成 8 个新网络和 5 种新代币

  • 为 Mythos 添加了新的 XCM 通道

  • 添加了新的 DApp:AVAIL Bridge和Mythical Forest

  • 支持 Ledger Polkadot 应用上的 Bittensor

  • 支持 Ledger Polkadot 应用上的 XCM 转移

  • 支持 Mythos Network、Polkadot Asset Hub 和 Hydration 上的 MYTH 代币

  • 支持将 MYTH 从 Mythos Network 跨链转移到 Polkadot Asset Hub 和 Hydration

  • 集成 Hydration 上的 MYTH 应用内兑换

  • 在 SubWallet DApp 浏览器中添加了 Mythical Forest DApp

二、技术文档资料参考