Decryptage : j'y arrive pas !

Petit nouveau ! | 3 Messages

30 janv. 2022, 09:53

Bonjour
Une application mobile android doit le passer une chaine cryptée AES-128-CBC.
Ainsi le reçois :
La chaine cryptée BASE64 : par exemple : VDKmexHqalK33eOlu3IkllsKyfrITBVLDIRiTTMQegJ6sELPOHRhrUpBgbToGtmA==
Le IV cryptée BASE64 : par exemple : ilrvVugNJQeazrgsRU+Ixg==

Je connais le mot de passe : azertyuiopazerty

Ainsi afin de tester, j'utilise ce bout de code PHP

Code : Tout sélectionner

function decryptIV($data, $key,$IV) { echo "<hr>D64 sdata64=".$data."<hr>"; echo "D64 sdata=".base64_decode($data)."<hr>"; echo "D64 skey=".$key."<hr>"; echo "D64 sIV64=".$IV."<hr>"; echo "D64 sIV=".base64_decode($IV)."<hr>"; return openssl_decrypt(base64_decode($data), "aes-128-cbc", $key, OPENSSL_RAW_DATA,base64_decode($IV)); } $key="azertyuiopazerty"; $enc64="VDKmexHqalK33eOlu3IkllsKyfrITBVLDIRiTTMQegJ6sELPOHRhrUpBgbToGtmA=="; $IV64="ilrvVugNJQeazrgsRU+Ixg=="; $dec = decryptIV($enc64,$key,$IV64); echo "<hr>Decrypted : ".$dec;
mais la fonction openssl_decrypt ne retourne rien et aucun message d'erreur n'est affiché.

Une idée ?

Petit nouveau ! | 3 Messages

30 janv. 2022, 10:31

Je viens de simplifier le code

Code : Tout sélectionner

$key = "azertyuiopazerty"; $all64="DAWL3SBtKHJ9j2xb/DuPMeEdp73cikGQzZmnXiue/btDB3N7Sq4ZG9IHHVpP8/MWFdwLT1SgpPsmrPzE 6nXQow=="; $dec = decrypt_aes_128_cbc($all64,$key); echo "<hr>Decrypted : ".$dec; function decrypt_aes_128_cbc($all, $key) { $all=base64_decode($all64); $IV=substr($all,0,16); $data=substr($all,16); return openssl_decrypt($data, "aes-128-cbc", $key, OPENSSL_RAW_DATA,$IV); }

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

30 janv. 2022, 10:57

Tu peux utiliser var_dump(openssl_error_string()); pour voir les messages d'erreur des fonctions openssl_*

J'ai un peu tester ton code et j'aurai tendance à dire que les données chiffrées ou le mot de passe ne sont pas corrects
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 3 Messages

30 janv. 2022, 11:22

Bien vu ! Y a une erreur
:\WEB_Saxrub\wnat_V3\crypte.php:49:string 'error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt' (length=72)