Class SignerIdentifier

java.lang.Object
org.bouncycastle.asn1.ASN1Object
org.bouncycastle.oer.its.ieee1609dot2.SignerIdentifier
All Implemented Interfaces:
org.bouncycastle.asn1.ASN1Choice, org.bouncycastle.asn1.ASN1Encodable, org.bouncycastle.util.Encodable

public class SignerIdentifier extends org.bouncycastle.asn1.ASN1Object implements org.bouncycastle.asn1.ASN1Choice
SignerIdentifier This structure allows the recipient of data to determine which keying material to use to authenticate the data. It also indicates the verification type to be used to generate the hash for verification, as specified in 5.3.1.
  • If the choice indicated is digest:
    • The structure contains the HashedId8 of the relevant certificate. The HashedId8 is calculated with the whole-certificate hash algorithm, determined as described in 6.4.3.
    • The verification type is certificate and the certificate data passed to the hash function as specified in 5.3.1 is the authorization certificate.
  • If the choice indicated is certificate:
    • The structure contains one or more Certificate structures, in order such that the first certificate is the authorization certificate and each subsequent certificate is the issuer of the one before it.
    • The verification type is certificate and the certificate data passed to the hash function as specified in 5.3.1 is the authorization certificate.
  • If the choice indicated is self:
    • The structure does not contain any data beyond the indication that the choice value is self.
    • The verification type is self-signed.
Critical information fields:
  1. If present, this is a critical information field as defined in 5.2.6. An implementation that does not recognize the CHOICE value for this type when verifying a signed SPDU shall indicate that the signed SPDU is invalid.
  2. If present, certificate is a critical information field as defined in 5.2.6. An implementation that does not support the number of certificates in certificate when verifying a signed SPDU shall indicate that the signed SPDU is invalid. A compliant implementation shall support certificate fields containing at least one certificate.

SignerIdentifier ::= CHOICE { digest HashedId8, certificate SequenceOfCertificate, self NULL, ... }

  • Field Details

  • Constructor Details

    • SignerIdentifier

      public SignerIdentifier(int choice, org.bouncycastle.asn1.ASN1Encodable value)
  • Method Details

    • getInstance

      public static SignerIdentifier getInstance(Object src)
    • getChoice

      public int getChoice()
    • digest

      public static SignerIdentifier digest(HashedId8 id)
    • certificate

      public static SignerIdentifier certificate(SequenceOfCertificate sequenceOfCertificate)
    • self

      public static SignerIdentifier self()
    • toASN1Primitive

      public org.bouncycastle.asn1.ASN1Primitive toASN1Primitive()
      Specified by:
      toASN1Primitive in interface org.bouncycastle.asn1.ASN1Encodable
      Specified by:
      toASN1Primitive in class org.bouncycastle.asn1.ASN1Object
    • getSignerIdentifier

      public org.bouncycastle.asn1.ASN1Encodable getSignerIdentifier()