CryptoAPI 2.0 Özel Anahtarları
Schannel kimlik bilgileri dahili olarak CERT_CONTEXT yapıları olarak temsil edilir. Schannel, sertifikanın CERT_KEY_PROV_INFO_PROP_ID özelliğini kullanarak belirli bir sertifika bağlamıyla ilişkili özel anahtar bulur. Schannel bu özelliği kullanarak CryptAcquireContext işlevini çağırarak özel anahtar erişir. Ek ayrıntılar için bkz. Genel/Özel Anahtar Çiftleri.
Her Schannel kimlik bilgisi, her biri belirli bir sertifikayla ilişkilendirilmiş bir veya daha fazla özel anahtara başvuru içerir. özel anahtarlar, kimlik bilgilerinin bir istemciye mi yoksa sunucuya mı ait olduğuna bağlı olarak oldukça farklı işlenir.
İstemci Özel Anahtarları
İstemci özel anahtarlar kullanılan şifreleme hizmeti sağlayıcısı (CSP) tarafından yönetilir. İstemci özel anahtarları genellikle PROV_RSA_FULL veya PROV_RSA_SIGNATURE türünde CSP'ler tarafından depolanır.
İstemci uygulaması CryptAcquireContext el ile çağırırsa, AcquireCredentialsHandleçağırmadan önce istemcinin CERT_KEY_PROV_HANDLE_PROP_ID özelliğini kullanarak CSP'nin tanıtıcısını sertifika bağlamı için bağlaması gerekir. Schannel bu özellik kümesini bulursa, CERT_KEY_PROV_INFO_PROP_ID özelliğini kullanmaz.
Sunucu Özel Anahtarları
Sunucu özel anahtarları aşağıdaki CSP'lerden biri tarafından depolanır:
- PROV_RSA_SCHANNEL
- PROV_DH_SCHANNEL
- CSP'PROV_FORTEZZA
CSP'nin seçimi,seçilenanahtar değişimi algoritmasına bağlıdır. Sunucu özel anahtarları AT_KEYEXCHANGE türünde olmalıdır.