pourquoi le contenu de $ est-il crypté à chaque fois différent?Les données cryptées avec openssl_public_encrypt sont-elles différentes à chaque fois?
// aquire public key from server
$server_public_key = openssl_pkey_get_public(file_get_contents("C:\publickey.pem"));
// rsa encrypt
openssl_public_encrypt("123", $encrypted, $server_public_key);
aussi j'ai essayé un
$publicKey = "file://C:/publickey.pem";
$privateKey = "file://C:/privatekey.pem";
$plaintext = "String to encrypt";
openssl_public_encrypt($plaintext, $encrypted, $publicKey);
$transfer = base64_encode($encrypted);
openssl_private_decrypt($encrypted, $decrypted, $privateKey);
echo $transfer; //encrypted string
et le transfert de $ est à chaque fois une autre chaîne: ...
Z1xyMUquARxcGjqjjSHNAm41CnHI02GXxLyFivvta8YhDkhRJdD4i3kx + 8GElljdiSY/NMF9UD3ritWMLGmscdq/QyIf + geYxJFePNd1dNWg + V6zbAKRLaEpsU + aB87jiM/GjytLEkI63dku02BS0ZBgz9UZw/FDNaynV5bTTDM =
mRgLPsPtMoV9la7zzuU + cLzS5xMDp7QUmH6Iv4Sv4/FNjt62zcv9ZMWkfG3uVhS8Z1UDtGl + met1CYjBTcfjHCR6hahbwOkTCICXtkRQcc371vURW04XhQzMNgIIbvN5BBdmIyYI6alrS2vKUq7b3T0h8sJf36zh5CynYzyDCFU =
G5FhMoJGiUwEBvEOeZpDDrEXdxbWX5iaJ6F + VdYJ3CURPRMftskZNlDhat8gA5V0G + 3nXVQZptkHjxMkOqPlmwJHjgIqAiFppHLpEKohyT9qNwkAR00Y6PiWrNUJPiEIZqXHAb8TS0AA0Quhc0UAwcc + I8NGOD59k8BrZE6Z5Ew =
Est-il possible de déterminer la graine aléatoire et l'a envoyé à un autre algorithme de chiffrement pkcs # 1 qui l'utilisera pour déchiffrer certaines données chiffrées à partir du premier algorithme pkcs # 1? – panny
@panny: veuillez lire la spécification PKCS # 1. Vous n'avez pas besoin de faire ce que vous demandez, le format PKCS # 1 permet de supprimer les bits aléatoires par le décrypteur sans les connaître à l'avance. Votre fonction de décryptage de Rsa le fait certainement pour vous. –
Le chiffrement par clé symétrique n'a pas le même problème (de correspondance de texte chiffré), car avec un algorithme symétrique toute personne qui peut générer un texte chiffré pour un texte en clair candidat doit déjà avoir la clé. – caf