Могу ли я использовать мой ssh-открытый ключ для расшифровки файла? - PullRequest
23 голосов
/ 11 мая 2010

Я пытаюсь найти способ расшифровки зашифрованного файла на «девственном» экземпляре EC2. Эти экземпляры EC, которые я использую (Ubuntu Lucid), содержат только мой открытый ssh-ключ, созданный AWS. Если это можно использовать для расшифровки файла, я могу передать ему зашифрованные файлы (например, bash-скрипт, содержащий пароль, в мой subversion-репозиторий).

Итак, мой вопрос, могу ли я использовать свой ssh-ключ для шифрования / дешифрования файла?

Ответы [ 3 ]

34 голосов
/ 13 февраля 2011

Файл:

echo 'This is a sekret' >/tmp/msg.txt

Экспорт открытого ключа (если у вас его нет / он утерян):

openssl rsa -in ~/private.pem -out /tmp/public.pub -outform PEM -pubout

Зашифровать файл с открытым ключом (любой может иметь этот ключ):

openssl rsautl -encrypt -inkey /tmp/public.pub -pubin -in /tmp/msg.txt -out /tmp/file.enc

Расшифруйте файл с закрытым ключом (только у вас должен быть закрытый ключ):

openssl rsautl -decrypt -inkey ~/private.pem -in /tmp/file.enc -out /tmp/decrypted.txt

Расшифрованное сообщение:

cat /tmp/decrypted.txt
1 голос
/ 11 мая 2010

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

0 голосов
/ 11 марта 2017

Если вы просто хотите зашифровать / расшифровать с помощью ваших ключей ssh, ssh-vault может быть полезно, больше информации здесь: http://ssh -vault.com / about /

...