Alternativas al uso de CAPICOM
Nota:
CAPICOM es un componente solo de 32 bits que estaba disponible en el SDK de Windows para usarlo en los siguientes sistemas operativos: Windows Server 2008, Windows Vista y Windows XP. En su lugar, use .NET o .NET Framework para implementar características de seguridad. Para obtener más información, consulte las alternativas que figuran más adelante.
Importante
Ninguna de las alternativas a CAPICOM ofrece una solución para scripts; por lo tanto, debe escribir su propio control ActiveX. Para obtener más información, consulte Controles ActiveX.
- Objetos de almacenes de certificados
- Objetos de firma digital
- Objetos de datos en sobres
- Objetos de cifrado de datos
- Objetos auxiliares
Objetos de almacenes de certificados
Se recomiendan las siguientes alternativas para trabajar con almacenes de certificados y los certificados de esos almacenes.
Object | Alternativa |
---|---|
Certificate | El objeto Certificate está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509Certificate2 en el espacio de nombres System.Security.Cryptography.X509Certificates. |
CertificatePolicies | El objeto CertificatePolicies está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509Extension en el espacio de nombres System.Security.Cryptography.X509Certificates llamando al constructor que toma un OID como parámetro y después use el OID en las directivas de certificado para recuperar las directivas de certificado. |
Certificados | El objeto Certificates está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. en su lugar, use la clase X509Certificate2Collection en el espacio de nombres System.Security.Cryptography.X509Certificates. |
CertificateStatus | El objeto CertificateStatus está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la estructura X509ChainStatus en el espacio de nombres System.Security.Cryptography.X509Certificates. |
Chain | El objeto Chain está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509Chain en el espacio de nombres System.Security.Cryptography.X509Certificates. |
ExtendedProperties | El objeto ExtendedProperties está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use Platform Invocation Services (PInvoke) para llamar a la función de la API de Win32 CertGetCertificateContextProperty y reciba las propiedades. Para obtener información sobre PInvoke, consulte Invocación de plataforma (P/Invoke). También pueden serle útiles las subsecciones .NET y CryptoAPI a través de P/Invoke: Parte 1 y .NET y CryptoAPI a través de P/Invoke: Parte 2 de Extensión del modelo de criptografía de .NET con CAPICOM y P/Invoke. |
ExtendedProperty | El objeto ExtendedProperty está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use Platform Invocation Services (PInvoke) para llamar a la función de la API de Win32 CertGetCertificateContextProperty y reciba las propiedades. Para obtener información sobre PInvoke, consulte Invocación de plataforma (P/Invoke). También pueden serle útiles las subsecciones .NET y CryptoAPI a través de P/Invoke: Parte 1 y .NET y CryptoAPI a través de P/Invoke: Parte 2 de Extensión del modelo de criptografía de .NET con CAPICOM y P/Invoke. |
Extensión | El objeto Extension está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509Extension en el espacio de nombres System.Security.Cryptography.X509Certificates. |
Extensiones | El objeto Extensions está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509ExtensionCollection en el espacio de nombres System.Security.Cryptography.X509Certificates. |
PrivateKey | El objeto PrivateKey está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la propiedad X509Certificate2.PrivateKey en el espacio de nombres System.Security.Cryptography.X509Certificates. |
PublicKey | El objeto PublicKey está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la propiedad X509Certificate2.PublicKey en el espacio de nombres System.Security.Cryptography.X509Certificates. |
Tienda | El objeto Store está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509Store en el espacio de nombres System.Security.Cryptography.X509Certificates. |
Plantilla | El objeto Template está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509Extension en el espacio de nombres System.Security.Cryptography.X509Certificates llamando al constructor que toma un OID como parámetro y después use el OID en la plantilla de certificado para recuperar la plantilla de extensión de certificado. |
Objetos de firma digital
Se recomiendan las siguientes alternativas para firmar digitalmente los datos y comprobar las firmas digitales.
Object | Alternativa |
---|---|
SignedCode | El objeto SignedCode está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use Platform Invocation Services (PInvoke) para llamar a las funciones de la API de Win32 SignerSignEx, SignerTimeStampEx y WinVerifyTrust para firmar contenido con una firma digital Authenticode. Para obtener información sobre PInvoke, consulte Invocación de plataforma (P/Invoke). También pueden serle útiles las subsecciones .NET y CryptoAPI a través de P/Invoke: Parte 1 y .NET y CryptoAPI a través de P/Invoke: Parte 2 de Extensión del modelo de criptografía de .NET con CAPICOM y P/Invoke. |
SignedData | El objeto SignedData está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase SignedCms en el espacio de nombres System.Security.Cryptography.Pkcs. |
Firmante | El objeto Signer está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase CmsSigner en el espacio de nombres System.Security.Cryptography.Pkcs. |
Signers | El objeto Signers está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use una colección de objetos CmsSigner. Para obtener más información, consulte la clase CmsSigner en el espacio de nombres System.Security.Cryptography.Pkcs. |
Objetos de datos en sobres
Se recomiendan las siguientes alternativas para crear mensajes de datos en sobres para la privacidad y descifrar datos en mensajes en sobres.
Object | Descripción |
---|---|
EnvelopedData | El objeto EnvelopedData está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase EnvelopedCms en el espacio de nombres System.Security.Cryptography.Pkcs. |
Destinatarios | El objeto Recipients está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase CmsRecipientCollection en el espacio de nombres System.Security.Cryptography.Pkcs. |
Objetos de cifrado de datos
Se recomiendan las siguientes alternativas para cifrar datos arbitrarios para la privacidad y descifrar datos cifrados.
Object | Descripción |
---|---|
EncryptedData | El objeto EncryptedData está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use Platform Invocation Services (PInvoke) para llamar a las funciones de la API de Win32 CryptEncryptMessage y CryptDecryptMessage para cifrar y descifrar mensajes. Para obtener información sobre PInvoke, consulte Invocación de plataforma (P/Invoke). También pueden serle útiles las subsecciones .NET y CryptoAPI a través de P/Invoke: Parte 1 y .NET y CryptoAPI a través de P/Invoke: Parte 2 de Extensión del modelo de criptografía de .NET con CAPICOM y P/Invoke. |
Objetos auxiliares
Se recomiendan las siguientes alternativas para cambiar el funcionamiento predeterminado de otros objetos y administrar certificados, almacenes de certificados y mensajes.
Object | Descripción |
---|---|
Algoritmo | El objeto Algorithm está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase AlgorithmIdentifier en el espacio de nombres System.Security.Cryptography.Pkcs. |
Atributo | El objeto Attribute está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase CryptographicAttributeObject en el espacio de nombres System.Security.Cryptography.Pkcs. |
Atributos | El objeto Attributes está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase XCryptographicAttributeObjectCollection en el espacio de nombres System.Security.Cryptography. |
BasicConstraints | El objeto BasicConstraints está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. en su lugar, use la clase X509BasicConstraintsExtension en el espacio de nombres System.Security.Cryptography.X509Certificates. |
EKU | El objeto EKU está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. en su lugar, use la clase X509EnhancedKeyUsageExtension en el espacio de nombres System.Security.Cryptography.X509Certificates. |
EKUs | El objeto EKUs está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509ExtensionCollection en el espacio de nombres System.Security.Cryptography.X509Certificates. |
EncodedData | El objeto EncodedData está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase AsnEncodedData en el espacio de nombres System.Security.Cryptography. |
ExtendedKeyUsage | El objeto ExtendedKeyUsage está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. en su lugar, use la clase X509EnhancedKeyUsageExtension en el espacio de nombres System.Security.Cryptography.X509Certificates. |
HashedData | El objeto HashedData está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase HashAlgorithm en el espacio de nombres System.Security.Cryptography. |
KeyUsage | El objeto KeyUsage está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. en su lugar, use la clase X509EnhancedKeyUsageExtension en el espacio de nombres System.Security.Cryptography.X509Certificates. |
NoticeNumbers | El objeto NoticeNumbers está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. Para obtener más información, consulte Qualifier. |
OID | El objeto OID está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase Oid en el espacio de nombres System.Security.Cryptography. |
OID | El objeto OIDs está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase OidCollection en el espacio de nombres System.Security.Cryptography. |
PolicyInformation | El objeto PolicyInformation está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509Extension en el espacio de nombres System.Security.Cryptography.X509Certificates llamando al constructor que toma un OID como parámetro y después use el OID en las directivas de certificado para procesar la información de las directivas en la extensión de directivas de certificado. |
Calificador | El objeto Qualifier está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509Extension en el espacio de nombres System.Security.Cryptography.X509Certificates llamando al constructor que toma un OID como parámetro y después use el OID en las directivas de certificado para procesar los calificadores que formen parte de la información de las directivas en la extensión de directivas de certificado. |
Calificadores | El objeto Qualifiers está disponible para usarse en los sistemas operativos indicados en la sección Requisitos. En su lugar, use la clase X509Extension en el espacio de nombres System.Security.Cryptography.X509Certificates llamando al constructor que toma un OID como parámetro y después use el OID en las directivas de certificado para procesar los calificadores que formen parte de la información de las directivas en la extensión de directivas de certificado. |
Configuración | No hay ninguna alternativa disponible. |
Sectores públicos | No hay ninguna alternativa disponible. |