X509Certificate Clase

Definición

Proporciona métodos para ayudarle a utilizar certificados X.509 v.3.Provides methods that help you use X.509 v.3 certificates.

public ref class X509Certificate : IDisposable, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class X509Certificate : IDisposable, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type X509Certificate = class
    interface IDeserializationCallback
    interface ISerializable
    interface IDisposable
Public Class X509Certificate
Implements IDeserializationCallback, IDisposable, ISerializable
Herencia
X509Certificate
Derivado
Atributos
Implementaciones

Ejemplos

En el ejemplo siguiente se carga un certificado X. 509 desde un archivo, se llama al método ToString y se muestran los resultados en la consola.The following example loads an X.509 certificate from a file, calls the ToString method, and displays the results to the console.

using namespace System;
using namespace System::Security::Cryptography::X509Certificates;
int main()
{
   
   // The path to the certificate.
   String^ Certificate = L"Certificate.cer";
   
   // Load the certificate into an X509Certificate object.
   X509Certificate^ cert = gcnew X509Certificate( Certificate );
   
   // Get the value.
   String^ resultsTrue = cert->ToString( true );
   
   // Display the value to the console.
   Console::WriteLine( resultsTrue );
   
   // Get the value.
   String^ resultsFalse = cert->ToString( false );
   
   // Display the value to the console.
   Console::WriteLine( resultsFalse );
}

using System;
using System.Security.Cryptography.X509Certificates;

public class X509
{

    public static void Main()
    {

        // The path to the certificate.
        string Certificate = "Certificate.cer";

        // Load the certificate into an X509Certificate object.
        X509Certificate cert = new X509Certificate(Certificate);

        // Get the value.
        string resultsTrue = cert.ToString(true);

        // Display the value to the console.
        Console.WriteLine(resultsTrue);

        // Get the value.
        string resultsFalse = cert.ToString(false);

        // Display the value to the console.
        Console.WriteLine(resultsFalse);
    }
}
Imports System.Security.Cryptography.X509Certificates

Module X509

    Sub Main()

        ' The path to the certificate.
        Dim Certificate As String = "Certificate.cer"

        ' Load the certificate into an X509Certificate object.
        Dim cert As New X509Certificate(Certificate)

        ' Get the value.
        Dim resultsTrue As String = cert.ToString(True)

        ' Display the value to the console.
        Console.WriteLine(resultsTrue)

        ' Get the value.
        Dim resultsFalse As String = cert.ToString(False)

        ' Display the value to the console.
        Console.WriteLine(resultsFalse)

    End Sub
End Module

Comentarios

ASN. 1 DER es el único formato de certificado admitido por esta clase.ASN.1 DER is the only certificate format supported by this class.

En la mayoría de los escenarios, debe usar la clase X509Certificate2 en su lugar.For most scenarios, you should use the X509Certificate2 class instead.

Importante

A partir de la .NET Framework 4.6.NET Framework 4.6, este tipo implementa la interfaz IDisposable.Starting with the .NET Framework 4.6.NET Framework 4.6, this type implements the IDisposable interface. Cuando haya terminado de utilizar el tipo, debe desecharlo directa o indirectamente.When you have finished using the type, you should dispose of it either directly or indirectly. Para eliminar el tipo directamente, llame a su método Dispose en un bloque try/catch.To dispose of the type directly, call its Dispose method in a try/catch block. Para deshacerse de él indirectamente, use una construcción de lenguaje como using (en C#) o Using (en Visual Basic).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Para más información, vea la sección "Uso de objetos que implementan IDisposable" en el tema de la interfaz IDisposable.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

En el caso de las aplicaciones que tienen como destino .NET Framework 4.5.2.NET Framework 4.5.2 y versiones anteriores, la clase X509Certificate no implementa la interfaz IDisposable y, por tanto, no tiene un método Dispose.For apps that target the .NET Framework 4.5.2.NET Framework 4.5.2 and earlier versions, the X509Certificate class does not implement the IDisposable interface and therefore does not have a Dispose method.

Constructores

X509Certificate()

Inicializa una nueva instancia de la clase X509Certificate.Initializes a new instance of the X509Certificate class.

X509Certificate(Byte[])

Inicializa una nueva instancia de la clase X509Certificate definida a partir de una secuencia de bytes que representa un certificado X.509v3.Initializes a new instance of the X509Certificate class defined from a sequence of bytes representing an X.509v3 certificate.

X509Certificate(Byte[], SecureString)

Inicializa una nueva instancia de la clase X509Certificate utilizando una matriz de bytes y una contraseña.Initializes a new instance of the X509Certificate class using a byte array and a password.

X509Certificate(Byte[], SecureString, X509KeyStorageFlags)

Inicializa una nueva instancia de la clase X509Certificate utilizando una matriz de bytes, una contraseña y una marca de almacenamiento de claves.Initializes a new instance of the X509Certificate class using a byte array, a password, and a key storage flag.

X509Certificate(Byte[], String)

Inicializa una nueva instancia de la clase X509Certificate utilizando una matriz de bytes y una contraseña.Initializes a new instance of the X509Certificate class using a byte array and a password.

X509Certificate(Byte[], String, X509KeyStorageFlags)

Inicializa una nueva instancia de la clase X509Certificate utilizando una matriz de bytes, una contraseña y una marca de almacenamiento de claves.Initializes a new instance of the X509Certificate class using a byte array, a password, and a key storage flag.

X509Certificate(IntPtr)

Inicializa una nueva instancia de la clase X509Certificate utilizando un identificador a una estructura PCCERT_CONTEXT no administrada.Initializes a new instance of the X509Certificate class using a handle to an unmanaged PCCERT_CONTEXT structure.

X509Certificate(SerializationInfo, StreamingContext)

Inicializa una nueva instancia de la clase X509Certificate utilizando un objeto SerializationInfo y una estructura StreamingContext.Initializes a new instance of the X509Certificate class using a SerializationInfo object and a StreamingContext structure.

X509Certificate(String)

Inicializa una nueva instancia de la clase X509Certificate usando el nombre de un archivo firmado con el estándar PKCS7.Initializes a new instance of the X509Certificate class using the name of a PKCS7 signed file.

X509Certificate(String, SecureString)

Inicializa una nueva instancia de la clase X509Certificate utilizando el nombre de un archivo de certificado y una contraseña.Initializes a new instance of the X509Certificate class using a certificate file name and a password.

X509Certificate(String, SecureString, X509KeyStorageFlags)

Inicializa una nueva instancia de la clase X509Certificate utilizando el nombre de un archivo de certificado, una contraseña y una marca de almacenamiento de claves.Initializes a new instance of the X509Certificate class using a certificate file name, a password, and a key storage flag.

X509Certificate(String, String)

Inicializa una nueva instancia de la clase X509Certificate usando el nombre de un archivo firmado con el estándar PKCS7 y una contraseña para obtener acceso al certificado.Initializes a new instance of the X509Certificate class using the name of a PKCS7 signed file and a password to access the certificate.

X509Certificate(String, String, X509KeyStorageFlags)

Inicializa una nueva instancia de la clase X509Certificate usando el nombre de un archivo firmado con el estándar PKCS7, una contraseña para obtener acceso al certificado y una marca de almacenamiento de claves.Initializes a new instance of the X509Certificate class using the name of a PKCS7 signed file, a password to access the certificate, and a key storage flag.

X509Certificate(X509Certificate)

Inicializa una nueva instancia de la clase X509Certificate utilizando otra clase X509Certificate.Initializes a new instance of the X509Certificate class using another X509Certificate class.

Propiedades

Handle

Obtiene un identificador para un contexto de certificado de la API de criptografía de Microsoft descrito por una estructura PCCERT_CONTEXT no administrada.Gets a handle to a Microsoft Cryptographic API certificate context described by an unmanaged PCCERT_CONTEXT structure.

Issuer

Obtiene el nombre de la entidad de certificación que emitió el certificado X.509v3.Gets the name of the certificate authority that issued the X.509v3 certificate.

Subject

Obtiene el nombre distintivo del sujeto del certificado.Gets the subject distinguished name from the certificate.

Métodos

CreateFromCertFile(String)

Crea un certificado X.509v3 a partir del archivo firmado con el estándar PKCS7 especificado.Creates an X.509v3 certificate from the specified PKCS7 signed file.

CreateFromSignedFile(String)

Crea un certificado X.509v3 a partir del archivo de certificación especificado.Creates an X.509v3 certificate from the specified signed file.

Dispose()

Libera todos los recursos que usa el objeto X509Certificate actual.Releases all resources used by the current X509Certificate object.

Dispose(Boolean)

Libera todos los recursos no administrados que este X509Certificate usa y libera los recursos administrados de forma opcional.Releases all of the unmanaged resources used by this X509Certificate and optionally releases the managed resources.

Equals(Object)

Compara dos objetos X509Certificate para determinar si son iguales.Compares two X509Certificate objects for equality.

Equals(X509Certificate)

Compara dos objetos X509Certificate para determinar si son iguales.Compares two X509Certificate objects for equality.

Export(X509ContentType)

Exporta el objeto X509Certificate actual a una matriz de bytes en un formato descrito por uno de los valores de X509ContentType.Exports the current X509Certificate object to a byte array in a format described by one of the X509ContentType values.

Export(X509ContentType, SecureString)

Exporta el objeto X509Certificate actual a una matriz de bytes utilizando el formato especificado y una contraseña.Exports the current X509Certificate object to a byte array using the specified format and a password.

Export(X509ContentType, String)

Exporta el objeto X509Certificate actual a una matriz de bytes en un formato descrito por uno de los valores de X509ContentType, con la contraseña especificada.Exports the current X509Certificate object to a byte array in a format described by one of the X509ContentType values, and using the specified password.

FormatDate(DateTime)

Convierte la fecha y la hora especificadas en una cadena.Converts the specified date and time to a string.

GetCertHash()

Devuelve el valor hash del certificado X.509v3 en forma de matriz de bytes.Returns the hash value for the X.509v3 certificate as an array of bytes.

GetCertHash(HashAlgorithmName)

Devuelve el valor hash del certificado X.509v3 que se calcula mediante el algoritmo hash criptográfico especificado.Returns the hash value for the X.509v3 certificate that is computed by using the specified cryptographic hash algorithm.

GetCertHashString()

Devuelve el valor hash SHA1 del certificado X.509v3 en forma de cadena hexadecimal.Returns the SHA1 hash value for the X.509v3 certificate as a hexadecimal string.

GetCertHashString(HashAlgorithmName)

Devuelve una cadena hexadecimal que contiene el valor hash del certificado X.509v3 que se calcula mediante el algoritmo hash criptográfico especificado.Returns a hexadecimal string containing the hash value for the X.509v3 certificate computed using the specified cryptographic hash algorithm.

GetEffectiveDateString()

Devuelve la fecha efectiva de este certificado X.509v3.Returns the effective date of this X.509v3 certificate.

GetExpirationDateString()

Devuelve la fecha de expiración de este certificado X.509v3.Returns the expiration date of this X.509v3 certificate.

GetFormat()

Devuelve el nombre del formato de este certificado X.509v3.Returns the name of the format of this X.509v3 certificate.

GetHashCode()

Devuelve el código hash del certificado X.509v3 en forma de entero.Returns the hash code for the X.509v3 certificate as an integer.

GetIssuerName()

Devuelve el nombre de la entidad de certificación que emitió el certificado X.509v3.Returns the name of the certification authority that issued the X.509v3 certificate.

GetKeyAlgorithm()

Devuelve la información del algoritmo de clave de este certificado X.509v3 en forma de cadena.Returns the key algorithm information for this X.509v3 certificate as a string.

GetKeyAlgorithmParameters()

Devuelve los parámetros del algoritmo de clave del certificado X.509v3 en forma de matriz de bytes.Returns the key algorithm parameters for the X.509v3 certificate as an array of bytes.

GetKeyAlgorithmParametersString()

Devuelve los parámetros del algoritmo de clave del certificado X.509v3 en forma de cadena hexadecimal.Returns the key algorithm parameters for the X.509v3 certificate as a hexadecimal string.

GetName()

Devuelve el nombre de la entidad de seguridad a la que se emitió el certificado.Returns the name of the principal to which the certificate was issued.

GetPublicKey()

Devuelve la clave pública del certificado X.509v3 en forma de matriz de bytes.Returns the public key for the X.509v3 certificate as an array of bytes.

GetPublicKeyString()

Devuelve la clave pública del certificado X.509v3 en forma de cadena hexadecimal.Returns the public key for the X.509v3 certificate as a hexadecimal string.

GetRawCertData()

Devuelve los datos sin procesar del certificado X.509v3 completo en forma de matriz de bytes.Returns the raw data for the entire X.509v3 certificate as an array of bytes.

GetRawCertDataString()

Devuelve los datos sin procesar del certificado X.509v3 completo en forma de cadena hexadecimal.Returns the raw data for the entire X.509v3 certificate as a hexadecimal string.

GetSerialNumber()

Devuelve el número de serie del certificado X.509v3 en forma de matriz de bytes en orden little-endian.Returns the serial number of the X.509v3 certificate as an array of bytes in little-endian order.

GetSerialNumberString()

Devuelve el número de serie del certificado X.509v3 en forma de cadena hexadecimal little-endian.Returns the serial number of the X.509v3 certificate as a little-endian hexadecimal string .

GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
Import(Byte[])

Rellena el objeto X509Certificate con datos de una matriz de bytes.Populates the X509Certificate object with data from a byte array.

Import(Byte[], SecureString, X509KeyStorageFlags)

Rellena un objeto X509Certificate utilizando los datos de una matriz de bytes, una contraseña y una marca de almacenamiento de claves.Populates an X509Certificate object using data from a byte array, a password, and a key storage flag.

Import(Byte[], String, X509KeyStorageFlags)

Rellena el objeto X509Certificate utilizando los datos de una matriz de bytes, una contraseña y marcas para determinar cómo se importa la clave privada.Populates the X509Certificate object using data from a byte array, a password, and flags for determining how the private key is imported.

Import(String)

Rellena el objeto X509Certificate con información de un archivo de certificado.Populates the X509Certificate object with information from a certificate file.

Import(String, SecureString, X509KeyStorageFlags)

Rellena un objeto X509Certificate con información de un archivo de certificado, una contraseña y una marca de almacenamiento de claves.Populates an X509Certificate object with information from a certificate file, a password, and a key storage flag.

Import(String, String, X509KeyStorageFlags)

Rellena el objeto X509Certificate con información de un archivo de certificado, una contraseña y un valor de X509KeyStorageFlags.Populates the X509Certificate object with information from a certificate file, a password, and a X509KeyStorageFlags value.

MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
Reset()

Restablece el estado del objeto X509Certificate2.Resets the state of the X509Certificate2 object.

ToString()

Devuelve una representación en forma de cadena del objeto X509Certificate actual.Returns a string representation of the current X509Certificate object.

ToString(Boolean)

Devuelve una representación en forma de cadena del objeto X509Certificate actual con información adicional, si se especifica.Returns a string representation of the current X509Certificate object, with extra information, if specified.

TryGetCertHash(HashAlgorithmName, Span<Byte>, Int32)

Intenta generar una "huella digital" para el certificado aplicando un algoritmo hash a la representación codificada del certificado con el algoritmo hash especificado.Attempts to produce a "thumbprint" for the certificate by hashing the encoded representation of the certificate with the specified hash algorithm.

Implementaciones de interfaz explícitas

IDeserializationCallback.OnDeserialization(Object)

Implementa la interfaz ISerializable. El evento de deserialización vuelve a llamar a este método cuando se completa la deserialización.Implements the ISerializable interface and is called back by the deserialization event when deserialization is complete.

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Obtiene información de serialización con todos los datos necesarios para volver a crear una instancia del objeto X509Certificate actual.Gets serialization information with all the data needed to recreate an instance of the current X509Certificate object.

Se aplica a