Chainlink VRF 文档
Verifiable Random Function
关于 Chainlink VRF 如何为 PeetBet 上的每次下注提供可证明公平的随机性的完整指南。了解使真正 50/50 赔率成为可能的技术。
什么是 Chainlink VRF?
Chainlink VRF(可验证随机函数)是专为智能合约设计的可证明公平且加密安全的随机性来源。与可被操纵的传统随机数生成器不同,Chainlink VRF 生成随机数的同时提供加密证明,证明随机性是正确生成的。这个证明在任何随机数被使用之前在链上进行验证,确保任何人都可以验证的完全透明和公平。
防篡改
没有人能预测或操纵随机输出——即使是预言机运营商或 PeetBet 也不能。
加密证明
每个随机数都附带可在区块链上验证的数学证明。
公开可验证
任何人都可以使用区块浏览器检查链上证明来验证随机性。
Chainlink VRF 如何工作
发起请求
当游戏需要结算时,我们的智能合约向 Chainlink VRF 协调器合约发送随机性请求。此请求包含唯一的 nonce 和最新的区块哈希以确保不可预测性。
预言机选择
VRF 协调器将请求路由到 Chainlink 的去中心化预言机节点之一。这些节点由独立、信誉良好的实体运营,它们质押 LINK 代币作为抵押品。
随机数生成
选定的预言机节点使用其私钥结合区块哈希和 nonce 生成可验证的随机数。此过程使用椭圆曲线密码学确保输出不可预测。
证明生成
与随机数一起,预言机生成加密证明。此证明从数学上证明随机数是从输入参数正确生成的。
链上验证和回调
随机数和证明被提交回区块链。VRF 协调器在链上验证证明,只有验证通过才会将随机值转发给我们的智能合约,然后结算游戏。
为什么 Chainlink VRF 有成本
每个随机性请求都有真实成本。与使用免费(且可操纵)伪随机生成器的传统赌场不同,PeetBet 使用真正的加密随机性,以确保每场游戏都是可证明公平的。
LINK 代币支付
每个 VRF 请求需要向生成随机性的预言机节点支付 LINK 代币。这激励诚实行为。
以太坊 Gas 费用
将随机数和证明传递给合约的回调交易需要 gas,费用根据网络拥堵程度而变化。
预言机基础设施
Chainlink 维护着一个去中心化的预言机节点网络,具有冗余和安全措施,需要持续的运营成本。
验证计算
链上证明验证计算密集型,增加了 gas 成本,但确保随机性是合法的。
真正的公平性是不可商榷的。这些成本存在是因为可证明的随机性需要真实的加密基础设施。
技术深入探讨
随机数生成公式
随机数使用预言机私钥、请求时的区块哈希和唯一 nonce 的组合生成。这种组合确保输出既不可预测又可验证。
加密证明
证明使用基于 secp256k1 曲线(与以太坊使用的相同)的椭圆曲线 VRF。它从数学上证明随机输出是从输入正确派生的,而不会泄露预言机的私钥。
链上验证
VRF 协调器合约包含验证逻辑,根据预言机的公钥检查证明。如果证明无效,交易会回滚,随机数永远不会被使用。
常见问题
Chainlink 节点能操纵随机结果吗?
不能。加密证明确保即使预言机节点运营商也无法选择或预测输出。如果他们试图操纵结果,证明将无法通过链上验证,交易将被回滚。
PeetBet 能操纵随机结果吗?
不能。PeetBet 对随机性生成没有控制权。我们只是请求随机性并接收结果和证明。整个过程在链上透明且可验证。
为什么随机性需要 15-45 秒?
VRF 过程需要预言机生成随机数和证明,向区块链提交交易,并等待确认。这个延迟确保随机性是安全且最终的。
如何验证游戏结果?
每场游戏都在链上记录 VRF 请求 ID 和结果随机值。您可以使用 Etherscan 追踪请求到 Chainlink VRF 响应并验证证明。
如果 Chainlink 没有响应会怎样?
我们的合约有超时机制。如果 Chainlink 在特定时间内没有响应,游戏可以取消并退还赌注。这保护玩家免受资金锁定。