关于Oracle中的MD5加密问题...

flyer2013 2004-05-06 12:14:16
我想请问下各位高手..Oracle中有没有MD5加密的函数(在存储过程中)
如果有 能不能给小弟一个演示?...谢谢
...全文
417 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
superlcj 2004-05-10
  • 打赏
  • 举报
回复
Vdyndql:='select '||var||',a.aaa from aaa a';
Execute immediate Vdynsql;
flyer2013 2004-05-09
  • 打赏
  • 举报
回复
呵呵 你这是我付费你享受了...
我也不是很清楚的...这样你看能行吗. ...
Vdyndql:='select a.aaa from aaa a ';
Execute immediate Vdyndql||into var;
fieldsun 2004-05-09
  • 打赏
  • 举报
回复

大哥
oracle存储函数中
dyndql:='select var,a.aaa from aaa a'
变量var如何引用,谁知道,帮帮忙,谢谢了


Vdyndql:='select var,a.aaa from aaa a'
Execute immediate Vdynsql using var;
这样为什么不行???
fieldsun 2004-05-09
  • 打赏
  • 举报
回复
大哥
oracle存储函数中
dyndql:='select var,a.aaa from aaa a'
变量var如何引用,谁知道,帮帮忙,谢谢了
flyer2013 2004-05-09
  • 打赏
  • 举报
回复
我相信superlcj(幽灵)先生的方法应该能行..可惜我现在把dbms_obfuscation_toolkit.md5的程序包体都弄得可能出问题了..老是提示错误 说程序包丢失..呵呵 真郁闷... 刚学什么都不懂得...希望各位兄台给个法子...谢谢!
superlcj 2004-05-08
  • 打赏
  • 举报
回复
declare
v_out Varchar2(300);
v_str varchar2(30);
begin
v_str:='123456';
v_out:=rawtohex(utl_raw.cast_to_raw(dbms_obfuscation_toolkit.md5(input_string =>v_str)));
dbms_output.put_line(v_out);
end;
/

你看一下这应该就是你要的结果!!!
liuyi8903 2004-05-08
  • 打赏
  • 举报
回复
学习一下
flymoon 2004-05-08
  • 打赏
  • 举报
回复
呵呵 再次请教beckham兄 我是这样用了...
beckhambobo 2004-05-06
  • 打赏
  • 举报
回复
dbms_obfuscation_toolkit.md5(input_string => pw,checksum_string => epw)


我用的是ORACLE817:

PACKAGE dbms_obfuscation_toolkit AS
------------------------------- TYPES ------------------------------------
-- Types used to make it easier for the user to reserve the correct
-- amount of memory for a checksum.

SUBTYPE varchar2_checksum IS VARCHAR2(2000);
SUBTYPE raw_checksum IS RAW(2000);

----------------------------- CONSTANTS -----------------------------------
-- Triple DES modes
TwoKeyMode INTEGER := 0;
ThreeKeyMode INTEGER := 1;

---------------------- FUNCTIONS AND PROCEDURES ---------------------------

---------------------------- DATA ENCRYPTION ------------------------------
-- The following routines encrypt and decrypt data.
-- There are two versions of each procedure and function: one for raw data
-- and the other for strings.
---------------------------------------------------------------------------

-- DES
PROCEDURE DESEncrypt(input IN RAW,
key IN RAW,
encrypted_data OUT RAW);

FUNCTION DESEncrypt(input IN RAW,
key IN RAW)
RETURN RAW;

PROCEDURE DESEncrypt(input_string IN VARCHAR2,
key_string IN VARCHAR2,
encrypted_string OUT VARCHAR2);

FUNCTION DESEncrypt(input_string IN VARCHAR2,
key_string IN VARCHAR2)
RETURN VARCHAR2;

PROCEDURE DESDecrypt(input IN RAW,
key IN RAW,
decrypted_data OUT RAW);

FUNCTION DESDecrypt(input IN RAW,
key IN RAW)
RETURN RAW;

PROCEDURE DESDecrypt(input_string IN VARCHAR2,
key_string IN VARCHAR2,
decrypted_string OUT VARCHAR2);

FUNCTION DESDecrypt(input_string IN VARCHAR2,
key_string IN VARCHAR2)
RETURN VARCHAR2;

-- Triple DES
PROCEDURE DES3Encrypt(input IN RAW,
key IN RAW,
encrypted_data OUT RAW,
which IN PLS_INTEGER
DEFAULT TwoKeyMode);

FUNCTION DES3Encrypt(input IN RAW,
key IN RAW,
which IN PLS_INTEGER DEFAULT TwoKeyMode)
RETURN RAW;

PROCEDURE DES3Encrypt(input_string IN VARCHAR2,
key_string IN VARCHAR2,
encrypted_string OUT VARCHAR2,
which IN PLS_INTEGER
DEFAULT TwoKeyMode);

FUNCTION DES3Encrypt(input_string IN VARCHAR2,
key_string IN VARCHAR2,
which IN PLS_INTEGER DEFAULT TwoKeyMode)
RETURN VARCHAR2;

PROCEDURE DES3Decrypt(input IN RAW,
key IN RAW,
decrypted_data OUT RAW,
which IN PLS_INTEGER
DEFAULT TwoKeyMode);

FUNCTION DES3Decrypt(input IN RAW,
key IN RAW,
which IN PLS_INTEGER DEFAULT TwoKeyMode)
RETURN RAW;

PROCEDURE DES3Decrypt(input_string IN VARCHAR2,
key_string IN VARCHAR2,
decrypted_string OUT VARCHAR2,
which IN PLS_INTEGER
DEFAULT TwoKeyMode);

FUNCTION DES3Decrypt(input_string IN VARCHAR2,
key_string IN VARCHAR2,
which IN PLS_INTEGER DEFAULT TwoKeyMode)
RETURN VARCHAR2;

-------------------------------- MD5 --------------------------------------
-- The following routines generate MD5 hashes of data.
-- There are two versions: one for raw data and the other for strings.
---------------------------------------------------------------------------

PROCEDURE MD5(input IN RAW,
checksum OUT raw_checksum);

FUNCTION MD5(input IN RAW)
RETURN raw_checksum;

PROCEDURE MD5(input_string IN VARCHAR2,
checksum_string OUT varchar2_checksum);

FUNCTION MD5(input_string IN VARCHAR2)
RETURN varchar2_checksum;

END dbms_obfuscation_toolkit;
welyngj 2004-05-06
  • 打赏
  • 举报
回复
我知道有des加密的。其它的我就不清楚了。书上没有提过。
pl/sql中的过程DBMS_OBFUSCATION_TOOLKIT可以完成任务。
但是我用不来
flyer2013 2004-05-06
  • 打赏
  • 举报
回复
呵呵 再次请教beckham兄 我是这样用了...
Password:=dbms_obfuscation_toolkit.md5(p_str);有返回值但是跟PHP中的MD5函数生成的不是一样.象加密123456 php: e10adc3949ba59abbe56e057f20f883e oracle: ��I篩V郬��;
不知道怎么样能解决这个问题..我现要实现他们是一致的才行..
或者这样
dbms_obfuscation_toolkit.md5(p_str,p_Password); (这样是匹配的函数太多 如非将p_str定义为NUMBER类型)...
请教! 谢谢..

17,134

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧