0
点赞
收藏
分享

微信扫一扫

sqlserver对数据进行加密、解密


  • ​​– sqlserver对数据进行加密、解密​​
  • ​​– 创建测试表​​
  • ​​– 创建数据库主**​​
  • ​​– 创建证书​​
  • ​​– 创建对称**​​
  • ​​– 使用对称秘钥加密数据​​
  • ​​– 查看加密后的数据​​
  • ​​– 解密数据​​

– sqlserver对数据进行加密、解密

– 创建测试表

CREATE TABLE TBLUser 
(
Name nvarchar(30),
Password varbinary(1000)
)

  • 1
  • 2
  • 3
  • 4
  • 5

– 创建数据库主**

CREATE master key  ENCRYPTION BY PASSWORD ='passW@ord'

  • 1

– 创建证书

CREATE CERTIFICATE TestCert with SUBJECT = 'Test Certificate'

  • 1

– 创建对称**

CREATE SYMMETRIC KEY TestSymmetric WITH ALGORITHM = AES_256 ENCRYPTION BY CERTIFICATE TestCert 

  • 1

– 使用对称秘钥加密数据

OPEN SYMMETRIC KEY TestSymmetric DECRYPTION BY CERTIFICATE TestCert;
INSERT INTO TBLUser values('张三', ENCRYPTBYKEY(Key_Guid(N'TestSymmetric'), '123456'));
CLOSE SYMMETRIC KEY TestSymmetric;

  • 1
  • 2
  • 3

– 查看加密后的数据

SELECT * FROM TBLUser

  • 1

– 解密数据

OPEN SYMMETRIC KEY TestSymmetric DECRYPTION BY CERTIFICATE TestCert;
SELECT Name, CAST(DecryptByKey(password) as varchar(100)) Password FROM TBLUser;
CLOSE SYMMETRIC KEY TestSymmetric;

举报

相关推荐

0 条评论