共用方式為


SQL Server 憑證和非對稱金鑰

公鑰密碼編譯 (PKI) 是一種訊息秘密形式,使用者在其中建立 公鑰私鑰 。 私鑰是保密的,而公鑰可以散發給其他人。 雖然金鑰在數學上是相關的,但私鑰無法使用公鑰輕鬆衍生。 公鑰是用來加密數據,而私鑰則用來解密數據。 使用公鑰加密的訊息只能使用正確的私鑰來解密。 由於有兩個不同的索引鍵,因此這些索引鍵是不 對稱的。

憑證和非對稱密鑰是使用非對稱加密的兩種方式。 憑證通常用於非對稱密鑰的容器,因為它們可以包含詳細資訊,例如到期日和簽發者。 密碼編譯演算法的兩個機制之間沒有任何差異,而且在相同的密鑰長度下,強度沒有差異。 一般而言,您可以使用憑證來加密資料庫中其他類型的加密密鑰,或簽署程式代碼模組。

憑證和非對稱金鑰可以解密其他加密的數據。 一般而言,您會使用非對稱式加密來加密要儲存在資料庫中的對稱密鑰。

公鑰沒有類似憑證的特定格式,而且您無法將它匯出至檔案。

備註

SQL Server 包含的功能可讓您建立和管理憑證和密鑰,以便與伺服器和資料庫搭配使用。 SQL Server 無法用來在作業系統或其他應用程式中建立和管理憑證及密鑰。

證書

憑證是數字簽署的安全性物件,其中包含 SQL Server 的公用(以及選擇性的私鑰)。 您可以使用外部產生的憑證,或 SQL Server 可以產生憑證。

備註

SQL Server 憑證符合 IETF X.509v3 憑證標準。

憑證很有用,因為將密鑰導出和匯入至 X.509 憑證檔案的選項。 建立憑證的語法允許建立憑證的選項,例如到期日。

在 SQL Server 中使用憑證

憑證可用來協助保護資料庫鏡像中的連線、簽署封裝和其他物件,或加密數據或連線。 下表列出 SQL Server 中憑證的其他資源。

主題 說明
CREATE CERTIFICATE (Transact-SQL) 說明建立憑證的命令。
識別具有數位簽名的套件來源 顯示如何使用憑證簽署軟體套件的相關信息。
使用資料庫鏡像端點憑證 (Transact-SQL) 涵蓋如何搭配資料庫鏡像使用憑證的相關信息。

非對稱金鑰

非對稱金鑰用於保護對稱金鑰。 它們也可用於有限的數據加密和數位簽署資料庫物件。 非對稱金鑰包含私鑰和對應的公鑰。 如需非對稱密鑰的詳細資訊,請參閱 CREATE ASYMMETRIC KEY (Transact-SQL)。

非對稱金鑰可以從強名稱金鑰檔案匯入,但無法匯出。 它們也沒有到期選項。 非對稱金鑰無法加密連線。

在 SQL Server 中使用非對稱金鑰

非對稱金鑰可用來協助保護數據或簽署純文字。 下表列出 SQL Server 中非對稱金鑰的其他資源。

主題 說明
建立非對稱鍵(Transact-SQL) 說明用來建立非對稱密鑰的命令。
SIGNBYASYMKEY (Transact-SQL) 顯示簽署物件的選項。

工具

Microsoft提供工具和公用程式,以產生憑證和強名稱密鑰檔案。 這些工具在金鑰產生程式中提供比 SQL Server 語法更豐富的彈性。 您可以使用這些工具來建立具有更複雜的金鑰長度的 RSA 金鑰,然後將其匯入 SQL Server。 下表說明尋找這些工具的位置。

工具 目標
makecert 建立憑證。
sn 建立對稱金鑰的強式名稱。

選擇加密演算法

CREATE SYMMETRIC KEY (Transact-SQL)

CREATE CERTIFICATE (Transact-SQL)

另請參閱

sys.certificates (Transact-SQL)
透明資料加密 (TDE)