主页 > 知识库 > Oracle中的MD5加密详解

Oracle中的MD5加密详解

热门标签:N个你智能电销机器人 地图标注怎么保存 广东营销智能外呼系统商家 腾讯地图标注要费用吗 车玛仕极限运动场所地图标注 高德地图标注公司名字大全 七日杀a19.5全地图标注 电渠外呼系统 外呼电话系统用卡吗

一、技术点 

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 := Utl_Raw.Cast_To_Raw(sys.dbms_obfuscation_toolkit.md5(input_string => '111'));
dbms_output.put_line(v2); end;

注意:可以在存储过程中直接调用,如果要嵌套调用md5时,记得每次调用后都用Utl_Raw.Cast_To_Raw进行转换,否则最后出来的结果是错误的。

2、构造函数后,再调用

复制代码 代码如下:

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;

调用md5函数示例:

复制代码 代码如下:

select md5(1) from dual

另附:Oracle中MD5函数语句

复制代码 代码如下:

--Oracle中MD5函数语句
create or replace 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 
            -- Consider logging the error and then re-raise               RAISE;  
    END md5hash;

您可能感兴趣的文章:
  • Java、JavaScript、Oracle、MySQL中实现的MD5加密算法分享
  • Oracle定义DES加密解密及MD5加密函数示例
  • Oracle 存储过程加密方法
  • oracle 存储过程加密的方法
  • oracle下加密存储过程的方法
  • Oracle数据加密方法分析

标签:赣州 苏州 来宾 玉树 长沙 辽宁 大兴安岭 枣庄

巨人网络通讯声明:本文标题《Oracle中的MD5加密详解》,本文关键词  Oracle,中的,MD5,加密,详解,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《Oracle中的MD5加密详解》相关的同类信息!
  • 本页收集关于Oracle中的MD5加密详解的相关信息资讯供网民参考!
  • 推荐文章