暗号化
暗号化により、特別な知識(パスワードなど)がないと読めないように情報を隠すことができます。これは、秘密のコードまたはサイファーで行われます。隠された情報は、暗号化されていると言われます。
復号化とは、暗号化された情報を平文に戻すことです。これが復号化された形となります。暗号化に関する学問を暗号学といいます。暗号解読は、サイファーが単純であれば、手作業で行うことができます。複雑な暗号は、コンピュータで可能な鍵を探す必要がある。復号は、コンピュータ科学と数学の分野で、暗号を破るのがどれだけ難しいかを調べるものです。
例
言葉の暗号化として簡単なものにROT13があります。ROT13では、アルファベットの文字が簡単なパターンで互いに入れ替わります。例えば、AはNに、BはOに、CはPに、といった具合です。各文字は13個のスペースで "回転 "します。ROT13暗号を使うと、Simple English WikipediaはFvzcyr Ratyvfu Jvxvcrqvnになる。ROT13暗号は解読が非常に簡単です。英語のアルファベットは26文字なので、ある文字を13文字ずつ2回回転させると、元の文字が得られます。つまり、ROT13暗号を2回適用すると、原文が戻ってくるというわけだ。ユリウス・カエサルは軍隊と通信する際、今日カエサル暗号と呼ばれるものを使うことがありました。この暗号は、文字の位置をずらすことで機能します。各文字を3つずつ回転させます。
ほとんどの種類の暗号は、暗号解読が困難になるように複雑化されている。テキストだけを対象としたものもあります。また、画像や音楽のようなバイナリファイルを対象としたものもあります。今日、多くの人がRSAと呼ばれる非対称暗号化方式を使用しています。どんなコンピュータ・ファイルでもRSAで暗号化することができます。AESは一般的な対称型アルゴリズムです。
ワンタイムパッド
敵は、賢い数学者と強力なコンピュータと多くの時間があれば、パスワードを知らなくてもメッセージを解読することができるかもしれないのです。ワンタイムパッドは特殊で、正しく使えば解読は不可能だ。守らなければならないルールが3つある。
- 秘密鍵(パスワード)は、秘密メッセージと同じ長さでなければなりません。メッセージが20文字であれば、鍵も少なくとも20文字でなければなりません。
- 秘密鍵はランダムであること(例:KQBWLDA...)
- 秘密鍵は一度だけ使用する必要があります。複数のメッセージを送信する場合は、それぞれに異なる鍵を使用する必要があります。
この3つのルールに従えば、秘密鍵を知らない限り、秘密のメッセージを読み取ることは不可能である。このため、冷戦時代、大使館や大規模な軍隊では、自国政府と秘密裏に通信するためにワンタイムパッドがよく使われた。ランダムな文字や数字で埋め尽くされた小さな本(「パッド」)を持っていたのだ。そのため、「ワンタイムパッド」と呼ばれるようになった。
インターネットにおける暗号化
多くのWebサイトが個人情報を保護するために暗号化を使用しているように、インターネットでは暗号化が頻繁に使用されています。インターネットでは、SSL(Secure Sockets Layer)、IPsec、SSHなど、いくつかの暗号化プロトコルが使用されている。これらは、RSA暗号方式などを使用している。保護されたWebブラウジングのためのプロトコルは、HTTPSと呼ばれます。URLの暗号化には、主にMD5アルゴリズムが使用されている。インターネット市場では、必要性に応じて様々なアルゴリズムが使用されている。
関連ページ
- FreeOTFE - ディスクの暗号化
- PGP(Pretty Good Privacy) - 電子メールの暗号化
- PuTTY - SSH暗号化
質問と回答
Q: 暗号化とは何ですか?
A: 暗号化とは、秘密のコードやサイファーを使って、パスワードのような特別な知識がなければ読み取れないように情報を隠すことです。
Q: 復号化とはどういう意味ですか?
A: 復号化とは、暗号化された情報を平文に戻すプロセスのことです。
Q: 暗号とは何ですか?
A: 暗号学とは、情報を暗号化し、どのように安全にするかを研究する学問です。
Q: 暗号は手で解析できますか?
A: 簡単な暗号であれば、暗号解読と呼ばれる手作業で解読することができます。
Q: 解読にコンピュータが必要なサイファーの種類は?
A: 複雑なサイファーは、可能性のある鍵を探すためにコンピュータを必要とします。
Q: 復号化を研究するコンピュータ・サイエンスの分野は何と呼ばれていますか?
A: 暗号解読はコンピュータ・サイエンスと数学の一分野であり、サイファーの解読がいかに難しいかを研究しています。
Q: 暗号化の目的は何ですか?
A: 暗号化の目的は、特別な知識やパスワードがなければ読めないようにして、機密情報を保護することです。