zh

随机数生成器

输入一个起止范围,抽取一个公平的随机数,没有四舍五入偏差,借助浏览器中的密码学随机性完成。

可验证的公平性: 抽取使用的是浏览器的密码学随机数生成器(crypto.getRandomValues),而不是简单的伪随机数,这与加密所使用的机制相同。每一个可能的结果的概率都恰好等于权重所指定的比例,不存在因四舍五入而产生的偏差。一切都在你的浏览器中本地完成,没有任何服务器能够影响或操纵结果。

三步完成

  1. 输入"起始值"和"结束值"。
  2. 抽取一个随机数。
  3. 查看结果,如有需要可再次抽取。

历史记录

暂无结果。

    一切都保留在你的设备上:无需账户,无需服务器,随时可导出和删除。

    我的文件会被上传吗?

    不会。一切都在你的浏览器中运行,你的文件永不离开你的设备。这一点如何验证

    无需上传100% 本地处理
    内容只属于你第三方无法访问
    Hosted in GermanyGlobal Content Delivery
    经独立审计TLS A+ · 标头 A+

    随机数生成器会从你自己选择的起止范围中抽取一个整数,例如用于抽签决策、抽样,或游戏中的随机操作。输入范围,抽取,完成。

    为了让范围内的每个数字都拥有完全相同的概率,该工具在浏览器的密码学随机数生成器(crypto.getRandomValues)基础上使用了拒绝采样(rejection sampling):那些会因简单取模余数而产生偏差的值会被舍弃并重新抽取,而不是接受一个略有偏斜的分布。

    每个抽取的数字都会记录在你的本地历史中,可一键导出或删除,任何服务器都不会看到它。

    技术规格

    技术规格
    输入格式无需文件(生成器)
    批量处理不支持
    处理方式在浏览器中本地处理 (JavaScript)
    文件上传

    限制: 抽取的是整数;"起始值"必须小于或等于"结束值"。范围保持在浏览器安全整数的界限之内。一切都在本地运行,无需服务器。

    常见问题

    我的抽取记录会被上传或保存吗?

    不会,一切都在本地运行。你的抽取历史存放在浏览器存储中,可随时导出或删除。

    为什么不直接使用Math.random()?

    crypto.getRandomValues提供的是密码学强度的随机性,而不是更容易预测的伪随机数;结合拒绝采样,范围边界处不会出现四舍五入偏差。

    "起始值"可以大于"结束值"吗?

    不可以,工具会诚实地将其报告为错误,而不是悄悄交换数值。

    范围可以是负数吗?

    可以,例如从-10到10,只要"起始值"小于或等于"结束值"即可。

    这与骰子工具有什么区别?

    骰子遵循NdM游戏表示法(多个骰子,固定面数);随机数生成器则是从一个自由选择的范围中抽取单个数字。

    相关工具