VEIL

The Honest Shuffle

A shuffle you can check

Most digital decks ask you to trust a hidden dice roll. Veil doesn't ask. Every draw is seeded partly by your own hand, recorded, and reproducible — so the fairness of the shuffle is something you can verify, not something you must believe.

Your hand enters the draw

Before the cards are laid out, you draw your hand across the deck. The exact timing and path of that motion — measured to the millisecond, unrepeatable even by you — is mixed with 32 bytes from your device's cryptographic random generator. Both together are hashed with SHA-256 into a single seed. Something of the querent verifiably enters every shuffle.

The mathematics of the mixing

The seed drives a Fisher–Yates shuffle — the one algorithm mathematically proven to make every ordering of the 78 cards exactly equally likely. We draw each step's number by rejection sampling, which closes the subtle bias (the "modulo shortcut") that an independent audit found in most tarot APIs. No card is favoured; no position is favoured.

Every draw is reproducible

The seed, the moment of your cut, and the positions you chose are stored with your reading. Open any reading later and press "Reproduce the draw": the same seed replays the same shuffle, in front of you, and must land on exactly the cards you were shown. If a single card had been swapped after your cut, the replay would expose it.

Audited on every change

Our test suite runs ten thousand simulated shuffles on every code change and measures the distribution with a chi-square test. If any card ever became even slightly more likely to appear in any position, the build fails and the change cannot ship. The shuffle isn't fair because we say so — it is fair because the machine refuses to build it otherwise.

What this proves — and what it doesn't

The proof covers fairness: the cards fell without favour, and nothing was altered after your hand left the deck. It does not — and cannot — prove what the cards mean. That reading belongs, as it always has, to the one who asks.

Draw under an honest shuffle