Bonjour Mesdames et Messieurs,

Je tiens avant à présenter toutes mes excuses vous avez A faire a un plus que débutant en PL SQL il faudrait donc me répondre comme si j'avais 2 ans.

Voici mon problème

J'utilise la fonction Oracle de Cryptage des données :

dbms_obfuscation_toolkit.DESEncrypt

or mon but et de crypter une donnée, de la stocker dans une table et de pouvoir la décrypter or c'est ici que le bat blesse ... ce que je décrypte ne ressemble en rien à ma donnée d'origine.

Voici ma fonction de Cryptage :

DECLARE
input_string VARCHAR2(16) := '1111222233334444';
raw_input RAW(128) := UTL_RAW.CAST_TO_RAW(input_string);

key_string VARCHAR2(10) := '!!?L.KJN?.';
raw_key RAW(128) := UTL_RAW.CAST_TO_RAW(key_string);

encrypted_raw RAW(2048);
encrypted_string VARCHAR2(2048);

BEGIN

dbms_obfuscation_toolkit.DESEncrypt(input => raw_input, key => raw_key, encrypted_data => encrypted_raw );
encrypted_string := UTL_RAW.CAST_TO_VARCHAR2(encrypted_raw);
update XX.TABLE set CB_CRYPTEE = encrypted_string where NO_DONNEE=228337 ;

END;


sur cet exemple ce que je stocke dans ma table ressemble à :
75¥FL&™n‰æíáå


et voici ma fonction de decryptage :

DECLARE
input_string VARCHAR2(2048) := '75¥FL..&™.n‰æíáå';

key_string VARCHAR2(10) := '!!?L.KJN?.';
raw_key RAW(128) := UTL_RAW.CAST_TO_RAW(key_string);

encrypted_raw RAW(2048) := UTL_RAW.CAST_TO_RAW(input_string);

decrypted_raw RAW(2048);
decrypted_string VARCHAR2(2048);

BEGIN

dbms_obfuscation_toolkit.DESDecrypt( input => encrypted_raw, key => raw_key, decrypted_data => decrypted_raw);
decrypted_string := UTL_RAW.CAST_TO_VARCHAR2(decrypted_raw) ;
update XX.TEMP_TABLE set CB_DECRYPTEE= decrypted_string where N_DONNEE=228337 ;

END;


et là je récupere : ?ôöƒ™j‡±u

Je comprends pas ...

Merci d'avance.