數據庫數據加密與解密


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

 

創建之后,會要相應的數據庫之下,顯示如下:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM