Bạn đang xem bản tiếng Anh. Đọc trang này bằng tiếng Việt →

Provably Fair Gambling Explained: How to Check a Hash (Tai Xiu MD5 Included)

October 5, 2026 Provably Fair Gambling Explained: How to Check a Hash (Tai Xiu MD5 Included)

Provably fair is a way for an online game to prove that the result of a round was fixed before you bet and was not changed afterwards. The game publishes a fingerprint of the result (a hash) before the round, then reveals the original data after it. Anyone can hash that data again and check that the two fingerprints match. This guide explains how it works, walks through two examples you can re-run yourself, and covers the Vietnamese version you may know as tài xỉu MD5.

What is a hash?

A cryptographic hash function such as MD5 or SHA-256 turns any input into a fixed-length string: 32 hexadecimal characters for MD5, 64 for SHA-256. Two properties make it useful here:

  • One-way. Going from the input to the hash is easy; going from the hash back to the input is not practical. A hash is not encryption, so there is nothing to “decrypt”.
  • Sensitive to every character. Change one character of the input and the whole hash changes. Any edit to the data becomes visible the moment you compare.

How provably fair works: commit, bet, reveal

Commit, bet, reveal: a sealed envelope, a chip being placed, and the opened envelope checked

  1. Commit. Before the round, the casino creates a secret server seed (and, in simple games, the result itself) and shows you only its hash.
  2. Bet. You place your bet. You can see the hash but not the data behind it, so you cannot know the result. Many games also let you set your own client seed, so the casino cannot pick a result in advance that suits it.
  3. Reveal. After the round, the casino reveals the server seed. You hash it yourself and compare with the hash you were shown. If they match, the round’s input was fixed before you bet.

Example 1: tài xỉu MD5

“Tài xỉu MD5” is the name used in Vietnam for online sic bo (tài xỉu) rounds that publish an MD5 hash before each roll. In the simplest form the hash covers the dice result plus a secret string. Suppose a round’s dice are 3-6-2 and the secret is a3f5c9d1e7b2. The revealed string is:

3-6-2|a3f5c9d1e7b2

Its MD5 hash, the value shown before the round, is 3a282ae99bb79ffac0f411a2fd48ec0f. Check it yourself in one line:

  • macOS: md5 -s "3-6-2|a3f5c9d1e7b2"
  • Linux: echo -n "3-6-2|a3f5c9d1e7b2" | md5sum

The -n matters: without it, echo adds a line break and the hash comes out completely different. Now change the last die from 2 to 1 (3-6-1|a3f5c9d1e7b2) and the hash becomes 354f62563298b260bd9a30922a0ede65, with nothing in common with the first. That is why a result cannot be swapped after the hash is published. The Vietnamese guide covers this format in more detail: Tài xỉu MD5 là gì.

Example 2: server seed, client seed and nonce

Crypto-casino games usually use SHA-256 and three inputs: the server seed, your client seed, and a nonce that counts your bets (1, 2, 3…). A common scheme works like this:

  1. Before you play, the casino shows the SHA-256 hash of its server seed. For the server seed 7f3a9c2e51b84d06 that hash is 32d9fc9ed3d9a02d36b4cf79e020ad9f63c43928b8e1331972c8a34b233e5fcb.
  2. Your round is computed as HMAC-SHA256 with the server seed as the key and client seed:nonce as the message. With client seed lucky7 and nonce 1 the output starts e67bd5e1.
  3. The game turns those first 8 hex characters into a number: e67bd5e1 is 3,866,875,361, and dividing by 232 gives 0.9003. Scaled to a 0–100 roll that is 90.03; scaled to one die (×6, rounded down, +1) it is a 6.

To check it: echo -n "7f3a9c2e51b84d06" | shasum -a 256 reproduces the committed hash, and echo -n "lucky7:1" | openssl dgst -sha256 -hmac "7f3a9c2e51b84d06" reproduces the round. The exact formula for turning the hash into a result differs from game to game, and a provably fair game publishes its own; use that one when you verify.

A laptop terminal showing hash output next to a die, checking a round yourself

What provably fair proves, and what it does not

It proves It does not prove
The round’s input was fixed before your bet That the payout table is generous
The result was not edited after the hash was shown What the next result will be
Your client seed was used, if you set one That the game has a positive return for you

The house edge is still there; it is built into the payouts, not into the randomness. BC.GAME, for example, publishes a 1% house edge for its own Crash. A verified round is a fair draw from a game whose long-run return is still below 100%. See crash games for how RTP and cash-out interact.

Can you predict a provably fair game from its hash?

No. The published hash is one-way, so it gives away nothing about the result, and you cannot reverse SHA-256 or MD5 to read the seed early. Tools that claim to “decode” tài xỉu MD5 or predict the next roll cannot do what they promise, because the information is not in the hash. Past results do not help either: each round comes from a new seed or nonce.

Where to play provably fair games

  • BC.GAME: its BC Originals range is provably fair, including Crash, Fast Crash and Plinko. For Crash, BC.GAME publishes the pre-generated hash chain and the verification algorithm.
  • 22bet: carries Spribe’s Aviator, whose rounds use a provably fair system you can check after each round. See Aviator.

Play responsibly

Provably fair means the draw is honest, not that it favours you. Set a budget before you play, treat it as entertainment with a cost, and stop when the budget is gone. Online casinos are for adults 18 and over.

Up to 220% deposit rebate across your first 4 deposits
Wagering: Locked bonus - unlocks gradually as you wager
Casino package up to 39,800,000 VND + 150 free spins

Provably fair FAQ

What does provably fair mean?

It means a game lets you check that each result was fixed before you bet and not changed afterwards. The game shows a hash of its secret seed before the round and reveals the seed after it; you hash the seed yourself and compare.

What is tài xỉu MD5?

It is the Vietnamese name for online sic bo (tài xỉu) rounds that publish an MD5 hash before each roll. After the roll, the original string (dice result plus a secret) is revealed and anyone can hash it again to check it matches.

Can a tài xỉu MD5 hash be decoded to predict the result?

No. MD5 is a one-way hash, not encryption, so the published hash contains no readable information about the result. Tools that claim to decode it or predict the next roll cannot work.

How do I verify a provably fair bet?

Take the revealed server seed, hash it with the algorithm the game names (for example SHA-256) and check it matches the hash shown before the round. Then recompute the result from the server seed, your client seed and the nonce using the formula the game publishes.

Does provably fair mean I can win?

No. It proves the draw was not altered, but the house edge is built into the payouts. BC.GAME, for example, publishes a 1% house edge for its Crash game.

18+ · Play responsibly. Content on danhbai.asia is for informational and entertainment purposes only and is not legal or financial advice. Gambling can be addictive — only play within your means, and check the laws in your own jurisdiction before taking part. Need help? GamblingTherapy.org.