AltSignatureValue (Bouncy Castle Library 1.85 API Specification)
Date: 2026-07-12

org.bouncycastle.asn1.x509

## Class AltSignatureValue

- java.lang.Object
- - org.bouncycastle.asn1.ASN1Object
  - - org.bouncycastle.asn1.x509.AltSignatureValue

- All Implemented Interfaces:
    ASN1Encodable, Encodable

      public class AltSignatureValue
      extends ASN1Object

  X.509 Section 9.8.4.
  This extension may be used as a public-key certificate extension, a CRL extension or an AVL extension. This alternative signature shall be created by the issuer using its alternative private key, and it shall be verified using the alternative public key of the issuer.

       altSignatureValue EXTENSION ::= {
           SYNTAX AltSignatureValue
           IDENTIFIED BY id-ce-altSignatureValue }

       AltSignatureValue ::= BIT STRING

  This extension can only be created by a signer holding a multiple cryptographic algorithms public-key certificate. When creating the alternative digital signature on an issued public-key certificate or CRL, the signer shall use its alternative private key.
  The procedures for creating and validating alternative digital signatures are specified in:
  - clause 7.2.2 for public-key certificates;
  - clause 7.10.3 for CRLs: and
  - clause 11.4 for AVLs.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `AltSignatureValue(byte[] signature)` Base constructor.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static AltSignatureValue` | `fromExtensions(Extensions extensions)`
    `static AltSignatureValue` | `getInstance(ASN1TaggedObject obj, boolean explicit)`
    `static AltSignatureValue` | `getInstance(java.lang.Object obj)`
    `ASN1BitString` | `getSignature()` Return the alternate signature to verify the certificate.
    `ASN1Primitive` | `toASN1Primitive()` Method providing a primitive representation of this object suitable for encoding.

    - ### Methods inherited from class org.bouncycastle.asn1.ASN1Object

      `encodeTo, encodeTo, equals, getEncoded, getEncoded, hasEncodedTagValue, hashCode`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### AltSignatureValue

          public AltSignatureValue(byte[] signature)

      Base constructor.
      Parameters:
        `signature` - a signature value, based on the enclosing certificate.

  - ### Method Detail

    - #### getInstance

          public static AltSignatureValue getInstance(ASN1TaggedObject obj,
                                                      boolean explicit)

    - #### getInstance

          public static AltSignatureValue getInstance(java.lang.Object obj)

    - #### fromExtensions

          public static AltSignatureValue fromExtensions(Extensions extensions)

    - #### getSignature

          public ASN1BitString getSignature()

      Return the alternate signature to verify the certificate.
      Returns:
        certificate's alternate signature.

    - #### toASN1Primitive

          public ASN1Primitive toASN1Primitive()

      Description copied from class: `ASN1Object`
      Method providing a primitive representation of this object suitable for encoding.
      Specified by:
        `toASN1Primitive` in interface `ASN1Encodable`
      Specified by:
        `toASN1Primitive` in class `ASN1Object`
      Returns:
        a primitive representation of this object.