Top Classes
module bcutil

Package org.bouncycastle.oer.its.ieee1609dot2


Class Summary

Modifier and TypeClass and Description
public class
AesCcmCiphertext

    AesCcmCiphertext ::= SEQUENCE {
        nonce OCTET STRING (SIZE (12))
        ccmCiphertext Opaque -- 16 bytes longer than plaintext
    }
public class
Certificate

Certificate ::= CertificateBase (ImplicitCertificate | ExplicitCertificate)

public class
CertificateBase

    CertificateBase ::= SEQUENCE {
        version Uint8(3),
        type CertificateType,
        issuer IssuerIdentifier,
        toBeSigned ToBeSignedCertificate,
        signature Signature OPTIONAL
    }
public class
CertificateId

CertificateId ::= CHOICE { linkageData LinkageData, name Hostname, binaryId OCTET STRING(SIZE(1..64)), none NULL, ...

public class
CertificateType

CertificateType ::= ENUMERATED { explicit, implicit, ...

public class
ContributedExtensionBlock

ContributedExtensionBlock ::= SEQUENCE { contributorId IEEE1609DOT2-HEADERINFO-CONTRIBUTED-EXTENSION.

public class
public class
CounterSignature

Countersignature ::= Ieee1609Dot2Data (WITH COMPONENTS {..., content (WITH COMPONENTS {..., signedData (WITH COMPONENTS {..., tbsData (WITH COMPONENTS {..., payload (WITH COMPONENTS {..., data ABSENT, extDataHash PRESENT }), headerInfo(WITH COMPONENTS {..., generationTime PRESENT, expiryTime ABSENT, generationLocation ABSENT, p2pcdLearningRequest ABSENT, missingCrlIdentifier ABSENT, encryptionKey ABSENT }) }) }) }) })

public class
EncryptedData

    EncryptedData ::= SEQUENCE {
        recipients SequenceOfRecipientInfo,
        ciphertext SymmetricCiphertext
    }
public class
EncryptedDataEncryptionKey

EncryptedDataEncryptionKey ::= CHOICE { eciesNistP256 EciesP256EncryptedKey, eciesBrainpoolP256r1 EciesP256EncryptedKey, ...

public class
EndEntityType

    EndEntityType ::= BIT STRING { app(0), enrol(1) } (SIZE (8)) (ALL EXCEPT ())
public class
ExplicitCertificate

ExplicitCertificate ::= CertificateBase (WITH COMPONENTS {..., type(explicit), toBeSigned(WITH COMPONENTS {..., verifyKeyIndicator(WITH COMPONENTS {verificationKey}) }), signature PRESENT })

public class
HashedData

   HashedData::= CHOICE {
    sha256HashedData  OCTET STRING (SIZE(32)),
    ...,
    sha384HashedData  OCTET STRING (SIZE(48)),
    reserved          OCTET STRING (SIZE(32))
  }
public class
HeaderInfo

    HeaderInfo ::= SEQUENCE {
    psid                  Psid,
    generationTime        Time64 OPTIONAL,
    expiryTime            Time64  OPTIONAL,
    generationLocation    ThreeDLocation OPTIONAL,
    p2pcdLearningRequest  HashedId3 OPTIONAL,
    missingCrlIdentifier  MissingCrlIdentifier OPTIONAL,
    encryptionKey         EncryptionKey OPTIONAL,
    ...,
    inlineP2pcdRequest    SequenceOfHashedId3 OPTIONAL,
    requestedCertificate  Certificate OPTIONAL,
    pduFunctionalType     PduFunctionalType OPTIONAL,
    contributedExtensions ContributedExtensionBlocks OPTIONAL
    }
public class
HeaderInfoContributorId

HeaderInfoContributorId ::= INTEGER (0..255) etsiHeaderInfoContributorId HeaderInfoContributorId ::= 2

public class
Ieee1609Dot2Content

    Ieee1609Dot2Content ::= CHOICE {
        unsecuredData Opaque,
        signedData SignedData,
        encryptedData EncryptedData,
        signedCertificateRequest Opaque,
        ...
public class
Ieee1609Dot2Data

    Ieee1609Dot2Data ::= SEQUENCE {
        protocolVersion Uint8(3),
        content Ieee1609Dot2Content
    }
public class
ImplicitCertificate

ImplicitCertificate ::= CertificateBase (WITH COMPONENTS {..., type(implicit), toBeSigned(WITH COMPONENTS {..., verifyKeyIndicator(WITH COMPONENTS {reconstructionValue}) }), signature ABSENT })

public class
IssuerIdentifier

    IssuerIdentifier ::= CHOICE {
        sha256AndDigest HashedId8,
        self HashAlgorithm,
        ...,
        sha384AndDigest HashedId8
    }
public class
LinkageData

    LinkageData ::= SEQUENCE {
        iCert IValue,
        linkage-value LinkageValue,
        group-linkage-value GroupLinkageValue OPTIONAL
    }
public class
MissingCrlIdentifier

MissingCrlIdentifier ::= SEQUENCE { cracaId HashedId3, crlSeries CrlSeries, ...

public class
public class
PduFunctionalType

PduFunctionalType ::= INTEGER (0..255) tlsHandshake PduFunctionalType ::= 1 iso21177ExtendedAuth PduFunctionalType ::= 2

public class
PKRecipientInfo

    PKRecipientInfo ::= SEQUENCE {
        recipientId HashedId8,
        encKey EncryptedDataEncryptionKey
    }
public class
PreSharedKeyRecipientInfo

PreSharedKeyRecipientInfo ::= HashedId8

public class
PsidGroupPermissions

    PsidGroupPermissions ::= SEQUENCE {
        subjectPermissions SubjectPermissions,
        minChainLength INTEGER DEFAULT 1,
        chainLengthRange INTEGER DEFAULT 0,
        eeType EndEntityType DEFAULT (app)
    }
public class
RecipientInfo

  RecipientInfo ::= CHOICE {
    pskRecipInfo         PreSharedKeyRecipientInfo,
    symmRecipInfo        SymmRecipientInfo,
    certRecipInfo        PKRecipientInfo,
    signedDataRecipInfo  PKRecipientInfo,
    rekRecipInfo         PKRecipientInfo
  }
public class
SequenceOfCertificate

    SequenceOfCertificate ::= SEQUENCE OF Certificate
public class
SequenceOfPsidGroupPermissions

    SEQUENCE OF PsidGroupPermissions
public class
SequenceOfRecipientInfo

    SequenceOfRecipientInfo ::= SEQUENCE OF RecipientInfo
public class
SignedData

    SignedData ::= SEQUENCE {
        hashId HashAlgorithm,
        tbsData ToBeSignedData,
        signer SignerIdentifier,
        signature Signature
    }
public class
SignedDataPayload

    SignedDataPayload ::= SEQUENCE {
        data Ieee1609Dot2Data OPTIONAL,
        extDataHash HashedData OPTIONAL,
        ...
public class
SignerIdentifier

SignerIdentifier This structure allows the recipient of data to determine which keying material to use to authenticate the data.

public class
SubjectPermissions

    SubjectPermissions ::= CHOICE {
        explicit SequenceOfPsidSspRange,
        all NULL,
        ...
public class
SymmetricCiphertext

SymmetricCiphertext ::= CHOICE { aes128ccm AesCcmCiphertext, ...

public class
SymmRecipientInfo

    SymmRecipientInfo ::= SEQUENCE {
        recipientId HashedId8,
        encKey SymmetricCiphertext
    }
public class
ToBeSignedCertificate

    ToBeSignedCertificate ::= SEQUENCE {
    id                      CertificateId,
    cracaId                 HashedId3,
    crlSeries               CrlSeries,
    validityPeriod          ValidityPeriod,
    region                  GeographicRegion OPTIONAL,
    assuranceLevel          SubjectAssurance OPTIONAL,
    appPermissions          SequenceOfPsidSsp OPTIONAL,
    certIssuePermissions    SequenceOfPsidGroupPermissions OPTIONAL,
    certRequestPermissions  SequenceOfPsidGroupPermissions OPTIONAL,
    canRequestRollover      NULL OPTIONAL,
    encryptionKey           PublicEncryptionKey OPTIONAL,
    verifyKeyIndicator      VerificationKeyIndicator,
    ...
public class
ToBeSignedData

    ToBeSignedData ::= SEQUENCE {
        payload SignedDataPayload,
        headerInfo HeaderInfo
    }
public class
VerificationKeyIndicator

    VerificationKeyIndicator ::= CHOICE {
        verificationKey PublicVerificationKey,
        reconstructionValue EccP256CurvePoint,
        ...