mysql存储过程加密解密_关于我以前写的MySQL5加密存储过程所对应的解密函数

陆续有很多网友email我索取我以前写的《mysql5存储过程编写实践》一文中所对应的解密存储过程,这次我把它列出来供需 要的朋友参考,其实这个加解密函数在一些简单应用中还是比较有用武之地的。

函数的源码列出如下:

--

-- Function `aurora`.`fun_submm`

--

DROP FUNCTION IF EXISTS `fun_submm`;

DELIMITER $$

CREATE FUNCTION `fun_submm`(inpass varchar(11)) RETURNS varchar(10)

BEGIN

declare string_in varchar(39) default '';

declare string_out varchar(39) default '';

declare offset tinyint(2) default 0;

declare outpass varchar(30) default '';

declare len tinyint default 0;

/*declare ch char(1) default '';*/

/**/

set len=LENGTH(inpass);

if((len<=0) or (len>11)) then

return "";

end if;

set string_out='YN8K1JOZVURB3MDETS5GPL27AXWIHQ94C6F0#$_';

set string_in='_$#ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';

set offset=INSTR(string_out,SUBSTRING(inpass,1,1));

insert into testtb value(offset,'offset');

set @i=0;

REPEAT

set @i=@i+1;

set @ch=SUBSTRING(inpass,@i+1,1);

insert into testtb value(@i,@ch);

set @pos=INSTR(string_out,@ch);

set @pos=(@pos+39-offset) mod 39;

insert into testtb value(@i,@pos);

set outpass=CONCAT(outpass,SUBSTR(string_in,@pos,1));

insert into testtb value(@i,outpass);

UNTIL (@i>=len-1)

end REPEAT;

return outpass;

END $$

DELIMITER ;

至于过程,做简单的改造即可,在此久步赘述了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值