Crypter une chaîne en utilisant la ligne de commande openssl
J'ai un 16 octets personnage que je voudrais crypter à l'aide d'openssl dans un 16 octets chaîne cryptée.
Cette chaîne cryptée ( en format lisible par l'homme ) doit alors être fourni à l'utilisateur qui l'utilisent, et la chaîne d'être déchiffré à l'origine de 16 octets formulaire à des fins de comparaison et d'authentification. Quelqu'un pourrait-il me dire comment cela serait possible avec la ligne de commande openssl.
Merci à l'avance.
- Il est peu probable que le chiffrement de 16 octets 16 octets entraînera une lisible par l'homme de chaîne.
- +1 rouvrir. Il est 100% évident que ce qui est demandé ici. Je vais reformuler bien: comment crypter une chaîne de caractères à l'aide de la
openssl
commande? Il n'est pas évident de la tâche, et l'utilisateur fournit le contexte de sa demande. - "comment pouvez-vous chiffrer une chaîne à l'aide de la commande openssl" -, c'est que sur le sujet pour Stack Overflow? Il ne semble pas être de programmation relative. Il sonne comme un appel à l'aide sur une commande, qui serait plus approprié pour Super-Utilisateur.
- Je ne suis pas en désaccord avec cela. Mais alors la question doit être migré, pas fermé.
Vous devez vous connecter pour publier un commentaire.
Voici un moyen de crypter une chaîne de caractères avec openssl sur la ligne de commande (vous devez entrer le mot de passe deux fois):
Voici à quoi ressemble la sortie:
Edit: À ma connaissance, vous ne pouvez pas contrôler le nombre d'octets de sortie. Vous pouvez b64 ou hex de le coder, mais c'est tout. Aussi, si vous souhaitez enregistrer cette chaîne dans un fichier plutôt que sur la sortie standard, utilisez l'option.
-aes-256-cbc
au lieu de-aes-256
? Quelle est la différence?Essayez ceci:
Exécuter
à lister l'ensemble des algorithmes.
Je crois que vous êtes à la recherche pour le Format de la Préservation de Chiffrement. Je pense que le problème, c'est que vous devez commencer avec un de 16 octets, lisible par chaîne. Phillip Rogaway a un papier sur les technologies: Synopsis de
Format De La Préservation De Chiffrement. Il y en a beaucoup sur le papier, et il ne peut pas tenir dans un seul paragraphe, sur un Débordement de Pile.
Si vous pouvez commencer avec une chaîne plus courte, et l'utilisation d'un mode streaming comme POE, de l'OPA ou CTR, alors vous pouvez Base64 encode la chaîne finale, de sorte que le résultat est de 16 octets et lisible par l'homme. Base64 se développe à un taux de 3 → 4 (3 non codée étend à 4 codé), de sorte que vous auriez besoin d'une plus courte chaîne de caractères de longueur de 12 caractères pour atteindre 16 caractères lisibles par l'homme.
Autant que je sache, il n'y a pas de ligne de commande d'outils en mode natif. Vous pouvez être en mesure d'utiliser OpenSSL sur la ligne de commande avec AES/CTR et le tuyau à travers
base64
de commande. La suivante est proche, mais il commence avec 11 personnages (et non 12):Aussi, vous vraiment besoin de comprendre te
-k
option (et-K
d'ailleurs), et la façon dont elle dérive d'une clé de sorte que vous pouvez le faire à l'extérieur de la commande OpenSSL (si nécessaire).essayer cette
et vous avez+ de 100 Types de Chiffrement