跳到主要内容

常见问题

开发者构建 OXN 时的常见问题。这里没有的问题通过支持渠道联系团队。

综合​

OXN 是 rollup 吗?​

不是。OXN 是拥有自己验证人集合与共识的主权 Layer 1。不向以太坊提交状态、不依赖其他链提供终结性。

我的合约调用为什么 revert invalid code?​

你用了比 paris 更新的 EVM 版本编译。OXN 尚未支持 Shanghai 引入的 PUSH0 opcode。在编译器配置里设 evmVersion: "paris"。见 EVM 兼容性。

我合约里能读别的用户的余额吗?​

不能,如果合约用了机密存储。只有账户持有者(或被授权者)通过签名查询能读自己的余额。见签名查询与构建机密 ERC-20。

主网什么时候?​

时间线未公布。路线图与当前状态见主网状态。

开发​

应该怎么设置 gasLimit?​

每笔交易都显式设置 gasLimit,不要依赖客户端 eth_estimateGas。推荐默认值见下方以及 Gas 与手续费。

推荐的 gas limit?​

  • 原生代币转账:100_000n
  • ERC-20 转账:500_000n
  • 简单合约部署:3_000_000n
  • 大合约部署:5_000_000n+

未消耗的 gas 会退还,多给一些是安全的。

能用 viem 或 web3.js 代替 ethers.js 吗?​

能,配合合适的 wrapper。ethers.js 的 OXN SDK 集成最完整。viem 支持;web3.js 支持有限。备选 SDK 的当前状态请联系团队。

能用 Hardhat 本地测机密性吗?​

只能部分测。Hardhat 内建 network 跑纯 EVM,没有 SGX,所以机密性特定行为(加密 calldata、签名查询、加密存储)在本地不存在。本地测业务逻辑,然后打真实 OXN 测试网跑机密性路径的集成测试。见测试机密行为。

Sapphire.randomBytes 为什么一个区块内返回同一个值?​

设计如此。随机源按区块派生。想在一次调用内得到多个独立随机值,传不同 personalization 字符串:

bytes memory r1 = Sapphire.randomBytes(32, "draw-1");
bytes memory r2 = Sapphire.randomBytes(32, "draw-2");

钱包与账户​

发交易时为什么 MetaMask 显示 "Invalid address"?​

可能是误导性错误标签。OXN 网页钱包(某些版本)在底层错误实际是 insufficient balance to pay fees 时会显示 "Invalid address"。检查账户余额,测试网上试 gasPrice: 0n。

水龙头为什么拒绝我的地址?​

水龙头只接受 EVM(0x…)地址,不是原生(oxn1…)地址。从钱包主界面复制 EVM 地址。

能在 OXN 上用我的以太坊 mnemonic 吗?​

可以。同一 mnemonic 产生同一私钥,在两个网络上产生同一 EVM(0x…)地址。那个地址在每条链上的余额是分开的。

钱包里的 "TBLUAI" 或 "BLUAI" 是什么意思?​

两者都指 OXN 的原生代币。钱包显示符号按环境不同:

  • 测试网:TBLUAI(前缀 T 标记为测试网;测试网代币无经济价值)。
  • 主网:BLUAI(主网上线后的符号)。

较早的文档可能仍显示 "TEST"——那是更早的测试网符号,正在被 TBLUAI 替换。

机密性​

全局索引器能解密我合约的事件吗?​

不能。事件内容用调用者的会话密钥加密,所以只有 emit 它们的调用者能解密。需要全局事件可见性时,emit 一份不含敏感字段的明文伴随事件。见机密性模型。

我能隐藏 msg.sender 吗?​

不能。msg.sender 公开——它是交易发送方,链必须把交易路由到某处。想要交易图隐私就在 OXN 之上叠混币器或中继。

我能隐藏调用的是哪个合约吗?​

不能。tx.to 公开。机密性隐藏你请求合约做什么,不隐藏你调用了它。

我的 gas 使用量是私密的吗?​

不是。Gas 是公开硬件上度量的公共资源。合约在秘密状态上分支时,用掉的 gas 会泄漏走了哪个分支。见机密性陷阱。

运维​

链状态被重置了,怎么办?​

OXN 测试网在活跃开发期间可能被重置。重置时合约地址与账户余额被清零。Chain ID 与端点保持不变。见测试网参数。

我能跑验证人吗?​

当前不能。测试网阶段不开放验证人入网。第三方可以跑只读 RPC 节点。见节点运营概览。

怎么报告 bug?​

非安全 bug:在相应 GitHub 仓库开 issue。安全问题:见报告安全问题——不要公开提交安全问题。

下一步​