openssl genpkey” не может использовать опцию “-cipher des3

Вопрос или проблема

Попытка создать RSA ключ с помощью openssl:

openssl genpkey -algorithm RSA -cipher des3 -outform PEM -pkeyopt rsa_keygen_bits:2048 -out myCA.pem

Этот вывод:

genpkey: Используйте -help для получения справки.

Если я уберу -cipher des3, тогда это сработает, команда станет:
openssl genpkey -algorithm RSA -outform PEM -pkeyopt rsa_keygen_bits:2048 -out myCA.pem

Но в странице man есть эта опция:

введите описание изображения здесь

Вопросы следующие:

  1. почему опция -cipher des3 не поддерживается, и как это исправить?
  2. имеет ли значение, если я не добавляю опцию -cipher?

Опция не документирована как -cipher algorithm, а как -cipher. Это означает, что нужно использовать не -cipher des3, а -des3. Это также видно в примерах, которые являются частью документации. Цитирую:

openssl genpkey -algorithm RSA -out key.pem -aes-128-cbc -pass pass:hello

В этом случае используется AES-128-CBC вместо DES3. Это более подходящий выбор на сегодняшний день, поскольку DES3 больше не считается достаточно безопасным.

Ответ или решение

Проблема, с которой вы столкнулись при использовании команды openssl genpkey с параметром -cipher des3, связана с неправильным использованием опции шифрования. Давайте подробно рассмотрим ваши вопросы и объясним, как правильно использовать эту команду.

1. Почему опция -cipher des3 не поддерживается, и как это исправить?

Как указано в документации OpenSSL,

openssl genpkey -algorithm RSA -out key.pem -aes-128-cbc -pass pass:hello

опция шифрования не обозначается в формате -cipher algorithm, а должна быть указана просто с названием алгоритма шифрования: -des3, -aes-128-cbc и т.д. Таким образом, чтобы ваш код работал корректно, вам следует заменять -cipher des3 на -des3. Пример правильной команды будет:

openssl genpkey -algorithm RSA -outform PEM -pkeyopt rsa_keygen_bits:2048 -des3 -out myCA.pem

Важно упомянуть, что DES3 (или Triple DES) считается устаревшим и менее безопасным на сегодняшний день. Рекомендуется использовать более современные алгоритмы шифрования, такие как AES (Advanced Encryption Standard), который обеспечивает более высокий уровень безопасности.

2. Имеет ли значение отсутствие опции -cipher?

Если вы не указываете опцию шифрования (например, -des3 или аналогичную), ключ будет сгенерирован без дополнительного шифрования, что в некоторых случаях является приемлемым. Однако в зависимости от вашей среды и сценариев использования, отсутствие шифрования может привести к тому, что частный ключ окажется менее защищённым.

В общем случае, следует рассмотреть возможность использования шифрования для любых чувствительных данных. Если вы решите не использовать шифрование, убедитесь, что у вас есть надежные механизмы безопасности для защиты вашего частного ключа, такие как ограниченный доступ к файлу, применение прав доступа и т.д.

Заключение

Чтобы поправить вашу команду для генерации RSA-ключа с шифрованием, используйте правильную опцию для шифрования, то есть замените -cipher des3 на -des3. Если вы не хотите использовать шифрование, убедитесь в надежности хранения вашего ключа. Также рекомендуется ознакомиться с более современными алгоритмами, такими как AES, для улучшения безопасности ваших данных.

Помните, что правильное использование инструментов шифрования играет ключевую роль в обеспечении безопасности ваших криптографических ключей и данных.

Оцените материал
Добавить комментарий

Капча загружается...