Je dois chiffrer le texte (mot de passe spécifique) correctement afin qu'un tiers puisse le déchiffrer. Ils m'ont fourni la clé qu'ils utilisent pour déchiffrer et m'ont dit qu'ils vont le décrypter de leur côté avec OpenSSL.Utilisation de System.Security.Cryptography pour chiffrer le texte afin qu'il corresponde à OpenSSL
J'ai essayé d'obtenir le AESManaged, et les classes RijndaelManaged dans System.Security.Cryptography pour créer quelque chose qui est décryptable mais pas très réussi.
L'exemple OpenSSL pour le chiffrement offert était:
echo "mot de passe" | enc -base64 -AES-256-cbc -k "providedKey" -p -md SHA1
Je dois créer un CryptoStream qui est un chiffreur AES avec une taille de clé de 256, et un mode de chiffrement de Radio-Canada . Et puis base64 coder le tableau d'octets résultant. Cette partie est assez simple. Ce que je ne sais pas comment créer est la clé et je cherche un point dans la bonne direction.
J'ai remarqué que tous les décodeurs base64 de texte créés par ces paramètres dans OpenSSL ont démarré avec les mêmes 8 caractères "Salted__". Donc je devine que c'est le sel utilisé pour générer la clé.
Quelqu'un sait comment créer une clé SHA1 avec la clé privée et "Salted__"?
Je suis conscient du projet OpenSSL.Net pour envelopper la DLL OpenSSL mais je voudrais éviter d'aller dans cette voie si c'est possible.