暗号の起源
原始的な暗号技術は古代からあったことが知られており、大半の古代文明はある程度暗号を使っていたことが知られています。暗号の最も基本的な形式である記号置換は、古代エジプトとメソポタミアの両方で登場します。この種類の暗号の現状知られている限り最も古いものは、約3900年前に生きていた、クヌムホテプ2世の墓から発見されています。
クヌムホテプの碑文で記号置換が使われた目的は情報を隠すことではなく、その言語的な魅力を強化することでした。3500年前のメソポタミアで粘土板で、陶器の艶出しの処方を隠すために暗号が使われていたのが、機密情報を隠すために暗号が使われた、現在知られている、最古の例です。
古代の後期では、現在と同様に、重要な軍事情報を保護するために暗号が使われていました。ギリシャの都市国家スパルタでは、メッセージは、特定のサイズのシリンダーの上に置かれた羊皮紙に書き込まれることで暗号化され、受信者によって同様のシリンダーに巻き付けられるまでメッセージを解読できませんでした。同様に、古代インドのスパイは紀元前2世紀頃にはコード化されたメッセージを使っていたことが知られています。
古代世界における最も先進的な暗号はローマによるものと考えられています。ローマの暗号で有名なものとして、シーザー暗号が知られており、暗号化されたメッセージの文字をラテンアルファベットの特定の数だけ下に移動します。このシステムとずらした数がわからないと、判読できず、これらを知っている受信者は正常に復号することができます。
中世とルネッサンスにおける発展
中世を通じて、暗号はますます重要となりましたが、シーザー暗号のような代替暗号が標準のままでした。コードと暗号を解読する科学である暗号解析は、いまだに比較的原始的な科学だった暗号学に追いつこうとしていました。アラブの数学者Al-Kindiは800年頃に頻度分析として知られる技術を開発したことで、代替暗号の解読は容易になりました。歴史上はじめて、暗号解析のための体系的な方法が誕生したことで、暗号が機能し続けるため、暗号学は進歩しないといけなくなりました。
1465年にLeone Albertiは多アルファベット暗号を発明しました。この暗号はAl-Kindiの頻度分析に対してのソリューションとして考えられました。多アルファベット暗号では、メッセージは2つの全く違うアルファベットを使って暗号化されます。1つはオリジナルのメッセージに使われたアルファベット、一方で2つ目はまったく異なるアルファベットで暗号化した後ではメッセージは2つ目のアルファベットで表記されます。伝統的な代替暗号と組み合わせることで、他アルファベット暗号は暗号化された情報の安全性を大幅に向上させました。多アルファベット暗号では、解読者がオリジナルのメッセージに使われたアルファベットがわからない限り、頻度分析技術は使うことができません。
また、情報を暗号化するための新しい方法はルネッサンス期にも開発され、その中には1623年に有名な数学者のFrancis Baconが発明した初期の2進コード化もあります。
近代における発展
暗号学は何世紀にもわたって徐々に進歩し続けました。1790年代にトーマス・ジェファーソンによって、暗号技術の大きなブレークスルーが発表されましたが、おそらく実装することはできなかったでしょう。彼の発見は、暗号ディスクとして知られ、これは複雑な暗号化を行うために使うことができ、動くディスク上の36リングの文字によって構成されています。このコンセプトは非常に先進的だったため、第二次世界大戦までアメリカの軍事暗号の基礎として機能しました。
第二次世界大戦では、アナログ暗号の最高傑作であるエニグマも登場しました。エニグマは、暗号ディスクのように、歯車を採用し、回転するディスクおw使ってメッセージを暗号化していました。これによって、別のエニグマを持たないとメッセージを解読するのは事実上不可能でした。初期のコンピュータ技術がエニグマ暗号を破るのに使われました。そして、エニグマのメッセージを解読できるようになったことは、連合国が最終的に第二次世界大戦を勝利したことの重要な要素であると考えられています。
コンピュータの時代における暗号
コンピュータの登場によって、暗号化はアナログ時代よりもはるかに高度になりました。128ビットの数学的暗号化は、あらゆる古代、もしくは中世の暗号よりもはるかに強力のため、多くの重要なデバイスとコンピュータシステムにおける標準となっています。1990年代初頭、量子暗号と呼ばれるまったく新しい暗号の形式が、現在の暗号が提供する保護のレベルを再び引き上げたいと願うコンピュータサイエンティストたちによって、開発されました。