SQL Server 2008證書和非對稱金鑰

iSQlServer發表於2008-11-25

公鑰加密 (PKI) 是一種訊息保密方式,在使用這種方式時使用者將建立一個“公鑰”和一個“私鑰”。私鑰是保密的,而公鑰可以分發給其他人。雖然金鑰之間具有數學關係,但要想通過公鑰推匯出私鑰卻並不容易。公鑰用於加密資料,私鑰用於解密資料。使用公鑰加密的訊息只能使用正確的私鑰來解密。由於存在兩個不同的金鑰,因而這些金鑰是“非對稱的”。

證書和非對稱金鑰都屬於非對稱加密的使用方式。證書通常用作非對稱金鑰的容器,因為它們可以包含更多資訊,例如過期日期和頒發者。這兩種機制的加密演算法之間存在差異,但相同金鑰長度的加密強度是相同的。通常,可以使用證書來加密資料庫中其他型別的加密金鑰,或者為程式碼模組簽名。

證書和非對稱金鑰可以解密其他人加密的資料。通常,可以使用非對稱加密來加密儲存在資料庫中的對稱金鑰。

公鑰不像證書那樣具有特定格式,並且不能將其匯出到檔案中。

注意:
SQL Server 包含的相關功能允許您建立和管理用於伺服器和資料庫的證書和金鑰。不能使用 SQL Server 來建立和管理用於其他應用程式或在作業系統中使用的證書和金鑰。
 


 證書
證書是一個數字簽名的安全物件,其中包含 SQL Server 的公鑰(還可以選擇包含私鑰)。您可以使用外部生成的證書,也可以由 SQL Server 生成證書。

注意:
SQL Server 證書符合 IETF X.509v3 證書標準。
 


證書非常有用,因為它具有將金鑰匯出和匯入 X.509 證書檔案的選項。用於建立證書的語法允許為證書使用建立選項,例如過期日期。

在 SQL Server 中使用證書
證書可用來幫助確保連線的安全性(在資料庫映象中)、為包和其他物件簽名或者加密資料或連線。下表列出了 SQL Server 中有關證書的其他資源。

主題  說明 
CREATE CERTIFICATE (Transact-SQL)
 介紹用於建立證書的命令。
 
證書和 Service Broker
 顯示有關如何將證書用於 Service Broker 的資訊。
 
對包進行數字簽名
 顯示有關如何使用證書為軟體包簽名的資訊。
 
對話安全性的證書
 顯示有關如何將證書用於對話的詳細資訊。
 
使用資料庫映象證書
 提供有關如何將證書用於資料庫映象的資訊。
 
加密與 SQL Server 的連線
 說明如何加密與 SQL Server 的連線。
 

 非對稱金鑰
非對稱金鑰用於確保對稱金鑰的安全性。它們還可用於有限資料加密以及對資料庫物件進行數字簽名。非對稱金鑰由私鑰和對應的公鑰組成。有關非對稱金鑰的詳細資訊,請參閱 CREATE ASYMMETRIC KEY (Transact-SQL)。

可以從強名稱金鑰檔案匯入非對稱金鑰,但不能將其匯出。它們也沒有過期選項。非對稱金鑰不能加密連線。

在 SQL Server 中使用非對稱金鑰
非對稱金鑰可用來幫助確保資料的安全性或為純文字簽名。下表列出了 SQL Server 中有關非對稱金鑰的其他資源。

主題  說明 
CREATE ASYMMETRIC KEY (Transact-SQL)
 介紹用於建立非對稱金鑰的命令。
 
SignByAsymKey (Transact-SQL)
 顯示用於為物件簽名的選項。
 

 工具
Microsoft 提供了用於生成證書和強名稱金鑰檔案的工具和實用工具。與 SQL Server 語法相比,這些工具在金鑰生成過程中提供了更加豐富的靈活選擇。您可以使用這些工具建立具有更復雜的金鑰長度的 RSA 金鑰,然後將其匯入 SQL Server。下表介紹了在哪裡可以找到這些工具。

工具
 用途
 
makecert
 建立證書。
 
sn
 建立對稱金鑰的強名稱。
 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-503166/,如需轉載,請註明出處,否則將追究法律責任。

相關文章