共用方式為


Microsoft Enhanced Cryptographic Provider

稱為增強型提供者的 Microsoft Enhanced Cryptographic Provider 支援與稱為基底提供者的 Microsoft 基底密碼編譯提供者相同的功能。 增強型提供者透過較長的金鑰和其他演算法支援更強大的安全性。 它可以與所有版本的 CryptoAPI 搭配使用。

為了維持與舊版提供者的回溯相容性,提供者名稱如 Wincrypt.h 標頭檔中所定義,會保留 1.0 版的指定。 不過,此提供者的 2.0 版目前已出貨。 若要判斷使用的提供者版本,請呼叫 CryptGetProvParam 並將 dwParam 引數設定為 PP_VERSION。 如果傳回0x0200,則會使用 2.0 版。

提供者類型 PROV_RSA_FULL
提供者名稱 MS_ENHANCED_PROV

 

下表強調基底提供者、強式提供者和增強提供者之間的差異。 顯示的金鑰長度是預設金鑰長度。

演算法 基底提供者金鑰長度 強式提供者金鑰長度 增強的提供者金鑰長度
RSA 公開金鑰簽章演算法 512 位 1,024 位 1,024 位
RSA 公開金鑰交換演算法 512 位 1,024 位 1,024 位
RC2 區塊加密演算法 40 位 128 位元 可以設定 128 位 Salt 長度。
RC4 資料流程加密演算法 40 位 128 位元 可以設定 128 位 Salt 長度。
DES 56 位 56 位 56 位
三重 DES (2 鍵) 不支援 112 位 112 位
三重 DES (3 鍵) 不支援 168 位 168 位

 

強式提供者和增強提供者與基底提供者回溯相容,不同之處在于提供者只能產生預設 金鑰長度的 RC2 或 RC4 金鑰。 基底提供者的預設長度為 40 位。 增強提供者的預設長度為 128 位。 因此,增強型提供者無法建立具有基底提供者相容金鑰長度的金鑰。 不過,增強型提供者可以匯入最多 128 位的 RC2 和 RC4 金鑰。 因此,增強型提供者可以匯入並使用使用基底提供者所產生的 40 位金鑰。