使用 CAPICOM 的替代方案
注意
CAPICOM 是 Windows SDK 中唯一可用的 32 位元件,可用於下列操作系統:Windows Server 2008、Windows Vista、Windows XP。 請改用 .NET 或 .NET Framework 來實作安全性功能。 如需詳細資訊,請參閱下面所列的替代專案。
重要
CAPICOM 的替代方案都未提供腳本的解決方案;因此,您必須撰寫自己的 ActiveX 控制件。 如需詳細資訊,請參閱 ActiveX 控制件。
證書存儲物件
我們建議使用證書存儲和那些存放區中的憑證的下列替代方案。
Object | 替代函式 |
---|---|
[MSSQLSERVER 的通訊協定內容] | Certificate 物件可用於需求區段中所指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Certificate2 類別。 |
CertificatePolicies | CertificatePolicies 物件可用於需求區段中指定的操作系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Extension 類別,方法是呼叫採用 OID 做為參數的建構函式,然後使用 OID for Certificate Policies 擷取憑證原則。 |
憑證 | Certificates 物件可用於需求區段中所指定的操作系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Certificate2Collection 類別。 |
CertificateStatus | CertificateStatus 物件可用於需求一節中指定的操作系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509ChainStatus 結構。 |
鏈 | Chain 物件可用於需求區段中所指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Chain 類別。 |
ExtendedProperties | ExtendedProperties 物件可用於 Requirements 區段中指定的作業系統。 請改用 Platform Invocation Services (PInvoke) 呼叫 Win32 API 函式 CertGetCertificateContextProperty 並取得屬性。 如需 PInvoke 的相關信息,請參閱 平臺叫用 (P/Invoke)。 透過 P/Invoke 的 .NET 和 CryptoAPI:第 1 部分和 .NET 和 CryptoAPI 透過 P/Invoke:使用 CAPICOM 和 P/Invoke 擴充 .NET 密碼編譯的第 2 小節也很有説明。 |
ExtendedProperty | ExtendedProperty 物件可用於 Requirements 區段中指定的作業系統。 請改用 Platform Invocation Services (PInvoke) 呼叫 Win32 API 函式 CertGetCertificateContextProperty 並取得屬性。 如需 PInvoke 的相關信息,請參閱 平臺叫用 (P/Invoke)。 透過 P/Invoke 的 .NET 和 CryptoAPI:第 1 部分和 .NET 和 CryptoAPI 透過 P/Invoke:使用 CAPICOM 和 P/Invoke 擴充 .NET 密碼編譯的第 2 小節也很有説明。 |
副檔名 | Extension 物件可用於需求區段中指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Extension 類別。 |
擴充 | Extensions 物件可用於 [需求] 區段中指定的操作系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509ExtensionCollection 類別。 |
PrivateKey | PrivateKey 物件可用於需求區段中指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Certificate2.PrivateKey 属性。 |
PublicKey | PublicKey 物件可用於需求區段中指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Certificate2.PublicKey 屬性。 |
儲存 | Store 物件可用於需求區段中所指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Store 類別。 |
範本 | Template 物件可用於 [需求] 區段中所指定的作業系統。 請改為呼叫採用 OID 做為參數的建構函式,使用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Extension 類別,然後使用 OID for Certificate Template 擷取證書延伸模組範本。 |
數位簽名物件
我們建議使用下列替代專案來數位簽署數據,以及驗證數字簽名。
Object | 替代函式 |
---|---|
SignedCode | SignedCode 物件可用於需求一節中指定的作業系統。 請改用 Platform Invocation Services (PInvoke) 呼叫 Win32 API SignerSignEx、SignerTimeStampEx 和 WinVerifyTrust 函式,以 Authenticode 數位簽名簽署內容。 如需 PInvoke 的相關信息,請參閱 平臺叫用 (P/Invoke)。 透過 P/Invoke 的 .NET 和 CryptoAPI:第 1 部分和 .NET 和 CryptoAPI 透過 P/Invoke:使用 CAPICOM 和 P/Invoke 擴充 .NET 密碼編譯的第 2 小節也很有説明。 |
SignedData | SignedData 物件可用於需求一節中指定的作業系統。 請改用 System.Security.Cryptography.Pkcs 命名空間中的 SignedCms 類別。 |
簽名 | Signer 物件可用於 [需求] 區段中指定的作業系統。 請改用 System.Security.Cryptography.Pkcs 命名空間中的 CmsSigner 類別。 |
簽名 | Signers 物件可用於需求區段中所指定的作業系統。 請改用 CmsSigner 物件的集合。 如需詳細資訊,請參閱 System.Security.Cryptography.Pkcs 命名空間中的 CmsSigner 類別。 |
信封數據物件
我們建議使用下列替代方案來建立隱私權的信封數據訊息,以及解密信封郵件中的數據。
Object | 描述 |
---|---|
EnvelopedData | EnvelopedData 物件可用於需求一節中指定的操作系統。 請改用 System.Security.Cryptography.Pkcs 命名空間中的 EnvelopedCms 類別。 |
收件者 | Recipients 物件可用於需求區段中所指定的作業系統。 請改用 System.Security.Cryptography.Pkcs 命名空間中的 CmsRecipientCollection 類別。 |
數據加密物件
我們建議使用下列替代方法來加密任意數據以取得隱私權,並解密加密的數據。
Object | 描述 |
---|---|
EncryptedData | EncryptedData 物件可用於需求一節中指定的操作系統。 請改用 Platform Invocation Services (PInvoke) 呼叫 Win32 API 函式 CryptEncryptMessage 和 CryptDecryptMessage 來加密和解密訊息。 如需 PInvoke 的相關信息,請參閱 平臺叫用 (P/Invoke)。 透過 P/Invoke 的 .NET 和 CryptoAPI:第 1 部分和 .NET 和 CryptoAPI 透過 P/Invoke:使用 CAPICOM 和 P/Invoke 擴充 .NET 密碼編譯的第 2 小節也很有説明。 |
輔助物件
我們建議下列替代方法,以變更其他對象的默認行為,以及管理憑證、證書存儲和訊息。
Object | 描述 |
---|---|
演算法 | Algorithm 物件可用於需求區段中所指定的作業系統。 請改用 System.Security.Cryptography.Pkcs 命名空間中的 AlgorithmIdentifier 類別。 |
屬性 | Attribute 物件可用於 [需求] 區段中所指定的作業系統。 請改用 System.Security.Cryptography 命名空間中的 CryptographicAttributeObject 類別。 |
屬性 | Attributes 物件可用於需求區段中指定的作業系統。 請改用 System.Security.Cryptography 命名空間中的 CryptographicAttributeObjectCollection 類別。 |
BasicConstraints | BasicConstraints 物件可用於需求一節中指定的操作系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509BasicConstraintsExtension 類別。 |
EKU | EKU 物件可用於需求區段中所指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509EnhancedKeyUsageExtension 類別。 |
EKU | EKUs 物件可用於需求區段中所指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509ExtensionCollection 類別。 |
EncodedData | EncodedData 物件可用於 Requirements 區段中指定的作業系統。 請改用 System.Security.Cryptography 命名空間中的 AsnEncodedData 類別。 |
ExtendedKeyUsage | ExtendedKeyUsage 物件可用於 Requirements 區段中指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509EnhancedKeyUsageExtension 類別。 |
HashedData | HashedData 物件可用於 Requirements 區段中指定的作業系統。 請改用 System.Security.Cryptography 命名空間中的 HashAlgorithm 類別。 |
KeyUsage | KeyUsage 物件可用於需求區段中指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509EnhancedKeyUsageExtension 類別。 |
NoticeNumbers | NoticeNumbers 物件可用於 Requirements 區段中指定的作業系統。 如需詳細資訊,請參閱限定符。 |
OID | OID 物件可用於需求區段中所指定的作業系統。 請改用 System.Security.Cryptography 命名空間中的 Oid 類別。 |
OIDs | OIDs 物件可用於需求一節中指定的作業系統。 請改用 System.Security.Cryptography 命名空間中的 OidCollection 類別。 |
PolicyInformation | PolicyInformation 物件可用於需求一節中指定的操作系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Extension 類別,方法是呼叫採用 OID 做為參數的建構函式,然後使用 OID for Certificate Policies 來處理憑證原則延伸模組中的原則資訊。 |
Qualifier | Qualifier 物件可用於需求區段中指定的作業系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Extension 類別,方法是呼叫採用 OID 做為參數的建構函式,然後使用 OID 作為憑證原則延伸模組中原則資訊的限定符。 |
限定 符 | Qualifiers 物件可用於需求區段中所指定的操作系統。 請改用 System.Security.Cryptography.X509Certificates 命名空間中的 X509Extension 類別,方法是呼叫採用 OID 做為參數的建構函式,然後使用 OID 作為憑證原則延伸模組中原則資訊的限定符。 |
設定 | 沒有替代方案可供使用。 |
公用程式 | 沒有替代方案可供使用。 |