SQLServer 2008中的代碼平安(五) 非對稱密鑰加密。本站提示廣大學習愛好者:(SQLServer 2008中的代碼平安(五) 非對稱密鑰加密)文章只能為提供參考,不一定能成為您想要的結果。以下是SQLServer 2008中的代碼平安(五) 非對稱密鑰加密正文
我們看一組例子:
示例1、創立非對稱密鑰
創立非對稱密鑰應用以下敕令:
CREATE ASYMMETRIC KEY 創立非對稱密鑰。(http://msdn.microsoft.com/en-us/library/ms174430.aspx)
--以下語句創立一個非對稱密鑰asymDemoKey
use DB_Encrypt_Demo
go
CREATE ASYMMETRIC KEY asymDemoKey --創立非對稱密鑰稱號
WITH ALGORITHM = RSA_512 --加密平安類型
ENCRYPTION BY PASSWORD = 'TestASYM123!' --暗碼
示例2、檢查以後數據庫中的非對稱密鑰
應用目次視圖sys.asymmetric_keys(http://msdn.microsoft.com/en-us/library/ms188399.aspx)來檢查。
--檢查以後數據庫中的非對稱密鑰
use DB_Encrypt_Demo
go
SELECT name, algorithm_desc, pvt_key_encryption_type_desc
FROM sys.asymmetric_keys
----成果前往
/*
name algorithm_desc pvt_key_encryption_type_desc
asymDemoKey RSA_512 ENCRYPTED_BY_PASSWORD
*/
示例3、修正非對稱密鑰的私鑰暗碼
你可使用帶有ENCRYPTION BY PASSWORD和DECRYPTION BY PASSWORD選項的ALTER ASYMMETRIC KEY(http://technet.microsoft.com/en-us/library/ms189440.aspx)修正私鑰的暗碼。
--修正私鑰暗碼
ALTER ASYMMETRIC KEY asymDemoKey--要修正的密鑰稱號
WITH PRIVATE KEY --私鑰
(ENCRYPTION BY PASSWORD = 'newpasswordE4D352F280E0',--指定新暗碼
DECRYPTION BY PASSWORD = 'TestASYM123!')--舊暗碼是用來解密的
示例4、應用非對稱密鑰對數據停止加密息爭密。
因為同時須要公鑰和密鑰,在保護保密數據時應用非對稱密鑰來加密數據長短常平安的方法。但同時用於年夜數據集時將消費更多的資本。
不推舉應用非對稱密鑰對數據加密,但它依然是一個選擇。一旦將非對稱密鑰加到數據庫,便可以用來加密息爭密數據。
用到以下兩個sql函數:
EncryptByAsymKey 加密數據。(http://technet.microsoft.com/en-us/library/ms186950.aspx)
DecryptByAsymKey解密數據。(http://msdn.microsoft.com/en-us/library/ms189507.aspx)
留意,在經由過程證書加密時,DecryptByAsymKey前往的是varbinary類型的加密數據。
上面是一個例子:
use DB_Encrypt_Demo
go
--創立須要加密的數據
Create Table BankUser
(PKID int primary key identity(10001,1)
,UserNo varbinary(1000) null
,CurState smallint default(0) not null
)
go
insert into BankUser
(UserNo,CurState)
VALUES (EncryptByAsymKey(AsymKey_ID('asymDemoKey'),'137492837583249ABR'),1)
--拔出一筆記錄,字段UserNo存儲了加密的號碼值
go
select PKID,Curstate, cast(UserNo as nvarchar(1000)) as UserNo
from BankUser
where PKID=10001
明文成果:
檢查未加密的數據:
SELECT PKID,Curstate,
cast
(DecryptByAsymKey(AsymKey_ID('asymDemoKey'),UserNo,N'newpasswordE4D352F280E0')
as varchar(1000)) as UserNo --須要原始私鑰
from BankUser where PKID=10001
示例5、刪除非對稱密鑰
敕令:DROP ASYMMETRIC KEY 刪除指定的非對稱密鑰( http://msdn.microsoft.com/en-us/library/ms188389.aspx)
例子:
DROP ASYMMETRIC KEY asymDemoKey
小結:
1、本文重要引見非對稱密鑰的創立、刪除、檢查和用它來修正私鑰、停止數據的加密息爭密。
2、非對稱密鑰包括數據庫級的外部公鑰和私鑰,它可以用來加密息爭密SQL Server數據庫中的數據。
3、非對稱密鑰關於數據庫加密屬於高平安選項,因此須要更多的SQL Server資本,不推舉應用。
下文將重要引見絕對簡略的而且普遍運用的對稱密鑰加密(Symmetric Key Encryption)
�輕松定制調劑,逢迎分歧的用戶需求。12. Snow boarding
Snowboarding 是為體育類電商網站設計的網頁模板,也是基於Bootstrap來制造的。
13. Arsha
Arsha異樣相符今朝主流的設計,繁復而古代,基於Bootstrap 3.2來制造。應用這一模板以後,在各類終端上閱讀都輕松天然。
14. Green
Green 是一款不錯的呼應式HTML網頁模板,可讓你的營業減色很多。
15. Horizons
Horizons 是一款收費的呼應式HTML5網頁模板,由Templated供給,應用者須要遵守 Creative Commons Attribution license的條目。
16. Burn Studio
Burn Studio 異樣是一款收費的HTML5呼應式網頁模板,只須要略加調劑CSS中的參數,Media Queries可以幫你讓網站順應各類分歧的屏幕和終端。
17. Dopetrope
Dopetrope 異樣是收費的呼應式HTML5網頁模板,設計者AJ為HTML5UP所設計。應用這一模板須要遵守CCA的條目,小我和商用都可。
18. Lonely
這是一款帶有動效的單頁轉動網頁模板,合適用來做小我展現和絕對簡略的小我站點。
19. Timeline
須要做英俊的時光軸類型網站的同伙們有福了,這款呼應式網頁模板正好相符你們的需求,自己設計簡略,並且運用普遍。
20. Conquer
Conquer這款呼應式網站模板基於Bootstrap V3.1.1來設計,實用於單頁網站和轉動式結構。圖片展現部門還包括了一個呼應式圖片展現對象lightbox。
21. Learner
Learner是一款為教導范疇所定制的扁平風呼應式網頁模板,由W3layouts獨家供給。固然,這套模板還可以實用於產物展現之類的網站,對挪動端支撐也異常不錯。
22. Yellow
這款應用黃色色彩的呼應式網站模板是基於Bootstrap 3來制造的,顏色異常抓人眼球,也極輕易凸起網站內容。
23. Artcore
Artcore 是一款總計包含12個頁面的呼應式HTML5網頁設計模板。首頁采取了清新的配色,並聯合典范的瀑布流設計。項目展現部門可使用單欄,雙欄和三欄式結構。
24. Meilleur
Meilleur 是一款專業的、多用處的單頁呼應式網頁模板,異樣基於Bootstrap 3框架來設計。
25. Rainbow
望文生義,彩虹,這是一款包括多種顏色的網頁設計模板,關於挪動端網頁閱讀優化異常不錯,所以設計師在這個模板上還采取了單頁設計。