数据加密与解密

原创 2006年06月05日 18:01:00

提供一种简单的数据加密与解密方法, 以下为实现函数, 其中一个为数据加密, 另一个对加密的数据解密.

--加密

create or replace function encrypt(p_in in varchar2)
return varchar2
as
    v_string_in varchar2(78);
    v_string_out varchar2(39);
    v_offset number(2);
    v_outpass varchar2(30);
begin
    v_offset:=to_number(to_char(sysdate,'ss')) mod 39;
    v_string_in:='YN8K1JOZVYRB3MDETS5GPL27AXWIHQ94C6F0#$_';
    v_string_out:='_$#ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    v_outpass:=substr(v_string_in,v_offset,1);
    v_string_in:=v_string_in||v_string_in;
    v_string_in:=substr(v_string_in,v_offset,39);
    v_outpass:=v_outpass||translate(upper(p_in),v_string_in,v_string_out);

    return v_outpass;
end;
/

 

--解密

create or replace function decrypt(p_in in varchar2)
return varchar2
as
    v_string_in varchar2(78);
    v_string_out varchar2(39);
    v_offset number(2);
    v_outpass varchar2(30);
begin
   
    v_string_in:='YN8K1JOZVYRB3MDETS5GPL27AXWIHQ94C6F0#$_';
    v_string_out:='_$#ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    --v_offset:=to_number(to_char(sysdate,'ss')) mod 39;
    v_offset:=instr(v_string_in,substr(p_in,1,1));
    --v_outpass:=substr(v_string_in,v_offset,1);
    v_string_in:=v_string_in||v_string_in;
    v_string_in:=substr(v_string_in,v_offset,39);
    v_outpass:=v_outpass||translate(upper(p_in),v_string_in,v_string_out);
    v_outpass:=translate(upper(substr(p_in,2)),v_string_out,v_string_in);
    return v_outpass;
end;

 

#   Dinya  

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

使用 Oracle的存储过程实现数据加密和解密

使用Oracle的存储过程对数据进行加密和解密 Java调用存储过程

数据加密和解密

ASP.NET(C#)常用数据加密和解密方法汇总  一、            数据加密的概念 1、  基本概念 2、  基本功能 3、...

php接口数据加密、解密、验证签名代码实例

php接口数据加密、解密、验证签名 代码很简单,这里就不多废话了,直接奉上代码 <?php /** * 数据加密,解密,验证签名 * @edit http://www.lai1...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)