Aviatorアルゴリズム解説:プロバブリーフェアSHA-512を詳しく解説

ER
Emma Rodriguez·責任あるギャンブル エディター
監修James Mitchell
3 分で読めます

Aviatorのアルゴリズム解説:技術ガイド完全版

Aviatorの最も重要な特長の一つが、プロバブリーフェア(検証可能な公平性)アルゴリズムです。これは暗号技術を用いた仕組みで、どのプレイヤーでも、あるラウンドのクラッシュポイントが公正に決定され、操作されていないことを自分で検証できます。このガイドでは、その仕組み、背景にある数学、そして結果を自分で検証する方法を説明します。


「プロバブリーフェア」とは何か

従来のカジノゲームでは、運営側が結果を操作していないと信じるしかありません。プロバブリーフェアのシステムは暗号学的ハッシュ関数を使うことで、この「信じる」という前提を不要にします。いったん確定した結果を後から変更することは、数学的に不可能だからです。

基本原則は次のとおりです。

  1. ラウンドの前に、サーバーはハッシュを公開することで結果をコミット(確約)します
  2. ラウンドの後に、サーバーは原像(ハッシュの生成に使われたシード)を公開します
  3. コミットされたハッシュと公開されたシードが一致するかどうかを検証できます
  4. 一致すれば、結果は操作されていません

SHA-512ハッシュ関数

SHA-512(Secure Hash Algorithm 512-bit)は暗号学的ハッシュ関数で、プロバブリーフェアなゲームにとって重要な2つの性質を持っています。

性質1:決定性

同じ入力からは、常に同じ出力が得られます。

  • 入力:"hello" → 出力:9b71d224bd62f3785d96d46ad3ea3d73319bfbc2890caadae2dff72519673ca72323c3d99ba5c11d7c7acc6e14b8c5da0c4663475c2e5c3adef46f73bcdec043

性質2:原像攻撃への耐性

ハッシュ値から元の入力を逆算することは、計算上不可能です。世界中の計算能力を総動員しても、あるSHA-512ハッシュに対応する入力を見つけるには、宇宙の年齢より長い時間がかかります。

つまり、サーバーがラウンドの前にハッシュを公開した場合、後から元のシードを変更すると、まったく異なるハッシュになってしまい、すぐに見破られます。


入力値:サーバーシードと3つのクライアントシード

Aviatorのクラッシュポイントは、4つの入力値から生成されます。

サーバーシード

ラウンドの前にサーバーが生成するランダムな文字列です。サーバーはベットの受け付け前にこのシードのSHA-256ハッシュを公開し、ラウンド終了後にシード本体を公開します。

クライアントシード

そのラウンドで最初にベットした3人のプレイヤーのクライアントシードが集められ、ラウンドの詳細に表示されます。これらの値は互いに独立したプレイヤーから得られるため、運営側が合成後の入力値を事前に知ることはできません。

入力値の結合

サーバーシードと3つのクライアントシードを連結し、SHA-512でハッシュ化します。得られた128文字の16進数文字列が、クラッシュポイントを決定します。


クラッシュポイントの計算方法

Spribeは、SHA-512ハッシュを倍率に変換する正確な計算式を公開していません。以下の解説では、Bustabitによって広まったオープンな参照実装(ノンス付きのHMAC-SHA256ラウンドハッシュ)を使い、ハッシュがどのように倍率になり、その分布がP(crash ≥ x) = 0.97/xを満たすのかを示します。AviatorのSHA-512パイプラインも同じ原理に従っています。つまり、ハッシュの先頭ビットを取り出し、倍率に変換し、ハウスエッジを適用します。

この参照実装では、クラッシュポイントは次の決定的な手順で導かれます。

ステップ1:ラウンドハッシュを生成する

round_hash = HMAC-SHA256(server_seed, client_seed + ":" + nonce)

これにより、64文字の16進数文字列が得られます。例:

a7b3c8d2e9f14056789012345678901234567890abcdef1234567890abcdef12

ステップ2:ハッシュから数値を取り出す

ハッシュの先頭8文字(32ビット)を取り出し、16進数から10進数に変換します。

h = parseInt(hash.substring(0, 8), 16)
// Example: "a7b3c8d2" → 2,813,000,914

hの最大値は2^32 − 1 = 4,294,967,295です。

ステップ3:クラッシュポイントの式を適用する

crash_point = floor((1 − houseEdge) × 2^32 / (2^32 − h)) / 100

ここでhouseEdge = 0.03(3%)です。

簡略化すると次のとおりです。

crash_point = floor(0.97 × 4,294,967,296 / (4,294,967,296 − h)) / 100

特殊ケース:即時クラッシュ

ハウスエッジを直接反映する別の条件があります。次の条件が成り立つ場合:

h mod 33 === 0

...計算式の結果にかかわらず、ラウンドは1.00×で即座にクラッシュします。これは1/33 ≈ 3.03%の確率で発生し、ハウスエッジを確保する役割を果たします。


具体例で見てみましょう

あるラウンドのハッシュの先頭8桁の16進数が4f2a1b3cだとします。

h = 0x4f2a1b3c = 1,328,284,988
2^32 = 4,294,967,296

確認:1,328,284,988 mod 33 === 0 でしょうか。いいえ → 計算式に進みます。

crash_point = floor(0.97 × 4,294,967,296 / (4,294,967,296 − 1,328,284,988)) / 100
= floor(4,166,117,577 / 2,966,682,308) / 100
= floor(1.4043...) / 100
= 140 / 100
= 1.40×

このラウンドのクラッシュポイントは1.40×になります。


この式で正しい分布が得られる理由

P(crash ≥ x) = 0.97 / xという関係は、この構成から数学的に導かれます。

クラッシュポイントがx以上になるためには、ハッシュから得られる値hが次を満たす必要があります。

0.97 × 2^32 / (2^32 − h) ≥ x
→ 2^32 − h ≤ 0.97 × 2^32 / x
→ h ≥ 2^32 × (1 − 0.97/x)

一様ランダムなhがこれを満たす確率は次のとおりです。

P(h ≥ 2^32 × (1 − 0.97/x)) = 1 − (1 − 0.97/x) = 0.97/x

したがって、ちょうどP(crash ≥ x) = 0.97/xになります。ハウスエッジの式は、クラッシュポイントの導出に数学的に組み込まれているのです。


結果を自分で検証する方法

ステップ1:ラウンドのデータを記録する

どのラウンドでも、終了後に次の情報を控えてください。

  • サーバーシードのハッシュ(ラウンド前に表示)
  • サーバーシード(ラウンド後に公開)
  • 最初の3人のベットしたプレイヤーのクライアントシード

ステップ2:ハッシュのコミットメントを検証する

SHA-256(server_seed)を計算し、事前にコミットされたハッシュと一致することを確認します。一致すれば、コミット後にサーバーシードが変更されていないことになります。

ステップ3:クラッシュポイントを再計算する

上記の式を使って、シードからクラッシュポイントを再計算します。表示されたクラッシュポイントと一致すれば、そのラウンドは公正でした。

AviatorStatsのProvably Fair Checkerを使う

AviatorStats.comのProvably Fair Checkerツールを使えば、この一連の作業をすべて自動化できます。

  1. 公開されたサーバーシードと、ラウンドの詳細に表示される3つのクライアントシードを入力します
  2. ツールがSHA-512による結合を計算し、hを取り出し、クラッシュの式を適用して、期待されるクラッシュポイントを表示します
  3. ゲームに表示された結果と比較します。完全に一致するはずです

これにより、手計算をしなくても、ラウンドの公正性について暗号学的な確証が得られます。


プロバブリーフェアが保証すること、保証しないこと

保証すること:

  • クラッシュポイントが、コミット後に変更されていないこと
  • 結果が、シードによって数学的に決まること
  • ハウスエッジが、規定どおりちょうど3%であること
  • 誰でも過去のどのラウンドも独自に検証できること

保証しないこと:

  • 特定のラウンドであなたが勝てること
  • 結果の並びが、個々のプレイヤーにとって「公平」であること
  • 戦略によって、組み込まれたハウスエッジを覆せること
  • 過去の結果が将来の結果を予測すること(予測できません)

プロバブリーフェアのシステムは透明性を確保するための仕組みであり、勝つための道具ではありません。ゲームが表示どおりに運営されていることを保証するもので、それ自体には価値がありますが、長期的な期待値の数学とは別の問題です。



Aviator の分析ツールをご利用ください

当サイトのライブ統計、分布分析、トレンドチャート、provably fair 検証ツールで Aviator のデータを分析できます。すべてのツールは無料で、登録は不要です。


関連ガイド

ゲームガイド:

戦略と分析:

詐欺に関する警告:

プラットフォームガイド:

免責事項:この技術的な解説は教育目的です。アルゴリズムを理解しても、結果を予測する上での優位性は得られません。Aviatorの結果は、各ラウンドの前には暗号学的に予測不可能です。ギャンブルは必ず責任を持って行ってください。

ER

責任あるギャンブル エディター。Aviatorトラッカーチームに向けて、クラッシュゲーム、RTP分析、責任あるギャンブルに関する専門的なコンテンツを制作しています。

よくある質問

プロバブリーフェアとは、各ラウンドのクラッシュポイントが、ラウンド開始前に(公開されるサーバーシードのハッシュによって)暗号学的にコミットされていることを意味します。ラウンド後にサーバーが元のシードを公開し、それが事前にコミットされたハッシュと一致するかどうかを検証できます。一致すれば、結果は操作されていません。
このガイドで使用している参照実装では、crash_point = floor((1 − 0.03) × 2^32 / (2^32 − h)) / 100 となります。hはラウンドハッシュの先頭8桁の16進数から得られる32ビット整数で、h mod 33 = 0 の場合はラウンドが1.00×で即座にクラッシュします。Spribe自身の実装では、サーバーシードと3つのクライアントシードをSHA-512でハッシュ化しており、正確な計算式は公開されていません。
できません。サーバーシードのハッシュは、ラウンドが行われる前に公開されます。コミット後にサーバーシードを変更すると別のハッシュになってしまい、プレイヤーはすぐにそれを検知できます。この暗号学的コミットメントにより、事後の操作は数学的に実行不可能です。
ハウスエッジは2か所に現れます。(1) クラッシュの式にある0.97という係数が、すべてのクラッシュポイントを比例的に引き下げます。(2) h mod 33 = 0 の場合(確率は約3.03%)、ラウンドは1.00×で即座にクラッシュします。この2つが合わさって、ちょうどP(crash ≥ x) = 0.97/xになります。
AviatorStatsのProvably Fair Checkerを使います。サーバーシード(セッション後に公開)、サーバーシードのハッシュ、クライアントシード、ラウンドのノンスを入力してください。ツールがHMAC-SHA256を再計算し、式からクラッシュポイントを導き、表示された結果と比較します。一致すれば公正であることが確認できます。

関連ページ

Aviatorゲーム:Spribe社クラッシュゲーム完全ガイド

Aviatorクラッシュゲームの仕組みを徹底解説します。倍率のメカニズム、provably fair RNG、RTP 97%、ハウスエッジ3%、そして全ラウンドの裏にある統計と、このゲームの歴史、責任あるプレイのための注意点までご紹介します。

続きを読む

Aviatorをプレイする:始め方、ベット、キャッシュアウト

Aviatorのプレイ方法を解説します。ベットの仕方、オートキャッシュアウト、デュアルベットモード、デモと実際のお金でのプレイの違い、AviatorStatsのトラッカーツールの活用法に加え、詐欺への注意点や責任あるプレイのポイントも紹介します。

続きを読む

Aviatorデモ:リスクなしで無料練習

Aviatorのデモモードを無料で試せます。リアルプレイと同じアルゴリズム、仮想残高、登録不要。当サイトのシミュレーターの仕組みと、デモプレイで観察すべきポイント、リアルマネーとの違いを詳しく解説します。ギャンブルを推奨するものではなく、教育目的の無料ツールです。責任あるプレイを心がけてください。

続きを読む

Aviatorの遊び方:初心者向けステップバイステップガイド

Aviatorの遊び方を一から丁寧に解説する完全ガイドです。画面の見方、クラッシュ曲線、自動キャッシュアウト、初心者向けのヒント、そして避けたいよくある間違いまで、初めてでも迷わないよう、順を追って詳しく学べる、初心者のための入門ガイドです。

続きを読む

Aviatorを無料でプレイ:登録不要のデモガイド

Aviatorを登録なしで無料プレイ。ブラウザ上のデモシミュレーターと仮想残高の使い方、クラッシュゲームの戦略をリスクなしで練習する方法、無料を装う予測ツール詐欺への注意点を詳しく解説します。教育と情報提供を目的とした無料のツールで、ギャンブルを勧めるものではありません。ご安心ください。

続きを読む

Aviatorプレディクター:予測アプリが詐欺である理由

Aviatorの予測アプリ(プレディクター)や、Telegramのシグナルグループは本物なのでしょうか。クラッシュゲームの予測が数学的に不可能である理由、詐欺師がプレイヤーをだます具体的な手口、そして自分の身を守るための対策を詳しく解説します。

続きを読む