Sapphire推出、钱包优化、多维度更新 | Oasis 第三季度工程技术回顾

欢迎来到Oasis团队2022年第三季度的工程技术进展总结,让我们一起通过本篇文章了解Oasis团队在第三季度取得的最新成就!

对于Oasis工程技术团队来说,第三季度又是异常忙碌的几个月。

7月底,Sapphire在测试网上发布,为了将Sapphire引入ParaTime层,我们做了许多努力,也取得了巨大进步,现在我们很高兴的向社区宣布:开发者已经可以在测试网上的Sapphire ParaTime上构建和部署与EVM兼容的隐私智能合约了。

与此同时,我们对Cipher和Emerald的关注也丝毫没有减弱,这些ParaTime并没有停止运作,并且我们对其进行不断更新,以满足用户的更多需求!

另外,我们在支持钱包浏览器上的本地存储以及ParaTime交易方面也进行了一些重大升级,这些升级将进一步推动Oasis 钱包浏览器拓展程序端2.0版本的推出!它将是基于通用代码库构建的!

最后,整个第三季度Oasis Core(Core是为Oasis节点提供动力的底层引擎)也在持续更新与改进,目前三个维护版本也已经完成!

在第三季度硕果累累的丰收喜悦中,我们也开始规划第四季度的工作,我们相信Oasis在2022年第四季度也将取得重大进展,有更多更新!最值得关注的是,我们将在第四季度在主网上发布Sapphire!

一起继续往下阅读,了解更多Oasis在第三季度取得的成就!

钱包更新

Oasis网页端钱包在第三季度取得了重大进展,现在已支持浏览器上的本地存储和ParaTime交易,另外我们计划在今年晚些时候发布对ParaTimes的支持,并推出基于通用代码库构建的拓展程序端钱包2.0版本。

在第二季度,我们合并了112个请求, 值得一提的优化内容如下(主要为功能的完善和修复):

● 显示 ParaTime 交易列表 ( #849 )

● 浏览器扩展修复 ( #904 )

● 添加 lint 规则以强制执行我们的类型安全替换(#911#914

● 默认为空余额而不是 0(显示「 — 」表示未知余额)(#916

● 仅在您的账户上显示:AddEscrowForm( #918 )

● 标记失败的交易(#925

● 不要使用 RPC 中的误导性余额字段(#927

● 添加「回收所有」按钮(#931#932

● 优化钱包UI界面(#933#935#936#937

● 使用 BigNumber.js提高数值精度(#952

● ParaTime 存款和取款(#962#969

● 在解除质押列表中显示预计解除质押时间 ( #963 )

● 将加载网络配置的速度提高 40% ( #976 )

● 修复从 Ledger 导入多个账户 ( #980 )

● 添加对从助记符派生多个账户的支持(#983

● 在账户摘要中提及正确的股票代码 ( #1026 )

● 通过一致的grommet imports减少包大小(7.2MB -> 5.4MB)(#1038

● 较小的 UI 修复和清理(#868#879#903#919#921#922#928#946#947#949#953#958#999#979#1019 , #1049 )

虽然Oasis网页端钱包很快就会成为两个钱包的通用代码库,但是我们对拓展程序端的关于与也没有因此而止步,在三季度我们合并了9个需求,并发布了拓展程序端钱包的1.8.0版本,显著的变化有:

● 在测试网上添加Sapphire(#279

● 提高收回托管中的数值精度(#281

● 轮询Sapphire交易状态(交易现在被索引)(#285

● 修复「无效随机数」错误(#282

● 较小的 UI 修复和清理(#280#282#286

作为一个用于管理你在 Oasis上账户和智能合约的统一CLI,Oasis CLI也有了一些改进:

● 添加对转储已部署 WASM 合约的支持 ( #1007 )

● 添加合约状态转储支持 ( #1034 )

● 按账户名查找地址,添加对测试账户的支持(#1038

● 支持更改合约升级政策 ( #1052 )

● 添加对地址簿的支持(#1087

为了使用 Ledger 等硬件钱包签署 ParaTime 交易,我们已经提出了新的ADR 14规范。该规范将于四季度实施!

ParaTime更新

● 整个第三季度,Emerald 和 Cipher ParaTimes 在主网上保持稳定,没有出现停机或其他事件。

● 熊市对 DeFi 使用的影响可以从 Emerald 的交易量中看出。第三季度的日峰值出现在 7 月初,每天大约 6 万笔交易,而后开始稳步下降,截至三季度末,每天的交易量为 1.6 万-1.8 万。

● 截至 9 月 30 日, 52 个节点在主网上运行 Emerald ParaTime。

● 截至 9 月 30 日,已有 29 个节点在主网上运行 Cipher ParaTime。

ParaTime发展

第三季度,Oasis ParaTimes 取得了多项重大进展。

7 月底,我们在测试网上成功部署了与EVM兼容的首个隐私ParaTime Sapphire,该部分代码可在sapphire-paratime和oasis-sdk GitHub存储库中找到。

为方便起见,我们添加了对Cipher ParaTime上转储部署的智能合约代码以及转储(可选加密)智能合约状态的支持。这为验证链上的合约铺平了道路。

Runtime SDK的更新总结如下:

● 为 web-ts 添加加密传输库;用于 go、rust 和 typescript 的 derived_symmetric_key 测试(#962

● ORC 工具:添加对 SGXS 二进制文件签名的支持 ( #1056 )

● EVM:不需要加密空字符串(#1064

● Gas 计算修复:修复子调用调度(#1066

● EVM:在签名查询中公开公共数据 ( #1069 )

● EVM:添加加密预编译(#1102

● EVM:不编码合约创建输出(#1138

● 改进的测试和文档(#991#1041#1046#1047#1081#1101

开发者平台更新

现在开发者已经可以在测试网上的Sapphire ParaTime中构建和部署与EVM兼容的隐私智能合约了,你可以点击下方链接查看教程!

Emerald Web3 网关现在支持 Emerald 和 Sapphire ParaTimes。其他修复主要包括版本的更新及功能的完善。在第三季度,我们合并了 9 个请求。版本v3.0.0修复了Gas估算功能,版本v3.1.0-rc1增加了对 Sapphire 的支持。

我们的文档由来自多个存储库的markdown文件组成,并且在第三季度从后端和前端方面进行了重大改革。前端类别文档现在更关注用户观看体验,可读性更强!

前端改进:

● Oasis网络用户(关于 Oasis 网络和基金会的一般信息,钱包相关指南)

● 社区相关信息

● 节点运营商(Mainnet和Testnet网络参数,设置各种节点和服务)

● dApp 开发人员(为Sapphire、Emerald和Cipher ParaTimes编写应用程序)

● ParaTime 开发人员

● Core贡献者

后端改进:

● 无论原始存储库位置如何,都支持编辑任何 Markdown 文件

● 无缝链接引用的 .md 文件和来自其他存储库的.doc文件

● 支持从文件中导入代码片段

● 为了向后兼容,已为所有以前的文档设置了重定向

此外文档已从docs.oasis.dev迁移到docs.oasis.io域。我们希望你会喜欢新的变化。你也可以留下你的需求,我们会第一时间处理,当然我们也欢迎广大用户贡献Oasis相关的教程与指南!

你可以点击下方链接留言你的需求。

Core平台更新

第三季度发布了Oasis Core 22.1.x 的三个维护版本( v22.1.9v22.1.10v22.1.11)。与此同时,Oasis Core 22.2.x 的开发始于英特尔 SGX2、基于 DCAP 的证明、改进链上治理和基于 TEE 的运行时安全性等关键特性。计划在第四季度初发布稳定版本。总体而言,第三季度合并了64 个请求。值得注意的新功能和重大更改如下(大部分计划在 Oasis Core 22.2.x 中登陆,有些被向后移植到 22.1.x):

● go/staking/grpc:重命名错误命名的 GovernanceDeposits 方法(#4652

● go/runtime:强制使用运行时调度控制(#4665

● 添加对 PCS 证明的支持(#4806#4789#4720#4752

● go/governance:添加更改参数提案(#4938

● 添加存档模式支持(#4539

● go/control:在控制输出中显示调试选项状态(#4634

● runtime:使持久交易检查状态可配置(#4640

● go/runtime/txpool:限制每个发件人的未完成交易(#4665

● go/control/status: 添加字段以快速查看节点状态 ( #4669 )

● go/worker/storage:使检查点同步对等点选择更智能(#4671

● runtime:使用共识验证器在调度程序中验证 epoch ( #4677 )

● go/worker/compute:确保在注册之前验证信任根(#4678

● go/worker/compute:为备份工作人员尽早开始批量解析(#4679

● go/runtime/txpool:将 roothash 传入消息的数据添加为交易(#4681

● go/worker/registration:添加节点状态指标(#4686

● runtime:启用调度程序来验证查询的状态完整性(#4694#4830#4904

● go/worker/common/p2p:添加对持久和阻塞对等点的支持(#4713

● go/worker/common:正确处理动态密钥管理器配置(#4715

● go/runtime/txpool:为被拒绝的运行时交易添加 txpool 指标 ( #4724 )

● runtime:在服务请求时验证 RAK 处于共识状态(#4741

● runtime:添加对报告 EnclaveRPC 对等反馈的支持 ( #4757 )

● 归档模式:如果使用归档模式,则禁用运行时 P2P ( #4775 )

● go/consensus/tendermint: 添加consensus.tendermint.halt_height ( #4793 )

● net-runner: 添加-fixture.default.runtime.version 标志(#4813

● go/oasis-node: 允许 km 拥有私有节点 ( #4821 )

● go/runtime/registry:允许客户端节点运行 sgx 运行时(#4832

● go/worker/keymanager: 添加关键管理器工作指标 ( #4877 )

● go/control/status:将 key manager worker 状态添加到节点状态(#4883

● keymanager:添加对临时密钥的支持(#4888

● oasis-net-runner:设置默认 max_allowances,增加测试账户余额(#4902

● runtime/consensus/verifier:支持信任根共识层升级(#4903

● runtime:支持共识交易查询(#4904

● keymanager:验证密钥管理器请求中的最新信任根高度(#4910

● registry:添加 ProveFreshness 共识层交易(#4916

● runtime:添加客户端节点 TEE 新鲜度验证(#4922

● keymanager:验证策略是否已在共识层中发布(#4925

● 将 TEE 证明绑定到节点并强制执行新鲜度 ( #4926 )

● go/genesis: 缓存计算的 genesis 文档哈希 ( #4919 )

● go/oasis-node/cmd: unsafe-reset 默认保留本地存储 ( #4700 )

● go/oasis-node/cmd: unsafe-reset 检查 datadir 有效性(#4702

● runtime: 将运行时日志作为 oasis-node 日志发出 ( #4709 , #4924 )

新的Oasis Indexer支持索引共识层和 ParaTime 交易,已开源。在第三季度,重点主要是构建基本功能、添加缓存、修复错误和改进部署工具。25 个需求 已合并。我们计划在未来更新 Oasis 钱包以使用 Oasis Indexer。

ADR 15提出了一种随机化 Paratime 块提议者顺序的机制。解决选择 ParaTime 块提议者的过程中的弱点。区块提议者目前是通过循环算法选择的,这使得提前确定给定区块的提议者变得很简单。

ADR 16提出了一种更有效的流程来更新 Oasis 网络上的共识参数。目前要更改共识参数,需要更新 oasis-node 二进制文件,重新启动它们并与新的共识网络版本重新同步。ADR 16 添加了一个新的参数更改 提案,可以防止停机并提高网络的稳健性。

ADR 17为特定于 ParaTime 的应用程序互操作性标准引入了标准格式。 这与我们第一个请求 Sapphire ParaTime 的隐私可替代代币标准的 RFP 相一致。

Subscribe to Oasis 中文频道
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.