真实RNG检查如何工作
RNG(随机数生成器)验证不是一个"魔术测试",而是工程过程链。她的目标是证明三件事:(1)数字流在统计上与理想的随机数相似,(2)它正确地"map"进入游戏事件(符号,地图,乘数),(3)验证的版本总是旋转在生产上。下面-整个循环是如何安排的。
1)确切检查的内容(三个级别)
1.原始的RNG输出是纯流量统计(没有游戏界面)。
2.Mapping RNG →游戏事件-匹配声称的数学组合(RTP/波动)的频率。
3.生命周期和完整性-销售恰好是经过认证的组件,不能谨慎更换。
2)发布前: 实验室认证
A.白色拳击(按代码和体系结构)
算法:PRNG/CSPRNG类,"播种"方法,重叠(重排),流隔离,游戏之间没有共享状态。
熵源:系统池/硬件噪声;测试起点位熵的充分性。
状态管理:nonce/计数器,重用保护,不同游戏/桌子的线程独立性。
B.黑色拳击(周末)
产生非常大的样本(数亿到数十亿位/数字)。
通过测试电池运行:- NIST SP 800-22:单比特,单位频率,伤口测试,零/单位不平衡,approx.熵、线性复杂度、光谱(DFT)等。
- Diehard/Dieharder:生日(生日花样),游荡(random walks),匹配,矩阵等级等。
- TestU01(SmallCrush/Crush/BigCrush):最严格的系列;捕捉微妙的依赖和短暂的时期。
- 假设和p-values:不是"每个人都是0。5英寸,然后将它们均匀地分布在[0;1];考虑了多种测试(假阳性校正)。
- 滑动窗口:在流子集(不同的块面)上进行相同的测试,以捕捉非平稳性。
C.游戏数学的验证
数百万/数十亿的"虚拟自旋/分配"建模:经验性RTP收敛于声明的(例如96。00% ±入场)。
检查罕见事件:头奖频率,奖金回合,乘数,分配奖金。
映射检查:匹配表"RNG数→符号/映射"不偏斜,等于所有"deci/鼓"位置的概率。
结果:报告RNG参数,测试/数据量/通过阈值列表,游戏二元数的哈希和目标RTP。
3)销售: 持续控制
遥测和警报
RTP在置信区间内的聚合数据(天/周/月)收敛。
分布异常:重复爆发、字符偏斜、色散变化。
RNG在线健康:当前线程上的轻量级内置自检(频率/运行)+Logs图片中的周期性"重型"运行。
滑动窗口和季节性:与"旧"参考期的比较。
工件完整性
将可执行文件的哈希和数字签名与认证中的"黄金"样本进行核对。
"仅签名发布"政策,双重批准,对管理人员的行动进行审核。
对事件的反应
阈值→隔离游戏,启用"维护",执行滚动,固定snapshot,通知监管机构/合作伙伴,并准备对照台。
4)如何安排关键测试(人为)
单位/频率:零和单位应大致相等。
Runs/Series:连续0/1的长度对应于理论。
DFT/频谱:没有隐藏周期/谐波。
矩阵的线性复杂度/等级:流量不是用短线性电路描述的。
生日间距/冲突:匹配分布作为理想的随机分布。
Approx.Entropy/Serial:没有冗余的短模式。
Autocorrelation:相邻元素是独立的。
重要的是:一个"红色"测试并不能证明一个问题-通过多重检查和重复运行进行批量查看。
5)Syds,穿越和独立流动
种子由几种熵源形成;记录启动过程和恢复频率。
不同的游戏/桌子是RNG的不同状态;禁止共享状态。
学习无数/计数器:每个上诉都是唯一的,不包括重复采样。
6)Mapping和演讲: "诚实"经常被混淆的地方"
RNG给出了数字,游戏将其转换为事件。验证映射表是:- 没有"死区",平均覆盖空间,固定在版本中(更改=新认证)。
- 近似是接口的视觉效果。他的份额和逻辑严格由数学给出;它不是"削弱"RNG。
7)逻辑和可重复性
每个回合都会获得ID,时间标签,sid/nonce,输入参数,RNG总和以及映射后的结果。
通过逻辑,实验室/操作员可以复制结果,并确保它符合算法和回合数据。
Logs是不可改变的,保存多年,备份;按规定访问。
8)Live Games: RNG测试取代什么
轮盘/卡:设备控制(车轮拍打、平衡、校准)、经销商程序、自动挂牌机、更换甲板、完整视频记录。
销售中的数字/卡的统计监控-捕捉磨损/缺陷和人为因素。
9)"Provably fair": 玩家实际检查的内容
服务器提前发布服务器座椅哈希;回合后,SID揭示。
玩家设置客户端sid;根据记录的公式(通常为HMAC/AES+nonce)认为总数。
任何人都可以重新计算,并确保结果不会在下注后被替换。
但这不是高RTP的保证--游戏的数学仍然需要单独的审计。
10)典型的错误以及如何捕捉它们
西德的初始化不良→被早期测试和第一窗口异常所困。
重复状态/不重复重复→重复/相关性、Diehard/TestU01中的细节。
在升级(热编辑)之后漂移→哈希/度量差异。
弱的PRNG → BigCrush中的"失败",频率爆发,DFT中的结构。
支票单
对于工作室/提供商
- 记录了RNG算法,坐下,重组,流分离。
- 运行NIST/Dieharder/TestU01具有足够的体积和p值报告。
- 游戏质量模拟:RTP,方差,获胜配额,罕见事件。
- 文物的复制/签名/散列;禁止未签名的版本。
- RTP/分布/重复上的射击后异常;隔离/滚动计划。
对于操作员
- 核对RNG/游戏证书和实际版本(哈希控制)。
- 监测所有标题的RTP收敛和异常;有门槛和自动警报。
- 保管不可改变的徽章;准备通过提卡快速出口。
- 事件程序:停止游戏→滚回→通知→公开报告。
对于玩家
- 查看游戏的信息屏幕:RTP/规则/版本/最大赢。
- 使用可见的RG工具(限制/历史/定时)与操作员一起玩。
- 在争议中,我寻求回合ID和摘录;结果必须再现。
- 不要将RNG的诚实与波动性相混淆:"干燥"频段是正常的。
真实RNG检查是严格的统计+映射控制+版本和日志纪律。实验室确认流动是平等和独立的。模拟证明符合声明的RTP;生产监控可确保经过验证的装配不会发生变化,并且行为与测试相同。当所有三个级别一起工作时,"诚实"不再是承诺,而是成为系统的属性。