在线抽奖工具 — 随机抽取中奖者并生成凭证
不重复抽奖,附带抽奖时间和 SHA-256 哈希的凭证图片
在浏览器中处理 · 不上传任何内容
抽奖结果
还没有抽奖。
名单哈希(SHA-256)
这个哈希只用来确认名单是否有哪怕一个字的改动。粘贴相同的名单(顺序也相同)会得到相同的值。
当前名单的哈希
—
抽奖时间取自本设备的时钟,可以被随意修改。哈希只能说明在你公开哈希之后名单没有被改动,既不能证明名单何时存在,也不能证明抽奖是随机的。
链接里只有参与者的名字,不含抽奖结果。名单含个人信息时请勿分享。
工具简介
适用于抽奖活动、发言顺序、值日安排和班级奖励等,需要从参与者名单中选出几个人的场合。每行输入一位参与者,设置中奖人数和候补人数,工具会不重复地抽取。可以一次全部抽完,也可以一个一个抽,制造悬念。抽奖结束后,可以保存一张凭证图片(PNG),上面有抽奖时间、报名数、参与者名单的 SHA-256 哈希和中奖者。页面上也明确说明:哈希只能证明名单没有被改动,不能证明抽奖是随机的。
使用方法
- 在名单中输入参与者,每行一个,或用逗号分隔(中文逗号“,”和顿号“、”也可以)。下方会随着输入实时显示当前名单的哈希。
- 保持“同名只算一次”开启,即可合并重复的名字。
- 输入中奖人数和候补人数。
- 选择 一次抽完 或 逐个抽取,然后点击抽奖按钮。
- 结果下方会显示抽奖时间(本地时间、UTC 时差和时区名称)以及哈希。可以用 保存凭证图片(PNG) 保存凭证,或用 复制结果 复制文本。
工作原理
- 不重复:每一行是一张抽奖券。抽中一张后,该名字会从之后的所有抽取中移除,因此中奖者和候补都是不同的人。
- 限制:中奖人数加候补人数不能超过不同名字的数量,最多可输入 10,000 条报名。
- 随机性:随机值来自
crypto.getRandomValues,无取模偏差,不使用Math.random。 - 名单哈希:按输入顺序把参与者用换行符连接,以 UTF-8 编码后计算 SHA-256。顺序不同,哈希也不同。
- 结果哈希:每位中奖者一行
W:名字,之后每位候补一行R:名字,对这些内容计算 SHA-256。 - 抽奖时间:抽奖结束那一刻的浏览器时钟,格式如
2026-10-03 14:05:12 (UTC+08:00, Asia/Shanghai)。设备时钟不准,时间也就不准;需要正式证据时,请使用可信的时间来源。 - 哈希做不到的事:它只能检测改动,无法证明中奖者是公平选出的。
示例
| 参与者 | 设置 | 结果 |
|---|---|---|
| 张伟、王芳、李娜、刘洋、陈静、杨帆 | 1 位中奖者 | 6 人中抽 1 人 |
| 同上 | 2 位中奖者 + 2 位候补 | 4 个不同的人 |
| 张伟、张伟、王芳(保留重复) | 1 位中奖者 | 张伟 2/3,王芳 1/3 |
| 同上,合并重复 | 1 位中奖者 | 张伟、王芳各 1/2 |
常见问题
凭证图片上的哈希能证明什么?
它是参与者名单的 SHA-256 值,粘贴相同的名单(顺序也相同)会得到相同的哈希。公开哈希之后,你可以证明名单之后没有被改动过哪怕一个字。不过抽奖时间取自你设备的时钟,可以被修改,哈希也不能证明名单是何时创建的。图片中不含名单本身,请另行保存,以便日后核对。
哈希能证明抽奖是随机的吗?
不能。哈希只能看出名单或结果事后是否被改动,无法说明中奖者是否被公平地选出。本工具使用浏览器的加密随机数,但别人无法从图片中验证这一点。对于重要的抽奖,建议共享屏幕,当着参与者的面抽取。
同一个人会中奖两次吗?
不会。保持“同名只算一次”开启时,重复的行会被合并。关闭后,每多写一行就多一张抽奖券,提高该名字的中奖机会;但一个名字一旦被抽中,就不会再参加后面的抽取。
逐个抽取是怎么进行的?
第一次点击会锁定名单并抽出一位中奖者。之后每点一次“抽下一位中奖者”就再抽一位,中奖者抽完后继续抽候补。最后一位抽出时,时间和哈希就会确定。抽取过程中无法修改名单。
我的名单会被保存到哪里吗?
不会。抽奖、计算哈希和生成图片都在浏览器中完成。只有点击按钮时才会生成分享链接,参与者名字会写进网址“#”后面的部分。这部分不会发送到服务器,但收到链接的人都能看到,所以含有个人信息的名单请不要分享。