public class

AttributeCertificateHolder

extends Object
implements Selector
java.lang.Object
   ↳ org.bouncycastle.cert.AttributeCertificateHolder

Class Overview

The Holder object.

          Holder ::= SEQUENCE {
                baseCertificateID   [0] IssuerSerial OPTIONAL,
                         -- the issuer and serial number of
                         -- the holder's Public Key Certificate
                entityName          [1] GeneralNames OPTIONAL,
                         -- the name of the claimant or role
                objectDigestInfo    [2] ObjectDigestInfo OPTIONAL
                         -- used to directly authenticate the holder,
                         -- for example, an executable
          }
 

Note: If objectDigestInfo comparisons are to be carried out the static method setDigestCalculatorProvider must be called once to configure the class to do the necessary calculations.

Summary

Public Constructors
AttributeCertificateHolder(X500Name issuerName, BigInteger serialNumber)
AttributeCertificateHolder(X509CertificateHolder cert)
AttributeCertificateHolder(X500Name principal)
AttributeCertificateHolder(int digestedObjectType, String digestAlgorithm, String otherObjectTypeID, byte[] objectDigest)
Constructs a holder for v2 attribute certificates with a hash value for some type of object.
Public Methods
Object clone()
boolean equals(Object obj)
AlgorithmIdentifier getDigestAlgorithm()
Returns algorithm identifier for the digest used if ObjectDigestInfo is present.
int getDigestedObjectType()
Returns the digest object type if an object digest info is used.
X500Name[] getEntityNames()
Return any principal objects inside the attribute certificate holder entity names field.
X500Name[] getIssuer()
Return the principals associated with the issuer attached to this holder
byte[] getObjectDigest()
Returns the hash if an object digest info is used.
ASN1ObjectIdentifier getOtherObjectTypeID()
Returns the digest algorithm ID if an object digest info is used.
BigInteger getSerialNumber()
Return the serial number associated with the issuer attached to this holder.
int hashCode()
boolean match(Object obj)
static void setDigestCalculatorProvider(DigestCalculatorProvider digCalcProvider)
Set a digest calculator provider to be used if matches are attempted using ObjectDigestInfo,
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.bouncycastle.util.Selector

Public Constructors

public AttributeCertificateHolder (X500Name issuerName, BigInteger serialNumber)

public AttributeCertificateHolder (X509CertificateHolder cert)

public AttributeCertificateHolder (X500Name principal)

public AttributeCertificateHolder (int digestedObjectType, String digestAlgorithm, String otherObjectTypeID, byte[] objectDigest)

Constructs a holder for v2 attribute certificates with a hash value for some type of object.

digestedObjectType can be one of the following:

  • 0 - publicKey - A hash of the public key of the holder must be passed.
  • 1 - publicKeyCert - A hash of the public key certificate of the holder must be passed.
  • 2 - otherObjectDigest - A hash of some other object type must be passed. otherObjectTypeID must not be empty.

This cannot be used if a v1 attribute certificate is used.

Parameters
digestedObjectType The digest object type.
digestAlgorithm The algorithm identifier for the hash.
otherObjectTypeID The object type ID if digestedObjectType is otherObjectDigest.
objectDigest The hash value.

Public Methods

public Object clone ()

public boolean equals (Object obj)

public AlgorithmIdentifier getDigestAlgorithm ()

Returns algorithm identifier for the digest used if ObjectDigestInfo is present.

Returns
  • digest AlgorithmIdentifier or null if ObjectDigestInfo is absent.

public int getDigestedObjectType ()

Returns the digest object type if an object digest info is used.

  • 0 - publicKey - A hash of the public key of the holder must be passed.
  • 1 - publicKeyCert - A hash of the public key certificate of the holder must be passed.
  • 2 - otherObjectDigest - A hash of some other object type must be passed. otherObjectTypeID must not be empty.

Returns
  • The digest object type or -1 if no object digest info is set.

public X500Name[] getEntityNames ()

Return any principal objects inside the attribute certificate holder entity names field.

Returns
  • an array of Principal objects (usually X500Principal), null if no entity names field is set.

public X500Name[] getIssuer ()

Return the principals associated with the issuer attached to this holder

Returns
  • an array of principals, null if no BaseCertificateID is set.

public byte[] getObjectDigest ()

Returns the hash if an object digest info is used.

Returns
  • The hash or null if ObjectDigestInfo is absent.

public ASN1ObjectIdentifier getOtherObjectTypeID ()

Returns the digest algorithm ID if an object digest info is used.

Returns
  • The digest algorithm ID or null if no object digest info is set.

public BigInteger getSerialNumber ()

Return the serial number associated with the issuer attached to this holder.

Returns
  • the certificate serial number, null if no BaseCertificateID is set.

public int hashCode ()

public boolean match (Object obj)

public static void setDigestCalculatorProvider (DigestCalculatorProvider digCalcProvider)

Set a digest calculator provider to be used if matches are attempted using ObjectDigestInfo,

Parameters
digCalcProvider a provider of digest calculators.