Jogo justo, verificável

No Aceon Poker você não precisa confiar — pode verificar. Cada mão é embaralhada por um gerador criptograficamente seguro a partir de duas sementes, e qualquer pessoa pode recomputar o baralho exato e conferir que ele bate com o selo publicado antes da mão.

O modelo commit / reveal

  1. Antes da mão, o servidor publica um selo (commit): SHA-256("serverSeed:clientSeed"). O selo prende o servidor às sementes sem revelá-las.
  2. A mão é jogada com o baralho derivado dessas sementes.
  3. Depois da mão, o servidor revela a serverSeed e a clientSeed.
  4. Você verifica: recalcula o selo a partir das sementes (deve bater com o publicado) e recomputa o baralho. Como o selo foi fixado antes da mão, o servidor não tinha como trocar as cartas no meio do caminho.

O algoritmo, em detalhe

O embaralhamento é determinístico a partir das sementes e do nonce da mão:

O verificador abaixo é uma reimplementação fiel, byte a byte, do algoritmo do motor em packages/core-poker (src/rng.ts, src/deck.ts e src/verify.ts). Roda 100% no seu navegador usando crypto.subtle.

Verifique você mesmo