75 votes

Comment utiliser la clé publique ssh-rsa pour crypter un texte?

Alors, le scénario est le suivant : Étant donné que je suis Bob, je veux chiffrer un message pour Alice. La seule clé publique que j'ai est son identifiant ssh-rsa id_rsa.pub comme ceci :

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAyb+qaZLwgC7KAQJzYikf3XtOWuhlMXVv2mbTKa5dp0sHPRd2RaYnH8ZRkt7V8bjqct1IHGCuxI8xyoEp4at3FHe6j9RfWiarc1ldLUCmTtryI0GGpRs6Zpvqdtpcq/1NCIYtUQAvsImyEFCtqmB2suDo1ZSllZQ0x9TCKHdCANYIOeaniuFzR57POgE3vxk/r6PO24oy8BIWqxvi29r0n1LUigVBJ7CmMHuzb4/+i1v6PxV1Lqnj6osPP9GpXpsh8kLUCby/KcmcryWNdSP0esyCdDxkA5hlIuk8qL1vzsyPluUQuc0BEHu6nuw8WQlCF1mFFxcpJL+MhWEr01WIIw== sikachu@Sikachus-Notebook.local

Alors, y a-t-il un moyen de chiffrer une chaîne en utilisant cette clé publique afin qu'elle puisse utiliser sa clé privée de id_rsa (générée à partir de ssh-keygen) pour décoder le message ?

(Je sais que c'est possible immédiatement si vous utilisez un fichier de clé de paire .pem. Si vous pouvez me montrer comment convertir ceci au format pris en charge par openssl, ce serait également génial !)

Merci !

102voto

Dirk Thannhäuser Points 1216

Il est possible de convertir votre clé publique ssh au format PEM (que 'openssl rsautl' peut lire) :

Exemple :

ssh-keygen -f ~/.ssh/id_rsa.pub -e -m PKCS8 > id_rsa.pem.pub

En supposant que 'monMessage.txt' est votre message qui doit être chiffré avec la clé publique.

Ensuite, il suffit de chiffrer votre message avec openssl rsautl et votre clé publique PEM convertie comme vous le feriez normalement :

openssl rsautl -encrypt -pubin -inkey id_rsa.pem.pub -ssl -in monMessage.txt -out monMessageChiffre.txt

Le résultat est votre message chiffré dans 'monMessageChiffre.txt'

Pour tester votre travail et déchiffrer avec la clé privée d'Alice :

openssl rsautl -decrypt -inkey ~/.ssh/id_rsa -in monMessageChiffre.txt -out monMessageDechiffre.txt

1voto

Ola Ström Points 247

Essayez ssh-vault qui utilise des clés publiques ssh-rsa pour crypter "créer un coffre-fort" et la clé privée ssh-rsa pour décrypter "afficher le contenu du coffre-fort"

-3voto

foamroll Points 187

Pourquoi ne pas faire cela de la manière super évidente qui ne nécessite pas de créer votre propre crypto.

Alice envoie en sftp à alice@bobserver.com qui est configuré pour ne permettre que l'authentification par clé publique pour le compte alice. Les propriétés de ssh garantissent joliment que seule alice peut s'authentifier. Même une attaque de l'homme du milieu échoue car (en supposant que vous désactiviez ssh1 et exigez les bons paramètres) la communication initiale en utilisant DH crée une valeur connue uniquement de alice et bob mais pas de n'importe quel homme du milieu et cela peut être utilisé pour authentifier qu'aucune réponse ou attaque MITM ne peut voir le contenu de la communication.

Alors faites en sorte qu'Alice se connecte en sftp sur votre boîte et télécharge le fichier.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X