Utilisation de DBMS_CRYPTO.HASH

Utilisation de DBMS_CRYPTO.HASH

Oracle 2018-10-16

DBMS_CRYPTO.HASH ce présente comme ceci : 

DBMS_CRYPTO.Hash (
   src IN RAW,
   typ IN PLS_INTEGER
)

RETURN RAW;

 

Exemple : convertir la colonne DATA de la table TABLE en donnée haché en SHA_2 sur 256 bits.

1 – Récupération de la valeur du type de cryptage en PLS INTEGER

/*Activation de l'affichage des messages via put_line*/
/*je récupére le hash_256 au format pl/sql*/

set serveroutput on;
begin
dbms_output.put_line(dbms_crypto.hash_sh256);
end;

Ce qui donne : 4


2 – On transforme DATA en RAW directement dans la requête en précisant le type de conversion voulue (ici hash_sh256 donc en pls integer 4) :

SELECT DBMS_CRYPTO.Hash(UTL_RAW.CAST_TO_RAW (DATA), 4) from TABLE;

 

exemple de résultat : 

473287F8298DBA7163A897908958F7C0EAE733E25D2E027992EA2EDC9BED2FA8