共用方式為


Microsoft增強式密碼編譯提供者

稱為「增強型提供者」的Microsoft增強式密碼編譯提供者,支援與稱為「基底提供者」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位密鑰。