----权限设置
grant execute on DBMS_CRYPTO to username;
---------加密
create or replace function encrypt256(v_input varchar2) return raw
is
v_result raw(1999);
c_key char(32) := '1q2wa3es4rz5tx6ycD*UF8tif9ogjen2';
begin
v_result := sys.DBMS_CRYPTO.ENCRYPT(
UTL_I18N.STRING_TO_RAW(v_input, 'AL32UTF8'),
sys.DBMS_CRYPTO.ENCRYPT_AES256+sys.DBMS_CRYPTO.CHAIN_CBC+sys.DBMS_CRYPTO.PAD_PKCS5,
UTL_I18N.STRING_TO_RAW(c_key, 'AL32UTF8'));
return v_result;
end;
-----------解密
create or replace function decrypt256(v_input raw) return varchar2
is
v_result raw(1999);
c_key char(32) := '1q2wa3es4rz5tx6ycD*UF8tif9ogjen2';
begin
v_result := SYS.DBMS_CRYPTO.DECRYPT(
v_input,
SYS.DBMS_CRYPTO.ENCRYPT_AES256+SYS.DBMS_CRYPTO.CHAIN_CBC+SYS.DBMS_CRYPTO.PAD_PKCS5,
UTL_I18N.STRING_TO_RAW(c_key, 'AL32UTF8'));
return UTL_I18N.RAW_TO_CHAR(v_result, 'AL32UTF8');
end;
----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;
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341