X509Certificate Класс

Определение

Предоставляет методы, помогающие использовать сертификаты 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
Наследование
X509Certificate
Производный
Атрибуты
Реализации

Примеры

В следующем примере из файла загружается сертификат X. 509, вызывается метод ToString и выводятся результаты на консоль.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

Комментарии

ASN. 1 DER — это единственный формат сертификата, поддерживаемый этим классом.ASN.1 DER is the only certificate format supported by this class.

В большинстве случаев вместо этого следует использовать класс X509Certificate2.For most scenarios, you should use the X509Certificate2 class instead.

Важно!

Начиная с .NET Framework 4.6.NET Framework 4.6этот тип реализует интерфейс IDisposable.Starting with the .NET Framework 4.6.NET Framework 4.6, this type implements the IDisposable interface. По окончании использования выдаленную ему память следует прямо или косвенно освободить.When you have finished using the type, you should dispose of it either directly or indirectly. Чтобы сделать это прямо, вызовите его метод Dispose в блоке try/catch.To dispose of the type directly, call its Dispose method in a try/catch block. Чтобы сделать это косвенно, используйте языковые конструкции, такие как using (в C#) или Using (в Visual Basic).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Дополнительные сведения см. в разделе "Использование объекта, реализующего IDisposable" в статье об интерфейсе IDisposable.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

Для приложений, предназначенных для .NET Framework 4.5.2.NET Framework 4.5.2 и более ранних версий, класс X509Certificate не реализует интерфейс IDisposable и поэтому не имеет метода 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.

Конструкторы

X509Certificate()

Инициализирует новый экземпляр класса X509Certificate.Initializes a new instance of the X509Certificate class.

X509Certificate(Byte[])

Инициализирует новый класс X509Certificate, определенный из последовательности байтов, представляющих сертификат X.509v3.Initializes a new instance of the X509Certificate class defined from a sequence of bytes representing an X.509v3 certificate.

X509Certificate(Byte[], SecureString)

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов и пароля.Initializes a new instance of the X509Certificate class using a byte array and a password.

X509Certificate(Byte[], SecureString, X509KeyStorageFlags)

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов, пароля и флага хранилища ключей.Initializes a new instance of the X509Certificate class using a byte array, a password, and a key storage flag.

X509Certificate(Byte[], String)

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов и пароля.Initializes a new instance of the X509Certificate class using a byte array and a password.

X509Certificate(Byte[], String, X509KeyStorageFlags)

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов, пароля и флага хранилища ключей.Initializes a new instance of the X509Certificate class using a byte array, a password, and a key storage flag.

X509Certificate(IntPtr)

Инициализирует новый экземпляр класса X509Certificate с помощью дескриптора неуправляемой структуры PCCERT_CONTEXT.Initializes a new instance of the X509Certificate class using a handle to an unmanaged PCCERT_CONTEXT structure.

X509Certificate(SerializationInfo, StreamingContext)

Инициализирует новый экземпляр класса X509Certificate с помощью объекта SerializationInfo и структуры StreamingContext.Initializes a new instance of the X509Certificate class using a SerializationInfo object and a StreamingContext structure.

X509Certificate(String)

Инициализирует новый экземпляр класса X509Certificate именем подписанного файла PKCS7.Initializes a new instance of the X509Certificate class using the name of a PKCS7 signed file.

X509Certificate(String, SecureString)

Инициализирует новый экземпляр класса X509Certificate с использованием имени файла сертификата и пароля.Initializes a new instance of the X509Certificate class using a certificate file name and a password.

X509Certificate(String, SecureString, X509KeyStorageFlags)

Инициализирует новый экземпляр класса X509Certificate с использованием имени файла сертификата, пароля и флага хранилища ключа.Initializes a new instance of the X509Certificate class using a certificate file name, a password, and a key storage flag.

X509Certificate(String, String)

Инициализирует новый экземпляр класса X509Certificate, именем подписанного файла PKCS7 и паролем для доступа к сертификату.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)

Инициализирует новый экземпляр класса X509Certificate, именем подписанного файла PKCS7 и паролем для доступа к сертификату и флагом хранилища ключей.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)

Инициализирует новый экземпляр класса X509Certificate с помощью другого класса X509Certificate.Initializes a new instance of the X509Certificate class using another X509Certificate class.

Свойства

Handle

Получает дескриптор контекста сертификата Microsoft Cryptographic API, описанный неуправляемой структурой PCCERT_CONTEXT.Gets a handle to a Microsoft Cryptographic API certificate context described by an unmanaged PCCERT_CONTEXT structure.

Issuer

Получает имя центра сертификации, выдавшего сертификат X.509v3.Gets the name of the certificate authority that issued the X.509v3 certificate.

Subject

Возвращает различающееся имя субъекта из сертификата.Gets the subject distinguished name from the certificate.

Методы

CreateFromCertFile(String)

Создает сертификат X.509v3 из заданного подписанного файла PKCS7.Creates an X.509v3 certificate from the specified PKCS7 signed file.

CreateFromSignedFile(String)

Создает сертификат X.509v3 из заданного подписанного файла.Creates an X.509v3 certificate from the specified signed file.

Dispose()

Освобождает все ресурсы, используемые текущим объектом X509Certificate.Releases all resources used by the current X509Certificate object.

Dispose(Boolean)

Освобождает все неуправляемые ресурсы, используемые объектом X509Certificate, и при необходимости освобождает также управляемые ресурсы.Releases all of the unmanaged resources used by this X509Certificate and optionally releases the managed resources.

Equals(Object)

Определяет равенство двух объектов X509Certificate.Compares two X509Certificate objects for equality.

Equals(X509Certificate)

Определяет равенство двух объектов X509Certificate.Compares two X509Certificate objects for equality.

Export(X509ContentType)

Экспортирует текущий объект X509Certificate в массив байтов в формате, описанном одним из значений X509ContentType.Exports the current X509Certificate object to a byte array in a format described by one of the X509ContentType values.

Export(X509ContentType, SecureString)

Экспортирует текущий объект X509Certificate в массив байтов с использованием заданных формата и пароля.Exports the current X509Certificate object to a byte array using the specified format and a password.

Export(X509ContentType, String)

Экспортирует текущий объект X509Certificate в массив байтов в формате, описанном одним из значений X509ContentType, с использованием заданного пароля.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)

Преобразует указанные дату и время в строку.Converts the specified date and time to a string.

GetCertHash()

Возвращает хэш-значение для сертификата X.509v3 в виде массива байтов.Returns the hash value for the X.509v3 certificate as an array of bytes.

GetCertHash(HashAlgorithmName)

Возвращает хэш-значение для сертификата X.509v3, который вычисляется с помощью указанного криптографического хэш-алгоритма.Returns the hash value for the X.509v3 certificate that is computed by using the specified cryptographic hash algorithm.

GetCertHashString()

Возвращает хэш-значение SHA1 для сертификата X.509v3 в виде шестнадцатеричной строки.Returns the SHA1 hash value for the X.509v3 certificate as a hexadecimal string.

GetCertHashString(HashAlgorithmName)

Возвращает шестнадцатеричную строку, содержащую хэш-значение для сертификата X.509v3, который вычисляется с помощью указанного криптографического хэш-алгоритма.Returns a hexadecimal string containing the hash value for the X.509v3 certificate computed using the specified cryptographic hash algorithm.

GetEffectiveDateString()

Возвращает дату вступления в силу сертификата X.509v3.Returns the effective date of this X.509v3 certificate.

GetExpirationDateString()

Возвращает срок действия сертификата X.509v3.Returns the expiration date of this X.509v3 certificate.

GetFormat()

Возвращает имя формата сертификата X.509v3.Returns the name of the format of this X.509v3 certificate.

GetHashCode()

Возвращает хэш-код для сертификата X.509v3 в виде целого числа.Returns the hash code for the X.509v3 certificate as an integer.

GetIssuerName()

Возвращает имя центра сертификации, выдавшего сертификат X.509v3.Returns the name of the certification authority that issued the X.509v3 certificate.

GetKeyAlgorithm()

Возвращает сведения об алгоритме ключа для сертификата X.509v3 в виде строки.Returns the key algorithm information for this X.509v3 certificate as a string.

GetKeyAlgorithmParameters()

Возвращает параметры алгоритма ключа для сертификата X.509v3 в виде массива байтов.Returns the key algorithm parameters for the X.509v3 certificate as an array of bytes.

GetKeyAlgorithmParametersString()

Возвращает параметры алгоритма ключа для сертификата X.509v3 в виде шестнадцатеричной строки.Returns the key algorithm parameters for the X.509v3 certificate as a hexadecimal string.

GetName()

Возвращает имя участника, которому выдан сертификат.Returns the name of the principal to which the certificate was issued.

GetPublicKey()

Возвращает открытый ключ для сертификата X.509v3 в виде массива байтов.Returns the public key for the X.509v3 certificate as an array of bytes.

GetPublicKeyString()

Возвращает открытый ключ для сертификата X.509v3 в виде шестнадцатеричной строки.Returns the public key for the X.509v3 certificate as a hexadecimal string.

GetRawCertData()

Возвращает необработанные данные для всего сертификата X.509v3 в виде массива байтов.Returns the raw data for the entire X.509v3 certificate as an array of bytes.

GetRawCertDataString()

Возвращает необработанные данные для всего сертификата X.509v3 в виде шестнадцатеричной строки.Returns the raw data for the entire X.509v3 certificate as a hexadecimal string.

GetSerialNumber()

Возвращает серийный номер сертификата X.509v3 в виде массива байтов в прямом порядке.Returns the serial number of the X.509v3 certificate as an array of bytes in little-endian order.

GetSerialNumberString()

Возвращает серийный номер сертификата X.509v3 в виде шестнадцатеричной строки в прямом порядке.Returns the serial number of the X.509v3 certificate as a little-endian hexadecimal string .

GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
Import(Byte[])

Заполняет объект X509Certificate данными из массива байтов.Populates the X509Certificate object with data from a byte array.

Import(Byte[], SecureString, X509KeyStorageFlags)

Заполняет объект X509Certificate с помощью данных из массива данных, пароля и флага хранилища ключа.Populates an X509Certificate object using data from a byte array, a password, and a key storage flag.

Import(Byte[], String, X509KeyStorageFlags)

Заполняет объект X509Certificate с помощью данных из массива байтов, пароля и флагов, чтобы определить способ импорта закрытого ключа.Populates the X509Certificate object using data from a byte array, a password, and flags for determining how the private key is imported.

Import(String)

Заполняет объект X509Certificate сведениями из файла сертификата.Populates the X509Certificate object with information from a certificate file.

Import(String, SecureString, X509KeyStorageFlags)

Заполняет объект X509Certificate сведениями из файла сертификата, паролем и флагом хранилища ключа.Populates an X509Certificate object with information from a certificate file, a password, and a key storage flag.

Import(String, String, X509KeyStorageFlags)

Заполняет объект X509Certificate сведениями из файла сертификата, паролем и значением X509KeyStorageFlags.Populates the X509Certificate object with information from a certificate file, a password, and a X509KeyStorageFlags value.

MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
Reset()

Сбрасывает состояние объекта X509Certificate2.Resets the state of the X509Certificate2 object.

ToString()

Возвращает строковое представление текущего объекта X509Certificate.Returns a string representation of the current X509Certificate object.

ToString(Boolean)

Возвращает строковое представление текущего объекта X509Certificate с дополнительными сведениями, если заданы.Returns a string representation of the current X509Certificate object, with extra information, if specified.

TryGetCertHash(HashAlgorithmName, Span<Byte>, Int32)

Явные реализации интерфейса

IDeserializationCallback.OnDeserialization(Object)

Реализует интерфейс ISerializable и вызывается событием десериализации после завершения десериализации в ходе обратного вызова.Implements the ISerializable interface and is called back by the deserialization event when deserialization is complete.

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Получает сведения сериализации со всеми данными, необходимыми для повторного создания экземпляра текущего объекта X509Certificate.Gets serialization information with all the data needed to recreate an instance of the current X509Certificate object.

Применяется к