sql 字段加密函数

--以下演示ip地址加密,ip字段类型为binary
select * from xl_whitelist
delete xl_whitelist

insert into xl_whitelist (ip) values(cast('lijian' as binary(50)))
select cast(ip as char(50)) from xl_whitelist 

 

pwdencrypt:pwdencrypt实现对输入数据进行加密后返回二进制形式的加密内容

pwdcompare:pwdcompare 用于检查明文是否与加密的二进制数据内容相等,没有解密函数。

这是二个SQLServer未公开的函数,主要是用于SQLServer内部自己调用。优点是调用方便,缺点是这二个函数没有公开,就意味着可能改变,并且不兼容原来的,在使用上存在风险。(只在sqlserver验证了一下)

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

posted on 2010-09-11 11:45  奥尔格勒  阅读(2313)  评论(0编辑  收藏  举报