暗号クイズ

結城浩

2003年3月20日

[CR] 結城が現在執筆中の 「暗号本」に書こうとしている 暗号クイズです。$X^{Y}$はXのY乗をあらわします。

ブルート・フォース・アタックを現実的に不可能にするために必要な、
対称暗号の鍵のビット長を計算してください。

利用できるコンピュータパワーを次のように仮定します。

・コンピュータ1台は1秒間に$10^{20}$個の鍵を試せるとする。
・コンピュータの台数は$10^{100}$台存在するとする。
・全コンピュータを$10^{20}$年動かすとする。

これだけのコンピュータパワーを使っても、
鍵空間全部を調べることを不可能にするには、
鍵のビット長は何ビットあればよいでしょう。
以下の選択肢の中から、正しいものを選んでください。

(A) 512ビット以上あれば十分である
(B) 少なくとも1024ビットは必要である
(C) 少なくとも4096ビットは必要である
(D) 少なくとも1万ビットは必要である
(E) 100万ビットでも足りない

参考:
このコンピュータパワーはナンセンスなまでに過大に見積もっています。
現在のコンピュータのクロック速度は1秒間に$10^9$ほど、
宇宙全体の素粒子の数は$10^{87}$個ほど、
宇宙の年齢は$10^{11}$年だからです。