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
建立之後,會要相應的資料庫之下,顯示如下:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL2MmZjJjZxYWZkRmYiF2M4ITM5QDOhNTZ3I2YxczNjFWL4MjM1ADMxIzLcFTMzEDMy8CX2MDM4IzLcd2bsJ2Lc12bj5ycn9Gbi52YuAzcldWYtl2Lc9CX6MHc0RHaiojIsJye.png)