Козырь — дурак подкидной и переводной

Колода, которую можно проверить

До раздачи сервер показывает отпечаток своего зерна — SHA-256. Потом каждый телефон за столом отдаёт своё зерно. Порядок колоды строится из зерна сервера и зёрен всех мест: ни сервер, ни один из игроков не выбирает его сам.

После партии сервер раскрывает зерно. Телефон пересобирает колоду, сверяет отпечаток и каждую карту, которую видел: свою руку, козырь, добор и все сыгранные карты. Не совпало — игра скажет об этом красным.

Как проверить самому

Алгоритм — durak-deck-v1: тасовка Фишера — Йетса потоком HMAC-SHA-256. Ключ — зерно сервера, сообщение — durak-deck-v1|зерно1|зерно2|…|k для k = 0, 1, 2…; из каждого блока по два байта, с отбрасыванием, чтобы не было перекоса. Доказательство партии отдаёт адрес /v1/tables/<стол>/proof?game=<номер>.