Maison > développement back-end > tutoriel php > Oracle définit des exemples de fonctions de chiffrement DES, de déchiffrement et de chiffrement MD5

Oracle définit des exemples de fonctions de chiffrement DES, de déchiffrement et de chiffrement MD5

高洛峰
Libérer: 2023-03-05 10:14:02
original
2143 Les gens l'ont consulté

(1) Fonction de cryptage DES

create or replace function
encrypt_des(p_text varchar2, p_key varchar2) return varchar2 is
v_text varchar2(4000);
v_enc varchar2(4000);
raw_input RAW(128) ;
key_input RAW(128) ;
decrypted_raw RAW(2048);
begin
v_text := rpad( p_text, (trunc(length(p_text)/8)+1)*8, chr(0));
raw_input := UTL_RAW.CAST_TO_RAW(v_text);
key_input := UTL_RAW.CAST_TO_RAW(p_key);
dbms_obfuscation_toolkit.DESEncrypt(input => raw_input,key => key_input,encrypted_data =>decrypted_raw);
v_enc := rawtohex(decrypted_raw);
dbms_output.put_line(v_enc);
return v_enc;
end;
Copier après la connexion

(2) Fonction de décryptage DES

create or replace function decrypt_des(p_text varchar2,p_key varchar2) return varchar2 is
v_text varchar2(2000);
begin
dbms_obfuscation_toolkit.DESDECRYPT(input_string => UTL_RAW.CAST_TO_varchar2(p_text),key_string =>p_key, decrypted_string=> v_text);
v_text := rtrim(v_text,chr(0));
dbms_output.put_line(v_text);
return v_text;
end;
Copier après la connexion

(3) Fonction de cryptage MD5

CREATE OR REPLACE FUNCTION MD5(passwd IN VARCHAR2)
RETURN VARCHAR2
IS
retval varchar2(32);
BEGIN
retval := utl_raw.cast_to_raw(DBMS_OBFUSCATION_TOOLKIT.MD5(INPUT_STRING => passwd)) ;
RETURN retval;
END;
Copier après la connexion

(4) Exemple d'utilisation de la fonction

Cryptage DES : mise à jour tb_salarysign_staff s set s.staffpwd =encrypt_des(s.staffpwd, 'test#5&124*!de');

Déchiffrement DES : sélectionnez decrypt_des(s.staffpwd, 'test#5&124*!de') depuis tb_salarysign_staff s

Cryptage MD5 : mettre à jour tb_salarysign_staff s set s.staffpwd = md5(s.staffpwd);

Pour plus d'exemples de fonctions de chiffrement DES, de déchiffrement et de chiffrement MD5 définis par Oracle, veuillez prêter attention à le site PHP chinois !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal