Подтвердить что ты не робот

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

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

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

4b9b3361

Ответ 1

Файл:

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

Ответ 2

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

Ответ 4

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