Можно ли зашифровать текстовый файл, используя пару ключей ssh, используя gnupg? Там, где я работаю, мы уже создали нашу пару, и будет очень полезно использовать эти ключи для отправки зашифрованных файлов. Спасибо!
1 ответ
С точки зрения безопасности настоятельно не рекомендуется использовать одну и ту же пару ключей для аутентификации и шифрования данных. Например, если ключ, используемый для аутентификации, скомпрометирован, он также выявит все данные, ранее зашифрованные с его помощью. (Я не очень хорош, когда дело доходит до криптографии, но я считаю, что с этой стороны также есть несколько проблем.)
Кроме того, генерация второго ключа занимает менее 10 секунд (и это на пятилетнем компьютере).
Это технически возможно шифрование данных с использованием SSH ключей, хотя , как отмечалось @DavidSchwartz, только ключи RSA может быть использованы для этого - АССА и ECDSA может быть использован только для подписания.
Однако это не означает, что вы можете просто импортировать ключ в GnuPG и ожидать, что он будет работать. В этом посте показано несколько различий между сертификатами PGP, используемыми GnuPG, и открытыми ключами RSA, используемыми SSH; Короче говоря, "ключи" GnuPG содержат гораздо больше информации, чем просто параметры RSA, и просто не написано никаких инструментов, которые могли бы обернуть существующий ключ в сертификат GPG - прежде всего, чтобы избежать проблем безопасности.
"Другой" стандарт шифрования электронной почты, S/MIME, использует более простой формат сертификат (X.509) и существует широко доступные инструменты для создания сертификата на основе существующего ключа RSA. Наконец, вы можете отказаться от существующих стандартов и свернуть свои собственные, используя обычные старые функции RSA для шифрования, которые доступны практически для любого языка программирования и даже в качестве команд оболочки через openssl
. Копание собственной могилы оставлено читателю в качестве упражнения.