絶対に解読できない暗号として、情報理論的安全性に基づく暗号がある。
これは平文が鍵長より短くなければいけないことがシャノンにより証明されている。
この安全性について、直感的に分かりにくい、と思ってた。
そこで簡単な例をあげて考えてみよう。
[方式]
暗号化の方式は単純に平文と鍵のEXORを取るものとする。
もちろん復号の方式もEXORである。
[平文]
yes:1111
no :0000
をそれぞれ表すことする。
[問題]
さて今、暗号文として1010が与えられたとする。
この暗号文だけで平文を解読することができるだろうか?
[解答]
仮に鍵を0101として計算すると、1111という平文が求まる。
次に鍵を1010として計算すると、0000という平文が求まる。
この条件だけで、どちらが正しいかを判断することは、
無限の計算力(リソース)があっても無理でしょう。
直感的には分かりやすいと思うんだけど、どうだろう。
解けない安全な暗号があるのに、暗号の研究がいまだに
なされている理由は、
1、平文≦鍵長 を満たす必要がある。
つまり1Gbyteのファイル暗号化するには1Gbyteの鍵がいる。
2、しかも、それを安全に事前に共有していなければならない。
3、さらにその鍵は一回こっきりしか使えません。
という面倒でやっかいな条件があるためです。
だから研究者の人達はもっと容易に使える暗号を
生み出そうと日夜研究しているのです。
これは平文が鍵長より短くなければいけないことがシャノンにより証明されている。
この安全性について、直感的に分かりにくい、と思ってた。
そこで簡単な例をあげて考えてみよう。
[方式]
暗号化の方式は単純に平文と鍵のEXORを取るものとする。
もちろん復号の方式もEXORである。
[平文]
yes:1111
no :0000
をそれぞれ表すことする。
[問題]
さて今、暗号文として1010が与えられたとする。
この暗号文だけで平文を解読することができるだろうか?
[解答]
仮に鍵を0101として計算すると、1111という平文が求まる。
次に鍵を1010として計算すると、0000という平文が求まる。
この条件だけで、どちらが正しいかを判断することは、
無限の計算力(リソース)があっても無理でしょう。
直感的には分かりやすいと思うんだけど、どうだろう。
解けない安全な暗号があるのに、暗号の研究がいまだに
なされている理由は、
1、平文≦鍵長 を満たす必要がある。
つまり1Gbyteのファイル暗号化するには1Gbyteの鍵がいる。
2、しかも、それを安全に事前に共有していなければならない。
3、さらにその鍵は一回こっきりしか使えません。
という面倒でやっかいな条件があるためです。
だから研究者の人達はもっと容易に使える暗号を
生み出そうと日夜研究しているのです。