Aolotto协议对算法进行了升级,开奖结果将会延后至轮次结束后的第五个区块高度产生。
Aolotto 协议对算法进行了升级,开奖结果将会延后至轮次结束后的第五个区块高度产生。
作者:Aolotto
来源:内容公会 - 新闻
原文首发于:@aolotto_dao
本着对公平性与安全性的更高追求,Aolotto 协议对开奖算法进行了全新升级,调整了开奖机制,让用户能够在更加公正的机制下参与彩票投注。
Aolotto 协议每轮抽奖的结果,都是通过多个随机数基于 HMAC 算法生成的,其中包括区块哈希(BlockHash)。此次新算法的核心变化是,区块哈希的采纳时机比之前延迟了 5 个区块。
每轮结束后,系统会立即切换到下一轮并归档上一轮的投注记录,但开奖时间会推迟。协议会等待 5 个区块高度后,基于归档的投注信息再进行开奖,生成最终幸运号码。
开奖过程中,最重要的环节是生成随机数。随机数一旦生成,基于 HMAC 算法的结果是固定的,任何人都可以通过链上的公开信息进行验证。
Aolotto 协议原算法直接使用当前区块哈希作为随机数之一,理论上矿工可以通过调整区块数据来影响哈希值。如果开奖立即使用当前区块哈希,矿工可能会尝试操控它。但实际上这种操控需要较大的计算资源与时间成本,最终无利可图。
尽管原算法已经足够安全,但 Aolotto 追求更极致的公平性和防作弊能力。因此,通过延迟 5 个区块的方式,矿工无法控制未来区块的生成,从而进一步减少操控开奖结果的可能性,确保整个过程更加透明和可信。
ArchiveId
作为第一个开奖种子因子。ArchivedId
,作为第二个开奖种子因子。BlockHash
,作为第三个开奖种子因子。LastBetId
(最后投注交易 ID)和 TimeStamp
(开奖时间戳)作为第四和第五个开奖种子因子。BlockHash_ArchiveId_ArchivedId_LastBetId_TimeStamp
。seed+1
、seed+2
和 seed+3
。在区块链领域,生成随机数面临不可预测性与可验证性之间的挑战。非确定性算法使计算过程变成黑箱,而确定性算法则容易被预测。对于以太坊等主流公链,通常依赖第三方预言机确保随机数的公平性。
对于 AO 而言,这并非问题。AO 支持定时消息(Cron Messages),允许智能合约定时执行功能。通过这一机制,Aolotto 协议能将开奖过程推迟至未来,从而有效避免结果被提前预测,实现了公平的随机数生成。
免责声明:本文不代表 PermaDAO 的观点或立场。PermaDAO 不提供投资建议,亦不为任何项目背书。请读者遵守所在国法律,合规进行 Web3 活动。
🔗 关于 PermaDAO:Website | Twitter | Telegram | Discord | Medium | Youtube
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!