暗号理論の問題
出力が 通りの値 のどれかになるハッシュ関数 を考える。 はランダムオラクルとみなす。つまり、互いに異なる入力に対する出力は、それぞれ独立に 通りの値から等確率で選ばれるものとする。
攻撃者は互いに異なる 個の入力 を用意し、それぞれのハッシュ値 を計算する( は正の整数)。この 個のハッシュ値の中に等しいものが少なくとも 組ある(衝突が起こる)確率が を超えるような のうち、最小のものを求めよ。
この問題で使うもの
- ハッシュの衝突確率(誕生日問題)(説明と入口の問題)
この問題を解けるようになるまで(58 技能)
読み込み中…
右端(太枠)がこの問題で使う技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。
一覧で見る(前提が先)
- 樹形図で数え上げる
- 積の法則と和の法則
- 和の法則・積の法則と樹形図
- 順列・円順列・重複順列
- 組合せ
- 確率の定義と和事象・余事象
- 分数のたし算・ひき算
- 小数の四則計算
- 正負の数の加法・減法
- 分数のかけ算・わり算
- 四則の混じった計算の順序
- 正負の数の乗除・累乗と四則混合
- 分配法則を使った計算のくふう
- 文字式の計算(同類項・分配法則)
- 乗法公式による展開
- 因数分解
- 3 次式までの展開と因数分解
- 微分係数と導関数の定義
- 多項式の微分
- 小数と分数のまじった計算
- 逆算(□ を求める)
- 1 次方程式の解き方
- 比例・反比例の式とグラフ
- 約数の見つけ方
- 素因数分解と約数の個数
- 平方根の意味と根号の簡単化
- 関数 の式と変域
- 平方完成と 2 次関数のグラフ
- 2 次不等式
- 剰余の定理・因数定理と高次方程式
- 増減表と極値
- 等間隔にならんだ数の和
- 等差・等比数列の和と Σ
- 数列の極限
- 関数の極限
- 関数の連続性と中間値の定理
- 平均値の定理
- 積と商の微分
- 第 2 次導関数とグラフの凹凸
- 合成関数の微分
- 円の周の長さと面積
- おうぎ形の弧の長さと面積
- 弧の長さからおうぎ形の中心角と面積を求める
- 三角形・四角形の面積
- 三平方の定理
- 特別な直角三角形の辺の比
- 弧度法と単位円による三角関数
- の極限
- 加法定理と 2 倍角・半角・積和の公式
- 三角関数の導関数
- 根号の乗除と加減
- 指数の拡張と指数関数
- 対数の定義と性質
- 自然対数の底
- 指数関数・対数関数の導関数
- 増減・凹凸・漸近線とグラフ
- テイラー展開
- ハッシュの衝突確率(誕生日問題)
ヒント
行き詰まったら、上から順に 1 つずつ開いてください。
ヒント 1
技能「ハッシュの衝突確率(誕生日問題)」を使う。衝突が起こる確率は、余事象「 個のハッシュ値がすべて異なる」の確率を から引いて求める。
ヒント 2
個がすべて異なる確率は である。 となる最小の を探せばよい。
ヒント 3
, , となる。この先も を順に掛けて、 を下回るところを探そう。
答えと解説
答えを見る
どこでつまずきましたか?(選ぶと、戻る場所を案内します)
解説を読む
方針: 「衝突が起こる」の余事象は「 個のハッシュ値がすべて異なる」である。そこで、すべて異なる確率を求めてから から引く。
すべて異なる確率: 出力は 通りで、各出力は独立に等確率で選ばれる。 個目は何でもよい。 個目は 個目と異なる確率 、 個目はそれまでの 個と異なる確率 、……となる。積の法則より、 個がすべて異なる確率は
である。衝突確率は である。
を小さい方から調べる: は前の値に を掛けていけば求まる。
-
-
-
-
-
したがって衝突確率は次のようになる。
-
-
は について減少するので、 は増加する。よって となる最小の は である。
近似による確認: 近似式 を使う。 となる条件は
である。、 なので となり、正確な計算と一致する。これは 程度という見積もりとも合っている。
答え:
別解
個のハッシュ値がすべて異なる確率は である。衝突が起こる確率は で、これが を超える最小の を求める。
- :
- :
- :
- : 。衝突確率は なので不適。
- : 。衝突確率は なので条件を満たす。
よって最小の は である。
検算: では を で割って 。 では を で割って 。どちらも上の値と一致する。