暗号技術についてのメモです。
共通鍵暗号
ブロック暗号
ブロック暗号というのは、共通鍵暗号の一種。 データを一定のブロックごとに暗号化する方式。 高速な暗号化処理を行える。
- Triple DES - 1990年代。64 bit のブロック暗号 DES を 3 回繰り返す暗号化アルゴリズム。かつては米国政府標準暗号だった。
- MISTY1 - 1990年代。三菱電機が開発した 128 bit 暗号鍵を持つ 64 bit ブロック暗号アルゴリズム。
- CAST-128 - 64 bit ブロック暗号。
- Camellia - 2000年代。128 bit ブロック暗号。NTT・三菱電機。
- AES: Advanced Encryption Standard - 2000年代。128 bit ブロック暗号。
- SEED - 128 bit ブロック暗号。
国際標準のブロック暗号 (ISO/IEC18033-3) は、Camellia、AES、SEED、CAST-128、MISTY1、Triple DES。
ストリーム暗号
- MUGI
- MULTI-S01
- SNOW
国際標準のストリーム暗号 (ISO/IEC18033-4) は、MUGI、MULTI-S01、SNOW。
公開鍵暗号
RSA
- RSA: Rivest - Shamir - Adleman - 大きな素数の素因数分解が難しいという根拠に基づいた暗号方式。
楕円曲線暗号
楕円曲線状での離散対数問題に基づいた公開鍵暗号方式。
- PSEC-KEM: Provably Secure Elliptic Curve encryption - Key Encapsulation Mechanisms - NTT。
- ECDSA: Elliptic Curve Digital Signature Algorithm
国際標準の公開鍵暗号 (ISO/IEC18033-2) は、ACE-KEM, ECIES-KEM, PSEC-KEM, RSA-KEM, RSA-OAEP, HIME(R)。
参考: NTT 技術ジャーナル 2005.12
暗号アルゴリズムの使用期限
米国の国立標準技術研究所 (NIST) が提示する鍵の長さとその使用期限は、世界最高レベルのスーパーコンピューターを使っても解読に何十年もかかるかどうかが基準になっている。
その他、暗号関連用語
- シーザー暗号(昔の暗号)
- 文字をずらすだけの最も古い暗号。 紀元前 1 世紀に、ローマ帝国のジュリアス・シーザー(ガイウス・ユリウス・カエサル: Gaius Julius Caesar)が作りました。 ガリア戦争において軍事的な通信手段として用いられましたが、3 つのアルファベットをずらすだけの単純なものでした。
- DES: Data Encryption Standard
- 1970 年から米国の国家安全保障局と米 IBM 社が標準暗号化規格として開発に着手。 1977 年に商務省標準局が合衆国政府規格として制定しました。
- RSA 暗号化方式
- 1978 年に米国カリフォルニア州の RSA データ・セキュリティー社により発表された暗号化方式。 RSA という名前は、開発に着手した教授の頭文字から命名されています。 RSA は公開鍵暗号化方式であり、従来の DES のような秘密鍵の受け渡し時のリスクを回避しています。
- PGP: Pretty Good Privacy
- 1991 年にフィル・ジマーマン (Phil Zimmermann) が開発した暗号化技術。 一般的にはメール暗号化プログラムとして認知されており、PGP 暗号メールという文脈で使われました。 A さんから B さんにメール送信するときは、B さんが公開した暗号鍵を使って A さんがメールを暗号化して送信します。 B さんは受信したメールを、自身の複合鍵で複合化します(PGP において、暗号鍵は公開するもので、複合鍵は秘密にしておくものです)。
- ステガノグラフィ
- メッセージの存在を隠すタイプの暗号通信。ギリシャ語の、ステガノス(被う)+グラペイン(書く)に由来。
- クリプトグラフィ
- 暗号。ギリシャ語の、クリプトス(隠された)に由来。