Поделиться через


структура CERT_INFO (wincrypt.h)

Структура CERT_INFO содержит сведения о сертификате.

Синтаксис

typedef struct _CERT_INFO {
  DWORD                      dwVersion;
  CRYPT_INTEGER_BLOB         SerialNumber;
  CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
  CERT_NAME_BLOB             Issuer;
  FILETIME                   NotBefore;
  FILETIME                   NotAfter;
  CERT_NAME_BLOB             Subject;
  CERT_PUBLIC_KEY_INFO       SubjectPublicKeyInfo;
  CRYPT_BIT_BLOB             IssuerUniqueId;
  CRYPT_BIT_BLOB             SubjectUniqueId;
  DWORD                      cExtension;
  PCERT_EXTENSION            rgExtension;
} CERT_INFO, *PCERT_INFO;

Члены

dwVersion

Номер версии сертификата. Этот элемент может быть одним из следующих номеров версии.

Значение Значение
CERT_V1
версия 1
CERT_V2
версия 2
CERT_V3
Версия 3

SerialNumber

Большой двоичный объект, содержащий серийный номер сертификата. Наименее значимый байт — это нулевой байт элемента pbDataserialNumber. Индекс последнего байта pbData на один меньше, чем значение элемента cbDataserialNumber. Самый значительный байт — последний байт pbData. Удаляются 0x00 или 0xFF байтов. Дополнительные сведения см. в разделе CertCompareIntegerBlob.

SignatureAlgorithm

Структура CRYPT_ALGORITHM_IDENTIFIER , содержащая тип алгоритма подписи и закодированные дополнительные параметры шифрования.

Issuer

Имя в кодировке издателя сертификата.

NotBefore

Дата и время, до которых сертификат недействителен. Для дат с 1950 по 2049 год включительно дата и время кодируются в формате YYYMMDDHHMMSS. В этом элементе используется двухзначное значение года, точное в секундах. Для дат до 1950 года или после 2049 года используется закодированное обобщенное время. Закодированное обобщенное время имеет форму ГГГГМММДДHHMMSSMMM с использованием четырехзначного года и имеет точность до миллисекунд. Несмотря на то, что обобщенное время поддерживает разрешение в миллисекундах, время NotBefore определяется только секундами.

NotAfter

Дата и время, после которого сертификат недействителен. Для дат с 1950 по 2049 год включительно дата и время кодируются в формате универсального времени в формате YYYMMDDHHMMSS. В этом элементе используется двухзначное значение года, точное в секундах. Для дат до 1950 года или после 2049 года используется закодированное обобщенное время. Закодированное обобщенное время имеет форму ГГГГМММДДHHMMSSMMM с использованием четырехзначного года и имеет точность до миллисекунд. Несмотря на то, что обобщенное время поддерживает разрешение в миллисекундах, время NotAfter определяется только секундами.

Subject

Закодированное имя субъекта сертификата.

SubjectPublicKeyInfo

Структура CERT_PUBLIC_KEY_INFO , содержащая закодированный открытый ключ и его алгоритм. Элемент PublicKey структуры CERT_PUBLIC_KEY_INFO содержит закодированный открытый ключ в виде CRYPT_BIT_BLOB, а член Algorithm содержит закодированный алгоритм в виде CRYPT_ALGORITHM_IDENTIFIER.

IssuerUniqueId

Большой двоичный объект, содержащий уникальный идентификатор издателя.

SubjectUniqueId

Большой двоичный объект, содержащий уникальный идентификатор субъекта.

cExtension

Количество элементов в массиве rgExtension .

rgExtension

Массив указателей на CERT_EXTENSION структуры, каждая из которых содержит сведения о расширении сертификата.

Требования

   
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть wincrypt.h

См. также раздел

CERT_EXTENSION

CERT_PUBLIC_KEY_INFO

CMSG_ENVELOPED_ENCODE_INFO

CMSG_SIGNER_ENCODE_INFO

CRYPT_ALGORITHM_IDENTIFIER

CRYPT_BIT_BLOB

CRYPT_INTEGER_BLOB

CRYPT_VERIFY_MESSAGE_PARA

CertCompareCertificate

CertGetSubjectCertificateFromStore

CryptMsgControl

CryptMsgGetParam

CryptSignAndEncodeCertificate