Какой алгоритм использует PGP для шифрования закрытого ключа с использованием ключевой фразы? - PullRequest
2 голосов
/ 23 июля 2010

Конструктор PGPKeyRingGenerator принимает фразу-пароль для шифрования закрытого ключа.Какой алгоритм он использует для этого?В нем есть поле, называемое encAlgorithm, но я не смог найти никакой документации, объясняющей, что это за алгоритмы.

Ответы [ 3 ]

2 голосов
/ 23 июля 2010

По умолчанию 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 без заполнения.

1 голос
/ 23 августа 2010

Это зависит от программного обеспечения PGP, например, GPG по умолчанию использует CAST5.

0 голосов
/ 23 июля 2010

В шифровании PGP используется последовательная комбинация хеширования, сжатия данных, криптографии с симметричным ключом и, наконец, криптографии с открытым ключом;каждый шаг использует один из нескольких поддерживаемых алгоритмов.Каждый открытый ключ связан с именем пользователя и / или адресом электронной почты.Первая версия этой системы была широко известна как сеть доверия, в отличие от системы X.509, которая использует иерархический подход на основе центра сертификации и была добавлена ​​к реализациям PGP позже.Текущие версии PGP-шифрования включают обе опции через сервер автоматического управления ключами.

Взято с этой страницы википедии .Это должно быть то, что вы ищете.

...