...

パッケージ pkix

import "crypto/x509/pkix"
概要
目次

概要 ▾

pkix パッケージは,X.509 証明書,CRL,OCSP をパースしシリアライズする ASN.1 で用いる共有された,低レベル構造を含みます。

type AlgorithmIdentifier

AlgorithmIdentifier は,同じ名前の ASN.1 構造を表します。 RFC5280 のセクション 4.1.1.2 を参照してください。

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

type AttributeTypeAndValue

AttributeTypeAndValue は, RFC 5280 のセクション 4.1.2.4 にある同じ名前の ASN.1 構造をミラーします。

type AttributeTypeAndValue struct {
    Type  asn1.ObjectIdentifier
    Value interface{}
}

type AttributeTypeAndValueSET 1.3

AttributeTypeAndValueSET は, RFC 2986 (PKCS #10) の AttributeTypeAndValue シーケンスの ASN.1 シーケンスのセットを表します。

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

type CertificateList

CertificateList は,同じ名前の ASN.1 構造を表します。 RFC5280 のセクション 5.1 を参照してください。 署名を確認するには, Certificate.CheckCRLSignature を使用します。

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

func (*CertificateList) HasExpired

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

HasExpired は, certList が現在更新されているはずであるかどうかを報告します。

type Extension

Extension は,同じ名前の ASN.1 構造を表します。 RFC5280 のセクション 4.2 を参照してください。

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

type Name

Nameは X.509 識別名を表します。 これには DN の共通要素のみが含まれます。 解析時には,すべての要素が Names に格納され,そこから非標準の要素を抽出できます。 整列化すると, ExtraName の要素が追加され,同じ OID を持つ他の値を上書きします。

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

    Names      []AttributeTypeAndValue
    ExtraNames []AttributeTypeAndValue // Go 1.5
}

func (*Name) FillFromRDNSequence

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

func (Name) String 1.10

func (n Name) String() string

String は, RFC 2253 の識別名の構文にほぼ従う, n の文字列形式を返します。

func (Name) ToRDNSequence

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

type RDNSequence

type RDNSequence []RelativeDistinguishedNameSET

func (RDNSequence) String 1.10

func (r RDNSequence) String() string

String は,概ね RFC 2253 識別名の構文に従った,シーケンス r の文字列表現を返します。

type RelativeDistinguishedNameSET

type RelativeDistinguishedNameSET []AttributeTypeAndValue

type RevokedCertificate

RevokedCertificate は,同じ名前の ASN.1 構造を表します。 RFC5280 のセクション 5.1 を参照してください。

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

type TBSCertificateList

TBSCertificateList は,同じ名前の ASN.1 構造を表します。 RFC5280 のセクション 5.1 を参照してください。

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"`
}