将 Math.random() 替换为合适的随机数生成器
作者: th-s-op创建于 2026年1月11日更新于 2026年1月11日
目前,该项目使用 Math.random() 生成随机的“No”。由于这种“No as a Service”可能会导致对和平和人类生命产生重大影响,因此我们不能对随机性过于严肃。JS/ECMAScript 规范并不要求 Math.random() 要安全,引擎可以自由地按照自己的方式实现它。这意味着它可以足够可预测,以便有人可以操纵结果或重放模式。因此,为了确保不可预测、公平、更难在不同环境中进行推理,以及具备未来可用性,我建议使用密码学上安全的随机数生成器。可以考虑使用诸如“X-No-As-A-Service-RNG: csprng”这样的头部来实现“超级严肃模式”,这样我们就可以自豪地声称“我们的 No 具有密码学上的强大性”。
内容来源: hotheadhacker/no-as-a-service