Доброго времени суток
Сабж.
Есть некоторое количество криптографических библиотек ( libssl, libcrypt, libgcrypt, наверняка и другие. Плюс код в ядре ), которые реализуют сотню или больше cipher'ов. И есть я, для которого название «ECDHE-RSA-AES256-GCM-SHA384» звучит как «тумба-юмба-723-ага»
Но зато у openssl есть крайне полезная утилитка ciphers, которая с ключами -v и -V покажет информацию по cipher'ам
router@rhea:~$ openssl ciphers -v -V | less
0xC0,0x30 - ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD
0xC0,0x2C - ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(256) Mac=AEAD
0xC0,0x28 - ECDHE-RSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA384
0xC0,0x24 - ECDHE-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA384
0xC0,0x14 - ECDHE-RSA-AES256-SHA SSLv3 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA1
[...]
0x00,0x12 - EDH-DSS-DES-CBC-SHA SSLv3 Kx=DH Au=DSS Enc=DES(56) Mac=SHA1
0x00,0x09 - DES-CBC-SHA SSLv3 Kx=RSA Au=RSA Enc=DES(56) Mac=SHA1
По тому же openssl есть openssl cookbook (скачивается после регистрации), в котором среди прочего перечислены уже заведомо небезопасные Au, Kx, Enc, Mac. И это ещё сильнее ограничит список cipher'ов, которыми можно пользоваться. И после, сузив круг поиска, можно гуглить конкретный cipher или читать исходники.
Но openssl только для SSL/TLS. Для шифрования файлов в GnuPG используется libgcrypt, в cryptsetup - libcrypt, у них свои нескучные шифры. Можно ли для них получить полный список поддерживаемых cipher'ов и краткую справку?
Если нет, что стоит прочитать, чтобы начать в этом разбираться?