Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/04/2008, 11h16   #1
Invité de passage
 
Inscription : avril 2008
Messages : 4
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 4
Points : 1
Points : 1
Par défaut Probleme MaJ d'un champ suite à une fonction de cryptage

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.
oglennie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2008, 14h13   #2
Expert Confirmé Sénior


 
Avatar de laurentschneider
 
Homme Laurent Schneider
Administrateur de base de données
Inscription : décembre 2005
Messages : 2 927
Détails du profil
Informations personnelles :
Nom : Homme Laurent Schneider
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Finance

Informations forums :
Inscription : décembre 2005
Messages : 2 927
Points : 4 549
Points : 4 549
Code :
input_string VARCHAR2(2048) := '75¥FL..&™.n‰æíáå';
probablement un problème de conversion

je ferais plutôt
Code :
input_string RAW(2000) := HEXTORAW('00112233AAFF');
__________________
Mon blog : laurentschneider.com
Mon livre : Advanced Oracle SQL Programming
laurentschneider est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2008, 14h31   #3
Invité de passage
 
Inscription : avril 2008
Messages : 4
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 4
Points : 1
Points : 1
Merci pour ta réponse, le probleme qui se pose à moi est que tu transformes mon champ varchar2 de type XXXXXXXXXXXXXXXX en hexa pour le passer dans un hextoraw, ce champ sera normalement un numéro de CB saisi en 16 caractères.
oglennie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2008, 14h40   #4
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 534
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 534
Points : 6 471
Points : 6 471
Voici un exemple
__________________
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h54.


 
 
 
 
Partenaires

Hébergement Web