Skip to content Skip to footer

钱包、ParaTime、开发者平台更新 | Oasis 第二季度工程技术进展


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

尽管最近加密市场的大环境并不是十分理想,但是为了保证用户的最佳使用体验,Oasis工程团队在过去的三个月依旧十分忙碌!

Oasis在Paratime部署方面的工作仍在继续,在二季度我们的工程团队齐心协力让一个与EVM兼容的新ParaTime启动并运行,它的名字叫做Sapphire。

我们的Oasis钱包(网页端)也有重大发展,未来我们将有一个在网页端钱包和拓展程序端钱包之间通用的代码库!

在开发者平台更新以及Core平台更新方面,我们也取得了一定的成就,这些成就皆是为了优化Oasis网络,方便那些想要在Oasis网络上构建项目的开发者。

让我们来一起继续阅读,了解更多Oasis在二季度取得的成就!

钱包更新

我们网页端钱包在二季度取得了巨大的进展,未来Oasis网页端钱包以及拓展程序端钱包将有一个通用的代码库。另外在第二季度,我们合并了 69 个请求, 值得一提的如下:

  • 使用webext-redux进行扩展 (#787)。
  • 使用Parcel来构建扩展并对其调整,使其可以在主分支中构建 (#805)。
  • 简化扩展配置、环境和构建脚本 (#830)。
  • 重构侧边栏并使所有按钮可聚焦 (#821)。
  • 添加斯洛文尼亚语和土耳其语翻译(#277#808)。
  • 在向前20名验证者质押前增加一个通知,以鼓励去中心化 (#831)。
  • 重新设计搜索地址框的焦点并将其重构为一个单独的组件 (#844)。
  • 创建钱包后修复键盘可访问性 (#864)。
  • 只显示自己账户的发送交易组件 (#865)。
  • 添加拉丁文字体字体以修复非拉丁字符的字体渲染问题(#867)。
  • 文档发布流程 (#840)。

尽管未来我们会有一个通用的代码库,但是现阶段我们仍然在持续改进拓展程序端钱包的用户体验和钱包本身的稳定性。

在第二季度,我们合并了15个请求,并发布了 1.5.0 和 1.6.0 版本。 显著的变化是:

  • 使用Oasis Scan API 查询账户信息失败时回退到 gRPC(#257)。
  • 阻止用户有潜在危险性的行为(即向验证者转账、将 ParaTime 存入外国账户、从 ParaTime 提款到外国账户、将 ParaTime 存入 Ledger 支持的账户)(#271)。
  • 更新ParaTime交易的默认Gas费,使其足以应对最近的Emerald最低Gas费上涨 (#261#262)。
  • 修复从短私钥导入后的交易签名 (#273)。
  • 只显示ParaTimes Emerald和Cipher(#267)。
  • 修复从后台页面显示错误 (#272)。
  • 改进Promise和TransactionWrapper的推断类型(#264)。

ParaTime更新

  • 第二季度Emerald ParaTime的使用情况一直很健康。由于比较成功地防止了错误的交易被纳入区块中,交易数量有所减少。2022年6月的使用量稳步增长,在6月7日达到了每天超过30万笔交易的峰值,并在月底达到每天3.5万至10万笔交易。
  • 截至6月30日,65个节点在主网上运行Emerald ParaTime。
  • 截至6月30日,已有30个节点在主网上运行Cipher ParaTime。

ParaTime发展

我们在ParaTimes方面的开发在第二季度全速前进!

我们一直在开发一个新的与EVM兼容的ParaTime,现在它已经发布了,这个新的ParaTime名为Sapphire,该代码是开源的!我们将于2022 年7月在测试网上启动它。

你可以点击下方链接了解Sapphire的更多信息:

https://github.com/oasisprotocol/sapphire-paratime

以下是 Runtime SDK开发的亮点:

  • 添加对签名查询的支持 (#984#980)。
  • 为我们的EVM模块添加加密性支持 (#855)。
  • 为我们的EVM模块添加调用信封加密支持 (#926)。
  • 添加对标记昂贵查询的支持,并在模拟 txns 时在估计Gas费时配置要使用的最大Gas费用(#865)。
  • 通过二分搜寻法支持添加可配置的Gas费用估计(#981)。
  • 在我们的EVM模块中提高EVM兼容性并记录更多差异(#983)。
  • 将我们使用的Rust EVM升级到SputnikVM,升级到版本 0.35.0(#997)。
  • 添加配置选项,允许节点运营商指定最大Gas费限制值(#885)。
  • 在check tx中,仅在成功调用后更新费用/随机数 (#864)。
  • 为了遵守Oasis Core更改强制ParaTime调度控制,始终在 Runtime SDK中启用调度控制(#888)。
  • 在 WASM 库调用中传播错误(#894)。
  • 在core中添加可选的错误传播。预估Gas (#972)。
  • 添加禁用Gas使用事件发射的选项(#944#1021)。
  • 使用前一个epoch的密钥解密加密调用的数据,以便在epoch转换后顺利运行 (#1023)。
  • 添加对WASM合约ABI子版本的支持,以启用ABI演进,而不会破坏与已部署的旧智能合约的兼容性(#984)。

开发者平台更新

我们基于Solidity和EVM的智能合约开发环境可在主网上的Emerald ParaTime上使用。

Emerald Web3 网关允许传统的以太坊应用程序无需修改即可与 Emerald 对话。 在第二季度,我们处理了35个用户请求,专注于提高其性能、稳定性和可用性,并发布了 2.1.0 和 2.2.0 版本。 显著的变化是:

  • 提高缓存内存效率(#260)。
  • 实现响应缓存 (#242)。
  • 添加交易和交易收据缓存(#244)。
  • 添加日志缓存(#244)。
  • 实现基于索引块的 Gas 价格预言(#256)。
  • 添加对配置网关以在特定高度开始索引的支持(#233)。
  • 添加对 API 端点的 Prometheus 监控的支持(#241)。
  • 为 PostgreSQL 查询添加指标(#253)。
  • 在整个代码库中正确使用和传播上下文(#240)。
  • 为索引块添加超时(#238)。
  • 处理早期发现交易失败而后来标记成功的情况(#207)。
  • 查询最大区块Gas限制(#191)。
  • 添加对配置网关以在特定高度开始索引的支持(#233)。

我们基于Rust和WebAssembly的智能合约开发环境部署在测试网上的Cipher ParaTime上。 查看我们的智能合约指南,了解如何为Cipher智能合约开发准备环境以及如何使用新的Oasis CLI部署智能合约。

你可以点击下方链接查看指南:

https://docs.oasis.dev/oasis-sdk/contract/getting-started/

我们添加了一个新的加密 Hello World 指南,它将指导你在Cipher上编写和部署你的第一个加密智能合约!

你可以点击下方链接查看指南:

https://docs.oasis.dev/oasis-sdk/contract/confidential-smart-contract/

我们在 docs.oasis.dev 的文档是开源的。 如果你想要为完善线上教程文档做出贡献。

请点击下方链接向我们发起请求:

https://github.com/oasisprotocol/docs

CORE平台更新

在二季度的开始,也就是4月1日那天, Oasis Core 22.1 发布,随后在4月11日成功进行了Damask 升级。

除去以上成就,我们的CORE平台在第二季度也继续全速发展。

我们一直在开发一个新的官方Oasis Indexer,它将在PostgreSQL数据库中索引 Oasis 网络的共识和ParaTime交易,并提供对历史数据的轻松访问。 该代码是开源的,刚刚在 oasis-indexer GitHub 存储库中发布。 我们会很快将其运用在我们的钱包中,使其用作获取数据的首选后端。

在第二季度,我们处理了132 个用户请求。 显著的的改进如下,这些优化有的是计划登陆 Oasis Core 22.2,有的是被反向移植到 22.1.x。

  • 重写运行时事务池和处理流程,以启用事务发送者跟踪和池中允许的未完成事务的每个发送者限制(#4665)。
  • 在获取存储检查点块时提高对等优先级(#4671)。
  • 对加密运行时注册流程的各种修复(#4678#4683)。
  • 计算执行节点能够处理动态密钥管理器配置更改(#4729#4715)。
  • 改进EnclaveRPC协议,以允许运行时根据更高级别的协议指标报告对等反馈,从而使协议更加稳定(#4757)。
  • 添加对最新架构飞地服务管理器 (AESM) 协议的支持(#4711)。
  • 定义英特尔DCAP证明包格式并在Go和Rust中实现v3引用解析和验证逻辑。这将用于逐步实现对DCAP认证的全面支持,这也将允许使用第三代Intel Xeon CPU (#4720#4789)。
  • 实施英特尔PCS客户端以允许检索作为DCAP报价验证过程的一部分所需的TCB信息和QE 身份(#4752)。
  • 实现存档模式支持(#4571)。
  • 通过轻客户端验证和RAK注册确保提供给加密运行时的共识状态的新鲜度(#4741)。
  • 收集运行时日志并作为常规oasis-node日志的一部分发出(#4709)。
  • 更容易查看当前节点和运行时状态(#4669)。

以上便是Oasis在二季度取得的主要成就,欢迎大家持续关注 Oasis 生态的发展!