数据库数据加密与解密

MVC的操练之旅,将要进入另一个品级了,将大增会员功效。在进入前边,一些准备工作必要做的。一步一个脚印吧。设计会员成效,其中密码字段,Insus.NET想对它进行加密。就因这些加密,还得花上一些岁月来整理。
Insus.NET参考MSDN网站,列出数据库加密解密例子(以下是在SQL Server
2012拓展):

--创建数据库主密钥
CREATE MASTER KEY ENCRYPTION BY PASSWORD ='Pass#Tutorial#word'
GO

 

--创建证书
CREATE CERTIFICATE PasswordCert 
with SUBJECT = 'Member Password Certificate'
GO

 

--创建非对称密钥
CREATE ASYMMETRIC KEY PasswordAsymmetric
    WITH ALGORITHM = RSA_2048 --{ RSA_512 | RSA_1024 | RSA_2048 } 
    ENCRYPTION BY PASSWORD = 'Pass#Tutorial#word'; 
GO

 

--创建对称密钥
CREATE SYMMETRIC KEY PasswordSymmetric
    WITH ALGORITHM = AES_256 --{ AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY }
    ENCRYPTION BY PASSWORD = 'Pass#Tutorial#word';
GO

 

--由证书加密对称密钥
CREATE SYMMETRIC KEY SymmetricByCert
    WITH ALGORITHM = AES_256
    ENCRYPTION BY CERTIFICATE PasswordCert;
GO

 

--由对称密钥加密对称密钥
OPEN SYMMETRIC KEY PasswordSymmetric
    DECRYPTION BY PASSWORD='Pass#Tutorial#word'

CREATE SYMMETRIC KEY SymmetricBySy
    WITH ALGORITHM = AES_256
    ENCRYPTION BY SYMMETRIC KEY PasswordSymmetric;
GO

 

--由非对称密钥加密对称密钥
CREATE SYMMETRIC KEY SymmetricByAsy
    WITH ALGORITHM = AES_256
    ENCRYPTION BY ASYMMETRIC KEY PasswordAsymmetric;
GO

 

成立之后,会要相应的数据库之下,显示如下:
图片 1

 

 

相关文章