SQLServer 数据加密方法【官方未公开的算法】
原理:利用SQLServer未公开的加密密码函数,在SQL代码中调用加密密码函数对数据进行加密后保存
create table #temptable(iorder int, pswd varbinary(1024) ) go insert into #temptable values(1, pwdencrypt('yang')) insert into #temptable values(2, pwdencrypt('lian')) insert into #temptable values(3, pwdencrypt('shan')) go select * from #temptable go -- 比较数据是否相等 select * from #temptable where pwdcompare('lian', pswd)=1 go drop table #temptable go
上面的语句中,用到了二个函数:pwdencrypt和pwdcompare,这是二个SQLServer未公开的函数,
pwdencrypt实现对输入数据进行加密后返回二进制形式的加密内容,而pwdcompare用于检查明文是否与加密的二进制数据内容相等,没有解密函数。
这二个函数主要是用于SQLServer内部自己调用。
优点是调用方便,缺点是这二个函数没有公开,就意味着可能改变,并且不兼容原来的,在使用上存在风险。
有些事情,没经历过不知道原理,没失败过不明白奥妙,没痛苦过不了解真谛。临渊羡鱼,不如退而结网!

浙公网安备 33010602011771号