2

PGPKeyRingGeneratorコンストラクターは、秘密鍵を暗号化するためのパスフレーズを受け取ります。これを行うために使用するアルゴリズムは何ですか?encAlgorithmというフィールドがありますが、これらのアルゴリズムが何であるかを説明するドキュメントは見つかりませんでした。

4

3 に答える 3

2

デフォルトでは、PGPはIDEAを使用します(これを参照してください)。

他のアルゴリズムはencAlgorithmで定義でき、以下はOpenPGPでサポートされています。

public interface SymmetricKeyAlgorithmTags
{
    public static final int NULL = 0;        // Plaintext or unencrypted data
    public static final int IDEA = 1;        // IDEA [IDEA]
    public static final int TRIPLE_DES = 2;  // Triple-DES (DES-EDE, as per spec -168 bit key derived from 192)
    public static final int CAST5 = 3;       // CAST5 (128 bit key, as per RFC 2144)
    public static final int BLOWFISH = 4;    // Blowfish (128 bit key, 16 rounds) [BLOWFISH]
    public static final int SAFER = 5;       // SAFER-SK128 (13 rounds) [SAFER]
    public static final int DES = 6;         // Reserved for DES/SK
    public static final int AES_128 = 7;     // Reserved for AES with 128-bit key
    public static final int AES_192 = 8;     // Reserved for AES with 192-bit key
    public static final int AES_256 = 9;     // Reserved for AES with 256-bit key
    public static final int TWOFISH = 10;    // Reserved for Twofish
}

それらはすべて、パディングなしのCFBモードを使用します。

于 2010-07-23T19:05:19.853 に答える
1

これはPGPソフトウェアに依存します。たとえば、GPGはデフォルトでCAST5を使用します。

于 2010-08-23T19:45:38.957 に答える
0

PGP暗号化は、ハッシュ、データ圧縮、対称鍵暗号化、そして最後に公開鍵暗号化のシリアルな組み合わせを使用します。各ステップは、サポートされているいくつかのアルゴリズムの1つを使用します。各公開鍵は、ユーザー名や電子メールアドレスにバインドされています。このシステムの最初のバージョンは、認証局に基づく階層的アプローチを使用し、後でPGP実装に追加されたX.509システムとは対照的に、一般に信頼のWebとして知られていました。PGP暗号化の現在のバージョンには、自動化された鍵管理サーバーを介した両方のオプションが含まれています。

このウィキペディアのページから引用。それはあなたが探しているものでなければなりません。

于 2010-07-23T18:48:44.837 に答える