SuperAPI AI 工具集

slot-vrng

通用与其它

查看项目

更新于 10-15 20:10

技能介绍

用途:为链上游戏提供廉价、原子、可验证的随机数。随机数在单笔交易内生成并验证。

接口(Cairo):IVrfProvider 提供 request_random(caller, source) 与 consume_random(source) -> felt252。Source 有两种:Source::Nonce(ContractAddress) 使用地址内部 nonce,每次请求种子不同;Source::Salt(felt252) 使用给定盐值,相同盐值得到相同随机值。

合约地址:主网与 Sepolia 均为 0x051fea4450da9d6aee758bdeba88b2f665bcbf549d2c61421aa724e9ac0ced8f。

用法:合约内通过 IVrfProviderDispatcher 调用 consume_random 获取随机值;执行交易时 request_random 必须是 multicall 的第一笔调用,随后再调用游戏合约;Cartridge Paymaster 会用 submit_random 与 assert_consumed 包裹该 multicall。request_random 与 consume_random 的 source 必须一致。使用 Controller 时需把 vRNG 合约的 request_random 方法加入 policies。

安全:Phase 0 假设 Provider 未泄露私钥且不与玩家串通;未来计划将 Provider 迁移到可信执行环境(TEE)。

限制:资料未提供费用、性能数据与完整错误处理说明。