guide
Provably Fair の結果を検証する手順:実践ウォークスルー
Provably Fair の検証は2分以内で完了します。プレイ前にサーバーシードのハッシュ・クライアントシード・ノンスを記録し、ラウンド後に運営者または第三者ツールでハッシュの一致と結果の再計算を確認するだけです。
Provably Fair の結果を検証する手順は次のとおりです。プレイ前にハッシュ化サーバーシードとクライアントシードを記録し、各ベットのノンスをメモします。プレイ後、運営者の組み込みツールまたは第三者ツールを使って、公開されたサーバーシードのハッシュが記録と一致すること、そして3つの値からゲーム結果を再計算できることを確認します。
手順はこれだけです。以下では、概念としての理解ではなく実際に実行できるレベルで各ステップを解説します。
重要: 本記事は海外在住の日本語話者を対象としています。日本国内からオンラインカジノを利用することは賭博罪の対象となる可能性があり、2025年の規制強化後も法的状況は変わっていません。ご自身の居住国の法律に従ってください。ギャンブルは18歳以上、居住国で合法の方のみ、失っても困らない資金の範囲でお楽しみください。
何を検証しているのか
手順に入る前に、Provably Fair が何を証明し、何を証明しないかを整理します。概念の詳細はProvably Fair の仕組みと検証方法を参照してください。
端的に言えば、カジノはベット前にサーバーシードのSHA-256ハッシュを公開することで「コミット」します。ハッシュが公開された後、同一のハッシュ値を生成する別の文字列を見つけることは計算上不可能です。あなたのクライアントシードとノンス(ベットごとのカウンター)がサーバーシードと組み合わさってゲーム結果を決定します。検証で確認するのは2点です。
- サーバーシードがベット後にすり替えられていないこと(ハッシュ確認)。
- その3値から正しく結果が導出されていること(結果確認)。
Provably Fair はハウスエッジをなくすものではなく、出金を保証するものでもなく、通常は運営者の「オリジナルゲーム」にしか適用されません。第三者スロットは対象外です。検証の「グリーンチェック」を万全のお墨付きと受け取らないよう、この限界は最初に理解しておく必要があります。
ステップ1 — ベット前:ハッシュ化サーバーシードを記録する
Provably Fair に対応したゲームを開くと、インターフェイスにハッシュ化サーバーシード(SHA-256の場合、通常64文字の16進数)が表示されます。これがカジノのコミットメントです。
この値を自分で管理できる場所(テキストファイル、メモ、スクリーンショット)にコピーしてください。重要なのは、この値を結果が決まる前に記録しておくことです。後で比較する基準点になります。
通常、同じ画面にクライアントシードも表示されます。自動生成された値をそのまま使っても、任意の文字列に変更しても構いません。あなたが入力の一部を提供することで、カジノはあなたのシードを無視した結果を事前に計算することができなくなります。使用したクライアントシードも控えてください。
ステップ2 — プレイ中:ノンスを把握する
すべてのベットでノンス(通常0または1から始まるカウンター)が増えます。特定のベット(例:セッションの47回目)を検証したい場合、最新のノンスではなくそのラウンドのノンスが必要です。
公平性パネルにはベットログにノンスが表示されることが多く、ベット履歴をダウンロードできる運営者もあります。検証したいラウンドのノンスを確認してください。
ステップ3 — プレイ後:サーバーシードを公開させる
シードペアを使い終わった後(通常はシードをローテーションするとトリガー)、カジノはハッシュ化前のサーバーシードを公開します。これがステップ1で記録したハッシュの元となる文字列です。
ゲームUI内の盾アイコンや「Fairness」リンクから公平性・検証パネルに移動し、サーバーシードの公開またはローテーションを選択してください。公開されたシードがそこに表示されます。
ステップ4 — ハッシュ確認:コミットメントを検証する
ステップ3で公開されたサーバーシードをSHA-256でハッシュ化します。出力がステップ1で記録したハッシュ化サーバーシードと完全に一致しなければなりません。
運営者の組み込みバーリファイアを使う場合: ローテーション時に多くのカジノが自動的に確認してくれます。
CyberChef(第三者ツール、ローカル動作)を使う場合: CyberChefを開き、「SHA2」をレシピにドラッグ、256ビット出力を選択、公開されたシードを貼り付けてダイジェストを読み取ります。ステップ1の記録と1文字ずつ照合してください。
ターミナルを使う場合(macOS/Linux): echo -n "公開されたシード" | shasum -a 256と入力します(-nフラグで末尾の改行を除去し、ハッシュが変わるのを防ぎます)。
ハッシュが一致すれば、サーバーシードはベット後に変更されていません。一致しない場合はページ下部のFAQを参照してください。
ステップ5 — 結果確認:ゲーム結果を再計算する
シードの整合性が確認できたら、最後のステップは3つの入力から正しく結果が導出されているかの確認です。
組み込みバーリファイアを使う場合: サーバーシード・クライアントシード・ノンスを入力して実行するとパネルが生のランダム値とゲーム結果(ダイスの目、クラッシュの倍率、カードの種類など)を表示します。
第三者ツールを使う場合: StakeやBC.GAMEのような運営者は公平性ドキュメントで導出アルゴリズムを公開しています。一般的なパターンはHMAC-SHA256(キー:サーバーシード、メッセージ:クライアントシード:ノンス)で、出力の最初の4バイトを整数に変換し、ゲームの値域でmodを取ります。ホワイトペーパーや公平性ページに正確な変換式が記載されています。
手動で再計算する例(ダイスの場合):
HMAC-SHA256(key=サーバーシード, message="クライアントシード:ノンス")を計算する。- 結果の先頭8文字(16進数)を32ビット符号なし整数として読む。
- 2³²(4,294,967,296)で割り、0〜1の小数を得る。
- ダイスの最大値(通常10,000または100)を掛けて切り捨てる。
各カジノのメッセージフォーマットや使用バイト数は若干異なる場合があります。汎用の計算式ではなく、必ず運営者が公開している仕様を参照してください。CloudbetやBitcasinoはゲーム内またはヘルプセンターにリンクされた公平性ホワイトペーパーを公開しています。
検証結果の解釈
| バーリファイアの出力 | 意味 |
|---|---|
| ハッシュ一致・結果も再計算で一致 | ラウンドは正直 — シードはベット前に確定し、結果も正しく導出されている |
| ハッシュ一致・結果が再計算と不一致 | バーリファイアのバグ、またはノンスが違う可能性 — 改ざんと結論づける前に入力を再確認 |
| ハッシュが不一致 | サーバーシードが事後に変更された可能性 — 証拠を保存して異議申し立てを行う |
| ツール不使用またはクラッシュ | それ自体は不正の証拠ではない — CyberChefまたはスクリプトで公開アルゴリズムを使って検証する |
「検証済み」が意味しないこと
バーリファイアのグリーン結果は確認する価値があり、意味のある情報です。ただし2つの注意点があります。
第一に、検証済みでもハウスエッジは残ります。Provably FairとRNGの比較にあるように、どちらのシステムもカジノの数学的優位性の下で動作します。抽選が公正であっても、期待値はマイナスです。
第二に、Provably Fair はオリジナルゲームにのみ適用されます。ゲームスタジオが提供するスロットは外部のRNGシステムと独立監査を使用しており、カジノのシードスキームは適用されません。スロットの結果を検証したい場合はスタジオの監査ドキュメントが必要で、この手順は使えません。
まとめ
やり方を覚えれば検証は90秒程度で済みます。プレイ前にハッシュ化サーバーシードを保存し、ノンスとクライアントシードを控え、シードをローテーション後にハッシュを確認して結果を再計算するだけです。疑問のある結果には運営者のバーリファイアをまず使い、組み込みツールが使えない場合やインディペンデントな確認が必要な場合はCyberChefやターミナルが信頼できる代替手段になります。
このプロセスは機能します。ただし実際に使ってはじめて意味があります。検証済みの抽選にもハウスエッジがあり、いかなるアルゴリズムも取り除けないカウンターパーティリスクがあることを忘れないでください。検証に加えて信頼できるライセンスを持つ運営者を選び、合理的なセッション上限を設けることが、あなたのコントロール内でできる最善策です。
FAQ
- Provably Fair の検証に必要な3つの値は何ですか?
- サーバーシードのハッシュ(ベット前に記録)、クライアントシード(あなたが提供するランダム性)、ノンス(ベットごとに増えるカウンター)の3つです。ラウンド終了後、運営者が元のサーバーシードを公開するので、ハッシュ化して記録と一致するか確認し、その後3値から結果を再計算します。
- カジノが検証ツールを提供していなくても検証できますか?
- できます。CyberChef(オープンソース、ブラウザ上でローカル実行)などの汎用ツール、またはPython・Nodeの短いスクリプトを使えます。カジノが公開しているアルゴリズム(通常はHMAC-SHA256)に同じ入力を与えるだけです。ホワイトペーパーや公平性ページに、ハッシュ出力をゲーム結果へ変換する正確な計算式が載っています。
- ハッシュが一致しない場合、どうすればよいですか?
- まず値を正確にコピーできているか再確認してください。1文字でも違うとハッシュは変わります。値が正しくても一致しない場合、ベット後にサーバーシードが改ざんされた可能性があります。ハッシュ済みシードと公開シードのスクリーンショットを保存し、サポートに正式異議を申し立ててください。解決しない場合はライセンス機関に報告します。