一、技術點
1、 dbms_obfuscation_toolkit.md5
dbms_obfuscation_toolkit.md5是md5編碼的資料報函式,但偶在使用select dbms_obfuscation_toolkit.md5(input_string =>'abc') a from dual時,卻有錯誤提示,看來該函式只能直接在程式包中呼叫,不能直接應用於select語句。
2、utl_raw.cast_to_raw
dbms_obfuscation_toolkit.md5返回的字串,是raw型別,要正確顯示,需要經過utl_raw.cast_to_raw轉換
二、應用
1、直接呼叫
複製** **如下:
declare
v2 varchar2(32); begin
v2 := u => '111'));
dbms_output.put_line(v2); end;
注意:可以在儲存過程中直接呼叫,如果要巢狀呼叫md5時,記得每次呼叫後都用utl_raw.cast_to_raw進行轉換,否則最後出來的結果是錯誤的。
2、建構函式後jrycl,再呼叫
複製** **如下:
create or replace function md5(
passwd in varchar2) return varchar2 is
retval varchar2(32); begin
retval := utl_raw.castjrycl_to_raw(dbms_obfuscation_toolkit.md5(input_string => passwd)); return retval; end;
呼叫md5函式示例:
複製** **如下:
select md5(1) from dual
另附:oracle中md5函式語句
複製** **如下:
--oracle中md5函式語句
create or repla function "md5hash" (str in varchar2)
return varchar2
is v_checksum varchar2(32);
begin
v_checksum := lower( rawtohex( utl_raw.cast_to_raw( sys.dbms_obfuscation_toolkit.md5(input_string => str) ) ) );
return v_checksum;
exception
when no_data_found then
null;
when others then
jrycl -- consider logging the error and then re-raise raise;
end md5hash;
本文標題: oracle中的md5加密詳解
本文位址:
Oracle中的MD5加密
一 技術點1 dbms obfuscation toolkit.md5 dbms obfuscation toolkit.md5 是md5 編碼的資料報函式,但偶在使用 select dbms obfuscation toolkit.md5 input string abc a from dual ...
MD5加密詳解
md5全稱 message digest algorithm 5 翻譯過來就是 資訊 摘要演算法5 比如我的銀行密碼是 12345 1.得到的 md5是 827ccb0eea8a706c4c34a16891f84e7b 2.乙個人擷取到這個密文 那麼通過撞庫肯定容易撞出 12345.3.我們要做的就...
Oracle中使用MD5加密
dbms obfuscation toolkit.md5返回的字串,是raw型別,要正確顯示,需要經過utl raw.cast to raw轉換 declare v2 varchar2 32 begin v2 utl raw.cast to raw sys.dbms obfuscation tool...