Друзья-коллеги, добрый день! Я вот понять не могу, и найти прямого ответа на свой вопрос тоже не могу.
Если генерирую rsa ключ командой # openssl genrsa -aes256 -out newkey.pem 4096 то в файле за заголовком "-----BEGIN RSA PRIVATE KEY-----" вижу поля Proc-Type и DEK-Info
А если вот так: # openssl genpkey -algorithm RSA -out newkey.pem -aes256 -pkeyopt rsa_keygen_bits:2048 то в файле за заголовком "-----BEGIN ENCRYPTED PRIVATE KEY-----" уже не вижу тех полей.
Я что-то много где искал, но так и не понял, это новый формат PEM? Старый типа deprecated или я ошибаюсь? Где об этом прямо написано?
P.S. читаю RFC 1421 и 1423 и вижу там описание этого поля. man 3 pem в разделах "NOTES" и "PEM ENCRYPTION FORMAT" тоже как-то двояк
[Неполный ответ]Все таки прямого ответа на свой вопрос не нашел. Но многочисленные упоминания в рассылках и манах говорят о том, что есть 2 формата.
"Traditional" PEM-encoded формат, который также иногда называется SSLeay format. Считается legacy. При шифровании может содержать после заголовка поля Proc-Type и DEK-Info со служебной инфой. Кстати, именно в таком формате генерится ключ при использовании команд genrsa и gendsa. И такой способ считается устаревшим.
PKCS#8 PEM-encoded формат. Современный формат. Отличается заголовком, отсутствуют поля. Сам ключ там составлен в соответствии со спецификацией PKCS#8, а при использовании шифровании используется еще и PKCS#5. В таком формате работает genpkey, и так генерить ключи сейчас считается правильно.