当前位置:网站首页>sqlserver对数据进行加密、解密

sqlserver对数据进行加密、解密

2022-07-04 21:37:00 CodingSir

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

– 创建测试表

CREATE TABLE TBLUser 
(    
    Name             nvarchar(30),     
    Password         varbinary(1000)
)
  • 1
  • 2
  • 3
  • 4
  • 5

– 创建数据库主**

CREATE master key  ENCRYPTION BY PASSWORD ='[email protected]'
  • 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;
原网站

版权声明
本文为[CodingSir]所创,转载请带上原文链接,感谢
https://blog.csdn.net/educast/article/details/125479083