Beacon

Beacon

Verifiable public randomness, timestamped every minute by the Truestamp blockchain.

Beacon Hash
7fc516701f654e5d970474a0228f986c6eb44b2c4d84febc36440a299d1f71f6
Beacon Created
Aug 3, 2026, 7:57 PM UTC
Verify Proof
View Linked Block

Beacon Timeline

Signature Verification

Truestamp signed this block's hash at finalization. Verify the signature in any Ed25519 verifier using the block hash, public key, and signature shown below. The active public key is also published at https://www.truestamp.com/.well-known/keyring.json.

Algorithm
Ed25519
Message (Block Hash, Hex encoded)
7fc516701f654e5d970474a0228f986c6eb44b2c4d84febc36440a299d1f71f6
Public Key (Base64 encoded)
1hHbF5H5u8LiSp+nVMRb8duR2eGkOo5Q1JYfcmAtF28=
Signature (Base64 encoded)
zwT5WjT6oQ4M/aTBiJ3gDZCFVh7KbFbsWza/Xak2Z1CDvGjZFXTdgG4C4vUy6BlADNHPJV2uasj5y2yFfLPMCg==
Verify Signature Manually

Opens an external Ed25519 verification tool with all fields pre-filled.

Beacon Tools

These interactive tools let you experience some of the power of public randomness firsthand. Unlike random number generators like random.org, which produce unpredictable but unverifiable results, Truestamp's beacon tools are deterministic and verifiable. Given the same beacon and settings, everyone always gets the exact same result.

Settle a bet, make a binary decision, or choose between two options with verifiable fairness. The coin is flipped automatically from the current beacon.

TAILS
Result: 1
How It Works
hash   = SHA256(0x41 || beacon_hash)
value  = to_integer(hash)
result = value mod 2    // 0 = HEADS, 1 = TAILS

Roll a fair die for games, random draws, or any scenario needing a verifiable roll from 4 to 20 sides. Select your die type below. Results update automatically as you change settings.

3
D6 Result
How It Works
sides_bytes = sides as uint32 big-endian
hash   = SHA256(0x42 || beacon_hash || sides_bytes)
value  = to_integer(hash)
result = (value mod sides) + 1

Generate a verifiable number within any range for assignments, scheduling, or custom random generation. Set your minimum and maximum values. Results update automatically as you change settings.

43
Range: 1 to 100
How It Works
min_bytes = min as int32 big-endian
max_bytes = max as int32 big-endian
range  = max - min + 1
hash   = SHA256(0x45 || beacon_hash || min_bytes || max_bytes)
value  = to_integer(hash)
result = (value mod range) + min

Draw unique, sorted numbers for verifiable raffles, prize drawings, or random group assignments. Choose how many numbers to draw and the maximum value. Results update automatically as you change settings.

16
28
39
44
47
48
6 picks from 1-49
How It Works
seed = beacon_hash || count_uint32 || max_uint32
pool = [1, 2, ..., max]
for i = 0 to length(pool) - 1:
  hash = SHA256(0x44 || seed || i_uint32)
  j    = to_integer(hash) mod (i + 1)
  insert pool[i] at position j    // Fisher-Yates
result = sort(first count items)

Like drawing a name from a hat, but verifiable. Enter names, options, or any items (one per line) and draw one at random. Perfect for choosing a winner, assigning a task, or settling a decision.

How It Works
items  = sort(items)           // order-independent
count_bytes = length(items) as uint32 big-endian
hash   = SHA256(0x43 || beacon_hash || count_bytes)
value  = to_integer(hash)
index  = value mod length(items)
result = items[index]

Why Public Randomness Matters

How do we generate randomness that everyone can trust, but no one can manipulate? Traditional random number generators have an inherent problem: someone, somewhere, has the ability to influence or predict the outcome.

Public randomness solves this by providing trustworthy, unpredictable randomness that no one can manipulate or predict in advance. It enables fair, transparent processes across government decisions, healthcare research, financial systems, gaming, and blockchain applications, anywhere unbiased randomness is essential for fairness and verifiability.

Perhaps the most powerful aspect of public randomness is that parties can agree in advance to use the outcome of future public randomness as the fair result of a decision. Before it's published, no one knows what it will be. But once published, everyone can verify the same value and independently calculate the same fair outcome, creating a level playing field where neither party can manipulate the result.

Beyond fairness, public randomness also enables proving that something was published after a specific moment in time by using sources of randomness that are mathematically impossible to predict beforehand.

Public randomness systems achieve this through four essential properties:

  • Unbiasable: No participant can influence the output in their favor
  • Unpredictable: The randomness cannot be known before it is published
  • Verifiable: Anyone can independently verify the randomness was generated correctly
  • Reliable: The beacon publishes regularly and consistently

See these properties in action with a free account

Create Free Account

Public randomness provides the mathematical foundation for trust in critical systems, from fair lotteries and judicial assignments to clinical trials and blockchain applications.

How Truestamp Creates Public Beacons

Truestamp creates each beacon by combining four independent sources of data: NIST Randomness Beacon (cryptographically signed random values published every 60 seconds), Bitcoin Blockchain (proof-of-work block hashes that are impossible to predict), Stellar Blockchain (ledger hashes from the Stellar network), and User-Submitted Data (timestamped items submitted by Truestamp users). Each source is independently hashed using SHA-256 with unique cryptographic domain separation, ensuring no source can be confused with another.

These hashed sources enter a Merkle tree as two distinct leaf types: entropy observations from external sources (NIST, Bitcoin, Stellar) and user-submitted items, each processed through their own hashing pipeline. All leaves are sorted by their unique time-ordered identifiers for deterministic ordering, and the tree produces a single Merkle root hash. This root is then combined with the previous block's hash and a time-ordered block identifier to compute the block hash, cryptographically linking each block to every block that came before it. Finally, the block hash is signed with an Ed25519 digital signature, and this signed block hash becomes the public beacon.

The beacon's trustworthiness rests on multiple independent sources (no single point of failure), cryptographic commitments (Ed25519 signatures, Merkle proofs, and hash chain linkage to the entire blockchain history), and broad verifiability. Anyone can independently confirm the NIST values, Bitcoin and Stellar hashes, and digital signatures. Users can verify their own items' inclusion via Merkle proofs, and anyone can submit their own data, guaranteed to change the resulting beacon while being unable to influence it in their favor.

Further Reading & Research

Public randomness is an evolving field of study. These foundational resources explain its theory and applications:

  • "Trust, and Public Entropy: A Unicorn Hunt"
    Lenstra and Wesolowski review techniques for incorruptible public randomness and derive the security constraints any beacon must satisfy (NIST 2016)
  • "A Random Zoo: Sloth, Unicorn, and Trx"
    Lenstra and Wesolowski introduce a deliberately slow hash function whose output is quickly verifiable, enabling tamper-resistant public random number generation (ePrint 2015)
  • "Usages of Public Randomness"
    NIST poster showing how beacon randomness enables publicly verifiable lotteries, clinical trial group selection, judge assignment, financial audits, and quality-control sampling (NIST ITL Science Day 2019)
  • "The League of Entropy"
    Cloudflare-led consortium of 18+ organizations (including EPFL and Protocol Labs) that combines independent entropy sources into a decentralized, cryptographically verifiable randomness beacon
  • "NIST Randomness Beacon"
    NIST's official beacon service publishing 512-bit signed, chained, timestamped random values every 60 seconds with a public REST API (Version 2.0 Beta)

Ready to Build Something Fair?

Use Truestamp's public randomness to create verifiable, unbiasable applications. Start building today.