Re: One-Time Pads
tadasuke@galaxy.ocn.ne.jp (Tadasuke YAMAGUCHI) writes:
> 山口です。
>
> Bruce Schneierの「暗号の秘密とウソ」を読んでます。
>
> その中の使い捨て鍵(One-Time Pads: OTP)部分の理解が間違っていたら
> どなたか指摘して欲しいなぁと。
>
> この本ではOTPについて次のように
>
> OTPを使っていますと主張する製品は、ほとんどウソをついている。
> そしてウソをついていないとすれば、その製品はほぼまちがいなく
> 使い物にならないか、そして/あるいはセキュアでない。
>
> と断言しています。(邦訳版 144頁より引用)
>
> これはあたかも通信内容が安全だとうたっている製品の場合にウソ
> となるだけで、認証自体はセキュアだと考えていいですよね。
1.ワンタイムパッドに物理乱数を使っている限り、OTP認証は安全だ。
2.物理乱数の本質は無限大のエントロピーにある。
3.製品として実装する限りエントロピーは有限
4.無限のエントロピーを実現させるためには別のセキュアな手段で乱数の共有を
する必要がある。
ウソをついているというのは、「3」に該当していて
使い物にならないのは、「4」に該当します。
セキュアじゃないというのは「3」に該当。
> つまり、telnetは毎回同じパスワードが平文で流れるのに対して、
> OTPはパスワードが毎回違うので、少し安全だ、ということでいい
> ですよね。
攻撃に対する計算量が多くなるという意味では「比較的セキュア」
といってもいいと思います。でも、たぶんSchneierが主張するセキュアは
この場合「情報理論的安全性」の話です。
#OTPの安全性は情報理論的安全性が前提
> もちろんパスワード生成の乱数具合がヘボくないことが前提で。
乱数生成が擬似乱数である限りそのセキュリティの度合いは擬似乱数生成器の
強度を超えることはできません。逆に言うと擬似乱数生成器の攻撃計算量で
計算量的安全性は主張できると思います。ただ、それはOTPが本来与えるべき
セキュリティレベルではありません。
> # ということは「通信時はOTPかSSH」なんていう規約はこの本でいう
> # ところのウソになるな...。
安全性という言葉を意図的に使い分けないとこうなると思います。
・情報理論的安全性->無限大の計算時間でも平文(あるいは未来の認証コード)が
決定不能
・計算量的安全性->平文(あるいは未来の認証コード)を有限の時間で導出可能だが
現実的には不可能
SSHに関してはDSAあるいはDHで鍵共有を行なうため、計算量的安全性しかありません。
ただし、その保護される情報の経済的価値と解読計算量の経済的価値で前者が上回る
ことによって、セキュリティを保つという考え方も、それはそれでアリだと思います。
--
I LOVE SNOOPY! でつ
Yoshitaka Ikeda mailto:ikeda@4bn.ne.jp
My Honeypot: honey@4bn.ne.jp <-don't send this address
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735