Share via


密碼編譯服務提供者內容

使用任何密碼編譯 API 的應用程式所呼叫的第一個 CryptoAPI 函式是 CryptAcquireCoNtext 函式。 此函式會傳回特定雲端解決方案提供者控制碼,其中包含雲端解決方案提供者內特定金鑰容器的規格。 此金鑰容器是特別要求的金鑰容器,或是目前登入使用者的預設金鑰容器。

CryptAcquireCoNtext 也可以建立新的金鑰容器。 如需詳細資訊,請參閱範例 C 程式:建立金鑰容器和產生金鑰和範例 C 程式:使用 CryptAcquireCoNtext

密碼編譯服務提供者 (雲端解決方案提供者) 同時具有名稱和類型。 例如,目前隨附于作業系統的其中一個 CSP 名稱是 Microsoft 基底密碼編譯提供者。 它是 PROV_RSA_FULL 類型提供者。 每個提供者的名稱都是唯一的;提供者類型不是 。

當應用程式呼叫CryptAcquireCoNtext以取得雲端解決方案提供者控制碼時,它會指定提供者類型,並選擇性地指定提供者名稱。 如果同時指定類型和名稱,函式會載入具有相符提供者類型和提供者名稱的雲端解決方案提供者。 函式會傳回雲端解決方案提供者的控制碼,其可存取雲端解決方案提供者和雲端解決方案提供者內的金鑰容器

當應用程式呼叫 CryptAcquireCoNtext 並指定提供者類型但未指定提供者名稱時,函式會尋找具名提供者,先檢查與登入使用者相關聯的預設具名提供者清單,如果失敗,則會從與電腦相關聯的預設具名提供者清單中檢查。 判斷提供者名稱之後,CryptAcquireCoNtext函式會搜尋該提供者的雲端解決方案提供者、載入它,並傳回其控制碼。

當您完成使用雲端解決方案提供者控制碼時,請呼叫CryptReleaseCoNtext函式來釋放它。