ブログ · 公平性と不正対策

ブラウザポーカーの Web Crypto 乱数:証明できること、できないこと

公平性と検証 公開日 2026年10月1日 · Fair Poker 研究チーム

ブラウザで動くポーカーを見ると、「Web ページの乱数で本当に大丈夫なのか」と感じる人は多いはずです。短く言えば、現代のブラウザには Web Crypto API があり、crypto.getRandomValues() は暗号学的に強い乱数値を得るための標準的な方法です。

ただし、それだけで公平性が完成するわけではありません。安全なポーカーのシャッフルには、手札が配られる前に予測しにくい入力があり、その入力をどうデッキ順に変えたかが明確で、あとから確認できる証拠が必要です。

Web Crypto がポーカーに与えるもの

ブラウザの Crypto インターフェースは、暗号機能と強い乱数生成器へのアクセスを提供します。MDN は crypto.getRandomValues() を、型付き配列に暗号学的に強い乱数値を入れる方法として説明しています:MDN getRandomValues。

ポーカーではここが重要です。演出、色、軽いゲーム向けの普通の乱数は、フェアなシャッフルを守る土台にはなりません。シャッフルの種は、他のプレイヤー、サーバー、悪意あるスクリプトから事前に予測されにくい必要があります。

これは ポーカーシャッフルの暗号学的エントロピー と同じ話です。エントロピーとは、新しい不確実性です。Web Crypto は、ブラウザ上でその不確実性を得る現実的な入口になります。

普通の乱数より安全用途に向く理由

W3C の Web Cryptography 仕様では、getRandomValues は暗号学的に強い乱数値を生成すると説明されています:W3C Web Cryptography。つまり、単に結果を「ばらばらに見せる」ためではなく、セキュリティ用途を意識した仕組みです。

ポーカーは、プレイチップだけでもセキュリティに関わる場面です。種を推測できれば、デッキ順の候補を狭められるかもしれません。サーバーが他の入力を見てから種を選べるなら、シャッフルを寄せる余地があります。計算を誰も再現できないなら、結局はサイトを信じるしかありません。

だから シャッフルはどれくらいランダムか は、単なる数学の話ではありません。デッキ順の数は巨大ですが、公平性はその順番がどう選ばれ、誰かが偏らせられたかで決まります。

乱数だけでは証明できないこと

強い乱数値があっても、サイトがそれを正直に使った証明にはなりません。ベット前にデッキが固定されていた証明にもなりません。隠しカードを誰も見ていない証明にもなりません。共謀、アカウント乗っ取り、リアルタイム支援も別問題です。

NIST の乱数生成資料では、エントロピー源、決定論的生成器、テストが分けて扱われています。安全なランダム出力は複数の層に依存するからです:NIST random bit generation publications。ポーカーでは、さらに公開検証という層が必要になります。

乱数は材料です。検証記録はレシートです。プレイヤーに必要なのは、結果が「ランダムに見える」ことではなく、約束された手順で作られたと確認できることです。

そのため シャッフルを手順ごとに検証する ことが大切です。検証可能な仕組みなら、入力、コミットメント、最終結果を使って、第三者でも手順を再現できます。

ブラウザポーカーを見るときの確認項目

暗号の専門家でなくても、次の質問はできます。

Fair Poker が重視するのは、検証可能なプレイマネーポーカーです。大切なのは「ブラウザだから安全」と言うことではありません。ブラウザは強いランダム入力を提供でき、よく設計されたプロトコルはその入力を確認可能なシャッフルに変えられる、ということです。

まとめ

Web Crypto は、ブラウザポーカーの乱数にとって強い土台です。「種を推測できるか」という問いには役立ちます。しかし、それだけで公平性のすべては証明できません。信頼できるオンラインポーカーには、コミットメント、再現できる記録、そして限界を正直に示す姿勢が必要です。

検証可能な公平性の実装に興味がありますか?

Fair Poker はテキサスホールデムの検証可能な公平性を研究する非営利オープンソースプロジェクトです。デッキは参加者のブラウザが共同で暗号化シャッフルし、ディーリングサーバーは存在せず、全ハンドを独立に検証できます。公衆向けのゲームサービスは提供していません。全ソースを公開していますので、ダウンロードして自分の環境で研究してください。

ソースをダウンロード

本サイトは非営利のオープンソース研究プロジェクトであり、公衆向けのゲームサービスは提供しません。デモは研究テスト専用で無価値のテストチップのみを使用し、現金賭博ではありません。本記事は教育目的のコンテンツです。

← 記事一覧へ戻る