OpenPGP で利用可能なアルゴリズム一覧
OpenPGP においてユーザが選択可能なアルゴリズムの一覧を以下に挙げます。 表中に ID とありますが, これは各アルゴリズム毎に割り当てられた番号です。 例えば DSA は公開鍵暗号アルゴリズムの17番目なので「pub 17」と表記したりします。
今回は次期 OpenPGP ドラフト案(RFC2440bis)を基準に一覧を作成しました。 最後に参考となるサイト等も紹介していますのであわせて参考にしてください。
公開鍵暗号アルゴリズム(Public Key Algorithms)
| ID | アルゴリズム | 参考文献 |
|---|---|---|
| 1 | RSA (Encrypt or Sign) | "PKCS #1: RSA Cryptography Standard", RFC3447 |
| 2 | RSA Encrypt-Only | "PKCS #1: RSA Cryptography Standard", RFC3447 |
| 3 | RSA Sign-Only | "PKCS #1: RSA Cryptography Standard", RFC3447 |
| 16 | Elgamal (Encrypt-Only) | Taher El Gamal "A public key cryptosystem and a signature scheme based on discrete logarithms" |
| 17 | DSA (Digital Signature Algorithm) | FIPS PUB 186-2, FIPS PUB 186-3 draft |
| 18 | Reserved for Elliptic Curve | "Certicom Proposal to Revise SEC 1: Elliptic Curve Cryptography, Version 1.0" |
| 19 | Reserved for ECDSA | "Certicom Proposal to Revise SEC 1: Elliptic Curve Cryptography, Version 1.0", ANSI X9.62-2005 draft |
| 20 | Reserved | (formerly Elgamal Encrypt or Sign) |
| 21 | Reserved for Diffie-Hellman | ANSI X9.42, as defined for IETF-S/MIME |
RFC2440bis では, FIPS PUB 186-3 draft に従って, DSA アルゴリズムが拡張されます。 また RSA についてアルゴリズムの解説が追加("12.1. PKCS#1 Encoding In OpenPGP")されています。 なお pub 20 (Elgamal Encrypt or Sign) はアルゴリズム上の欠陥が発見され廃止になりました。
共通鍵暗号アルゴリズム(Symmetric Key Algorithms)
| ID | アルゴリズム | 鍵長 | ブロック長 | 参考文献 |
|---|---|---|---|---|
| 1 | IDEA | 128 | 64 | "IDEA International Data Encryption Algorithm" |
| 2 | TripleDES (3TDEA) | 168 (112 bits of strength) | 64 | SP800-67 |
| 3 | CAST5 | 128 | 64 | RFC2144 |
| 4 | Blowfish | 32-448 | 64 | "Description of a New Variable-Length Key, 64-Bit Block Cipher (Blowfish)" |
| 5 | Reserved | -- | -- | (formerly SAFER-SK128 (13 rounds)) |
| 6 | Reserved | -- | -- | (formerly DES/SK) |
| 7 | AES with 128-bit key | 128 | 128 | FIPS PUB 197 |
| 8 | AES with 192-bit key | 192 | 128 | FIPS PUB 197 |
| 9 | AES with 256-bit key | 256 | 128 | FIPS PUB 197 |
| 10 | Twofish with 256-bit key | 256 | 128 | "The Twofish Encryption Algorithm" |
sym 5 (SAFER-SK128), sym 6 (DES/SK) は RFC2440bis で廃止になりました。 なお OpenPGP では CFB mode (の変型; "12.9. OpenPGP CFB mode")で暗号化を行います。
ハッシュ・アルゴリズム(Hash Algorithms)
| ID | アルゴリズム | 参考文献 |
|---|---|---|
| 1 | MD5 | RFC1321 |
| 2 | SHA-1 | FIPS PUB 186-2 |
| 3 | RIPE-MD/160 | "The hash function RIPEMD-160" |
| 4 | Reserved | (formerly double-width SHA) |
| 5 | Reserved | (formerly MD2) |
| 6 | Reserved | (formerly TIGER/192) |
| 7 | Reserved | (formerly HAVAL (5 pass, 160-bit)) |
| 8 | SHA256 | FIPS PUB 186-2 |
| 9 | SHA384 | FIPS PUB 186-2 |
| 10 | SHA512 | FIPS PUB 186-2 |
| 11 | SHA224 | FIPS PUB 186-2 |
RFC2440bis において hash 4 (double-width SHA), hash 5 (MD2), hash 6 (TIGER/192), hash 7 (HAVAL-5-160) が廃止になり, hash 8-11 (SHA224/256/384/512) が追加されました。
圧縮アルゴリズム(Compression Algorithms)
comp 3 (BZip2) は RFC2440bis で追加されました。
S2K (String-to-key)
| ID | S2K タイプ |
|---|---|
| 0 | Simple S2K |
| 1 | Salted S2K |
| 2 | Reserved value |
| 3 | Iterated and Salted S2K |
S2K は共通鍵暗号用の鍵を生成する際に使われるアルゴリズムです。
参考
- RFC2440 (日本語訳)
- RFC2440bis
- 電子政府推奨暗号の仕様書
- 暗号の話
- デファクトスタンダード暗号技術の大移行 第3回 これだけは知っておきたいアルゴリズム~共通鍵暗号編
- デファクトスタンダード暗号技術の大移行 第4回 これだけは知っておきたいアルゴリズム~ハッシュ関数・公開鍵暗号・デジタル署名編
- OpenPGP 関連リンク集
結城 浩著
ソフトバンクパブリッシング (2003.9)
通常24時間以内に発送します。

