sql 字段加密

将一个现有的字段转换成二进制可以加密一个字段,不过就是忽悠下而已。不能实现根本加密。

Select  CONVERT(varbinary(512), cj) as 'miwen', CONVERT(char(10), CONVERT(varbinary(512), cj)) as 'mingwen' From aa

也可以转换成其他的格式如image,binary等。

sql2008新特性里面提供了一些加密方式来给sql数据库中的字段加密。

首先需要建立密钥

CREATE SYMMETRIC KEY [对称密钥名字] WITH ALGORITHM = AES_192 ENCRYPTION BY PASSWORD = '密码' --使用密码的方式

CREATE SYMMETRIC KEY [对称密钥名字] WITH ALGORITHM = AES_192 ENCRYPTION BY CERTIFICATE [证书名称] --使用证书加密方式

--打开密钥
OPEN SYMMETRIC KEY 对称密钥名字 DECRYPTION BY PASSWORD = '密码'

OPEN SYMMETRIC KEY 对称密钥名字 DECRYPTION BY CERTIFICATE '证书名称'

--进行资料加密
Select EncryptByKey(Key_GUID('对称密钥名字'), cj) as 'miwen' From aa

--进行解密

Select CONVERT(char(10), CONVERT(char,DecryptByKey(cj))) AS 'mingwen' From aa

posted @ 2013-01-23 16:24  zxh1141  阅读(1142)  评论(0编辑  收藏  举报