暗号史
コンピュータの性能が向上するにつれ、暗号の安全性は、コンピュータをもってしても解読を防げる程度にまで達したが、暗号技術は別の壁にぶつかる。
共通鍵暗号で通信をするには予め鍵を相手に送っておかなければならないが、その鍵を暗号化せずにそのまま送信すれば第三者に盗まれてしまう。安全に鍵を配送するのは多額のコストがかかり、これが鍵配送問題と呼ばれる問題である。 鍵配送問題の例として、敵国に侵入したスパイに暗号鍵を送信していると推測される放送もある(ナンバーステーション、乱数放送)。
鍵配送問題を解決すべく、1976年にホイットフィールド・ディフィDiffieとマーチン・ヘルマンHellmanが公開鍵暗号系の概念を提案する(Diffie-Hellman鍵共有)。これは共通鍵暗号系と違い、暗号化と復号に別の鍵を使う、というアイデアである。暗号化の鍵は誰でも入手できるように公開してもよく、送信者はその公開鍵で暗号化して送信し、受信者は復号鍵で平文に戻す。公開された暗号化鍵では復号できず、復号鍵は受信者しか知らないので、通信の秘密は保たれる。
具体的な公開鍵暗号方式として有名なRSA暗号はその翌年に発表された。その後、ラルフ・マークルMerkleとヘルマンの二人が公開鍵暗号方式であるMerkle-Hellmanナップサック暗号を提案したが、この暗号方式は後に解読されてしまった。暗号ソフトウェアはフリーウェアとして公開されているPGPなどもあり、誰でも安心して通信できるようになった。
現在ではもっぱらソーシャルエンジニアリングによる鍵や情報の流出の危険性のほうが問題となっている。コンピュータのパスワードを複雑なものにする、パスワードのメモを机やゴミ箱に放置しないなどの対策が必要となる。
暗号の起源は古く、数千年の歴史を持つ。時間的にはその大部分は古典的な暗号に関するものである。古典的な暗号の暗号化の大抵は、紙と鉛筆(と多少の道具)を使って行うことができるものであった。暗号に使われる道具は、その長い歴史にわたり、機械工作精度などの進歩にあわせ、少しずつ発展した。
暗号解読は暗号化の裏面にあって、暗号の歴史と対となる歴史がある。ルーツを言語学に持つ頻度分析の暗号への応用(頻度分析 (暗号) の記事を参照)はその初歩であり、そして途絶えることなく進化した。暗号にまつわるさまざまな事件の約半分はこの裏側にあるとも言える。
技術史から見ると18世紀以降に急激に発展した電気の利用の、情報通信への応用では、同時に暗号化の要請も重要であった。エニグマのような、電気回路の接点網の断続によって信号をスクランブルするこの時期の暗号は、次に来たコンピュータの時代の暗号の、いくつかの意味で先駆となっている。
「ケルクホフスの原理」は、以上のような古典から近代までの暗号と、現代の暗号とを隔てている原理である。