Spec-Zone.ru › Go

Пакет pkix

  • import "crypto/x509/pkix"
  • Обзор
  • Индекс

Обзор

Пакет pkix содержит общие, низкоуровневые структуры, используемые для разбора и сериализации ASN.1 сертификатов X.509, CRL и OCSP.

Индекс

  • тип AlgorithmIdentifier
  • тип AttributeTypeAndValue
  • тип AttributeTypeAndValueSET
  • тип CertificateList
  • функция (certList *CertificateList) HasExpired(now time.Time) bool
  • тип Extension
  • тип Name
  • функция (n *Name) FillFromRDNSequence(rdns *RDNSequence)
  • функция (n Name) String() string
  • функция (n Name) ToRDNSequence() (ret RDNSequence)
  • тип RDNSequence
  • функция (r RDNSequence) String() string
  • тип RelativeDistinguishedNameSET
  • тип RevokedCertificate
  • тип TBSCertificateList

Файлы пакета

pkix.go

тип AlgorithmIdentifier

AlgorithmIdentifier представляет ASN.1 структуру с таким же именем. См. RFC 5280, раздел 4.1.1.2.

type AlgorithmIdentifier struct {
    Algorithm  asn1.ObjectIdentifier
    Parameters asn1.RawValue `asn1:"optional"`
}

тип AttributeTypeAndValue

AttributeTypeAndValue отражает ASN.1 структуру с таким же именем в RFC 5280, Раздел 4.1.2.4.

type AttributeTypeAndValue struct {
    Type  asn1.ObjectIdentifier
    Value any
}

тип AttributeTypeAndValueSET 1.3

AttributeTypeAndValueSET представляет собой набор ASN.1 последовательностей AttributeTypeAndValue последовательностей из RFC 2986 (PKCS #10).

type AttributeTypeAndValueSET struct {
    Type  asn1.ObjectIdentifier
    Value [][]AttributeTypeAndValue `asn1:"set"`
}

тип CertificateList

CertificateList представляет собой ASN.1 структуру с таким же именем. См. RFC 5280, раздел 5.1. Используйте Certificate.CheckCRLSignature для проверки подписи.

Устарело: следует использовать x509.RevocationList.

type CertificateList struct {
    TBSCertList        TBSCertificateList
    SignatureAlgorithm AlgorithmIdentifier
    SignatureValue     asn1.BitString
}

функция (*CertificateList) HasExpired

func (certList *CertificateList) HasExpired(now time.Time) bool

HasExpired сообщает, был ли certList обновлён к настоящему моменту.

тип Extension

Extension представляет собой ASN.1 структуру с таким же именем. См. RFC 5280, раздел 4.2.

type Extension struct {
    Id       asn1.ObjectIdentifier
    Critical bool `asn1:"optional"`
    Value    []byte
}

тип Name

Name представляет собой имя X.509. Это включает только общие элементы DN. Обратите внимание, что Name является лишь приближением структуры X.509. Если требуется точное представление, используйте asn1.Unmarshal для исходного субъекта или эмитента как RDNSequence.

type Name struct {
    Country, Organization, OrganizationalUnit []string
    Locality, Province                        []string
    StreetAddress, PostalCode                 []string
    SerialNumber, CommonName                  string

    // Names contains all parsed attributes. When parsing distinguished names,
    // this can be used to extract non-standard attributes that are not parsed
    // by this package. When marshaling to RDNSequences, the Names field is
    // ignored, see ExtraNames.
    Names []AttributeTypeAndValue

    // ExtraNames contains attributes to be copied, raw, into any marshaled
    // distinguished names. Values override any attributes with the same OID.
    // The ExtraNames field is not populated when parsing, see Names.
    ExtraNames []AttributeTypeAndValue // Go 1.5
}

функция (*Name) FillFromRDNSequence

func (n *Name) FillFromRDNSequence(rdns *RDNSequence)

FillFromRDNSequence заполняет n из предоставленного RDNSequence. Многоэлементные RDN сжимаются, все записи добавляются в соответствующие поля n, а группировка не сохраняется.

функция (Name) String 1.10

func (n Name) String() string

String возвращает строковое представление n, примерно следуя синтаксису имён RFC 2253.

функция (Name) ToRDNSequence

func (n Name) ToRDNSequence() (ret RDNSequence)

ToRDNSequence преобразует n в единичный RDNSequence. Следующие атрибуты кодируются как многозначные RDN:

  • Страна
  • Организация
  • Отдел организации
  • Населённый пункт
  • Провинция
  • Улица
  • Почтовый индекс

Каждая запись ExtraNames кодируется как отдельная запись RDN.

тип RDNSequence

type RDNSequence []RelativeDistinguishedNameSET

функция (RDNSequence) String 1.10

func (r RDNSequence) String() string

String возвращает строковое представление последовательности r, примерно следуя синтаксису имён RFC 2253.

тип RelativeDistinguishedNameSET

type RelativeDistinguishedNameSET []AttributeTypeAndValue

тип RevokedCertificate

RevokedCertificate представляет ASN.1 структуру с таким же именем. См. RFC 5280, раздел 5.1.

type RevokedCertificate struct {
    SerialNumber   *big.Int
    RevocationTime time.Time
    Extensions     []Extension `asn1:"optional"`
}

тип TBSCertificateList

TBSCertificateList представляет ASN.1 структуру с таким же именем. См. RFC 5280, раздел 5.1.

Устарело: следует использовать x509.RevocationList.

type TBSCertificateList struct {
    Raw                 asn1.RawContent
    Version             int `asn1:"optional,default:0"`
    Signature           AlgorithmIdentifier
    Issuer              RDNSequence
    ThisUpdate          time.Time
    NextUpdate          time.Time            `asn1:"optional"`
    RevokedCertificates []RevokedCertificate `asn1:"optional"`
    Extensions          []Extension          `asn1:"tag:0,optional,explicit"`
}

© Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
http://golang.org/pkg/crypto/x509/pkix/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API