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

上面的语句中,用到了二个函数:pwdencryptpwdcompare这是二个SQLServer未公开的函数,

pwdencrypt实现对输入数据进行加密后返回二进制形式的加密内容,而pwdcompare用于检查明文是否与加密的二进制数据内容相等,没有解密函数。

这二个函数主要是用于SQLServer内部自己调用。

优点是调用方便,缺点是这二个函数没有公开,就意味着可能改变,并且不兼容原来的,在使用上存在风险。

posted @ 2018-03-26 08:50  都是城市惹的祸  阅读(490)  评论(0)    收藏  举报