Verifiable Random Draw (Commit-Reveal)

Publish a commitment first, reveal the seed later, and let anyone verify the draw.

This tool runs in your browser. Inputs and results are not sent to any server.

Other languages: en | ja | es

Why this verifiable draw?

How to use (3 steps)

  1. Enter participants and settings, then compute and publish the commit.
  2. Run the draw and reveal the seed after the draw.
  3. Anyone can verify using the same inputs (or the JSON package).

All processing happens locally in your browser.

Share URLs contain settings only by default (seed is excluded).

Fair draw, explainable

Verifiable draw tool

Create a commitment, run the draw, and export a verification package—without uploading anything.

Advanced (sharing / exports)
Canonical JSON

          

Frequently asked questions

What is commit-reveal?
You publish a hash (commit) first, then reveal the seed later so others can reproduce the draw.
Why is the seed important?
A strong seed prevents guessing and ensures the draw cannot be manipulated after committing.
Why isn’t the seed in the share URL by default?
URLs can leak through history, logs, and referrers. Seed is excluded by default.
How do I verify?
Use the same inputs and seed, then recompute the commit and results. This page can do it for you.
How are duplicate lines handled?
By default, duplicates count as multiple entries. You can optionally deduplicate exact duplicates.
What is the audit trace?
It shows a small internal trace (hash blocks and picked indices) to help explain the selection process.