一、oracle中的加密函数encrypt_des
create or replace function encrypt_des(vi_data varchar2) return varchar2 is
--加密
vr_data varchar2(4000);
vr_enc varchar2(4000);
raw_input RAW(128);
key_input RAW(128);
decrypted_raw RAW(2048);
vr_key varchar2(64);
begin
if vi_data is null then
return null;
end if;
select MOBILEKEY
into vr_key
from CENKEY;
vr_data := rpad(vi_data, (trunc(length(vi_data) / 8) + 1) * 8, chr(0));
raw_input := UTL_RAW.CAST_TO_RAW(vr_data);
key_input := UTL_RAW.CAST_TO_RAW(vr_key);
dbms_obfuscation_toolkit.DESEncrypt(input => raw_input, key => key_input,
encrypted_data => decrypted_raw);
vr_enc := rawtohex(decrypted_raw);
dbms_output.put_line(vr_enc);
return vr_enc;
end;
下图是加密后的结果