加密階層

SQL Server 2005 會使用階層式加密與金鑰管理基礎結構來加密資料。在某一階層執行加密時,會使用憑證、非對稱金鑰、對稱金鑰的組合來加密該階層下的所有階層。如下圖所示,加密階層與安全性實體物件平行,如<權限階層>中所述。

下圖顯示每一層的加密階層為該層以下的所有階層進行加密。在最上層的「服務主要金鑰」是使用 Windows DP API 來加密。

索引鍵階層:Windows、SQL Server、資料庫層

加密機制

SQL Server 2005 提供下列加密機制:

  • 憑證
  • 非對稱金鑰
  • 對稱金鑰

憑證

「公開金鑰憑證」(通常只簡稱為「憑證」) 是經過數位簽署的聲明,憑證會將公開金鑰的值繫結到擁有對應私密金鑰之人員、裝置或服務的識別。憑證是由憑證授權單位 (CA) 所發行與簽署。收到 CA 發行之憑證的實體稱為憑證的主體。一般而言,憑證中包含下列資訊。

  • 主體的公開金鑰。
  • 主體的識別資訊,例如:姓名與電子郵件地址。
  • 有效期間。憑證在這段期間內都會視為有效。
    超過這段期間憑證則無效;每個憑證都包含**「有效自」「有效到」**日期。這些日期會指定有效期間。當憑證的有效期過期時,憑證的主體應該要求取得新憑證。
  • 發行者識別資訊。
  • 發行者的數位簽章。
    此簽章可證明公開金鑰與主體識別資訊間之繫結關係的有效性。(為資訊加上數位簽章的過程包括將相關資訊以及寄件者的某些機密資訊寫入稱為「簽章」的標記中。)

憑證的主要好處是可以減輕主機儲存個別主體密碼的負擔。使用憑證時,主機只要與憑證發行者 (憑證發行者可能會簽署不限數目的憑證) 建立信任關係即可。

當主機 (例如:安全的 Web 伺服器) 指定某個發行者作為信任的根授權單位時,該主機即隱含信任該發行者用來建立其所發行之憑證的繫結關係的原則。在實務上,主機會信任發行者已驗證憑證主體的識別。主機會將發行者的自行簽署憑證 (其中包含發行者的公開金鑰) 放到主機電腦信任的根憑證授權單位憑證存放區,指定發行者作為信任的根授權單位。除非中繼與從屬憑證授權單位具有有效信任根憑證授權單位路徑,否則不會被信任。

發行者可以在憑證到期之前予以撤銷。撤銷動作會取消公開金鑰與憑證主體識別資訊之間的繫結。每個發行者都會維護一份憑證撤銷清單,供程式檢查特定憑證的有效性時使用。

由 SQL Server 建立的自行簽署憑證遵循 X.509 標準,且支援 X.509 v1 欄位。

非對稱金鑰

非對稱金鑰是由私密金鑰與對應的公開金鑰所組成。每個金鑰都可以用來解密由另一個金鑰所加密的資料。非對稱加密與解密非常耗資源,但能提供比對稱加密更好的安全性層級。 非對稱金鑰可用來加密對稱金鑰以儲存在資料庫中。

對稱金鑰

對稱金鑰是用來加密與解密的一個金鑰。使用對稱金鑰來加密與解密非常快速,且適合用來針對資料庫中的機密資料進行日常加密。

請參閱

概念

權限階層
安全性實體

其他資源

安全性函數 (Transact-SQL)
加密的如何主題

說明及資訊

取得 SQL Server 2005 協助