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

org.bouncycastle.asn1.x509

## Class TBSCertificateStructure

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

- All Implemented Interfaces:
    ASN1Encodable, PKCSObjectIdentifiers, X509ObjectIdentifiers, Encodable

  Deprecated.
  use TBSCertificate

      public class TBSCertificateStructure
      extends ASN1Object
      implements X509ObjectIdentifiers, PKCSObjectIdentifiers

  The TBSCertificate object.

       TBSCertificate ::= SEQUENCE {
            version          [ 0 ]  Version DEFAULT v1(0),
            serialNumber            CertificateSerialNumber,
            signature               AlgorithmIdentifier,
            issuer                  Name,
            validity                Validity,
            subject                 Name,
            subjectPublicKeyInfo    SubjectPublicKeyInfo,
            issuerUniqueID    [ 1 ] IMPLICIT UniqueIdentifier OPTIONAL,
            subjectUniqueID   [ 2 ] IMPLICIT UniqueIdentifier OPTIONAL,
            extensions        [ 3 ] Extensions OPTIONAL
            }

  Note: issuerUniqueID and subjectUniqueID are both deprecated by the IETF. This class will parse them, but you really shouldn't be creating new ones.

- - ### Field Summary

    - ### Fields inherited from interface org.bouncycastle.asn1.x509.X509ObjectIdentifiers

      `attributeType, commonName, countryName, crlAccessMethod, id_ad, id_ad_caIssuers, id_ad_ocsp, id_alg_noSignature, id_alg_unsigned, id_at_name, id_at_organizationIdentifier, id_at_telephoneNumber, id_ce, id_ce_ct_embeddedSCTList, id_ce_ct_precertPoison, id_ce_ct_transparencyInformation, id_ct, id_ct_precertificate, id_ea_rsa, id_ecdsa_with_shake128, id_ecdsa_with_shake256, id_kp_ct_precertSigning, id_ocsp_ct_sctList, id_PasswordBasedMac, id_pda, id_pe, id_pe_relatedCert, id_pkix, id_rsassa_pss_shake128, id_rsassa_pss_shake256, id_SHA1, localityName, ocspAccessMethod, organization, organizationalUnitName, pkix_algorithms, ripemd160, ripemd160WithRSAEncryption, stateOrProvinceName`

    - ### Fields inherited from interface org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers

      `bagtypes, canNotDecryptAny, certBag, certTypes, crlBag, crlTypes, data, des_EDE3_CBC, dhKeyAgreement, dhSinglePass_stdDH_hkdf_sha256_scheme, dhSinglePass_stdDH_hkdf_sha384_scheme, dhSinglePass_stdDH_hkdf_sha512_scheme, digestAlgorithm, digestedData, encryptedData, encryptionAlgorithm, envelopedData, id_aa, id_aa_asymmDecryptKeyID, id_aa_cmsAlgorithmProtect, id_aa_commitmentType, id_aa_communityIdentifiers, id_aa_contentHint, id_aa_contentIdentifier, id_aa_contentReference, id_aa_decryptKeyID, id_aa_encrypKeyPref, id_aa_estIdentityLinking, id_aa_ets_archiveTimestamp, id_aa_ets_certCRLTimestamp, id_aa_ets_certificateRefs, id_aa_ets_certValues, id_aa_ets_commitmentType, id_aa_ets_contentTimestamp, id_aa_ets_escTimeStamp, id_aa_ets_otherSigCert, id_aa_ets_revocationRefs, id_aa_ets_revocationValues, id_aa_ets_signerAttr, id_aa_ets_signerLocation, id_aa_ets_sigPolicyId, id_aa_implCompressAlgs, id_aa_implCryptoAlgs, id_aa_msgSigDigest, id_aa_otherSigCert, id_aa_otpChallenge, id_aa_receiptRequest, id_aa_relatedCertRequest, id_aa_revocationChallenge, id_aa_signatureTimeStampToken, id_aa_signerLocation, id_aa_signingCertificate, id_aa_signingCertificateV2, id_aa_sigPolicyId, id_alg, id_alg_AEADChaCha20Poly1305, id_alg_CMS3DESwrap, id_alg_CMSRC2wrap, id_alg_ESDH, id_alg_hkdf_with_sha256, id_alg_hkdf_with_sha384, id_alg_hkdf_with_sha512, id_alg_hss_lms_hashsig, id_alg_PWRI_KEK, id_alg_SSDH, id_alg_zlibCompress, id_ct, id_ct_authData, id_ct_authEnvelopedData, id_ct_compressedData, id_ct_timestampedData, id_ct_TSTInfo, id_cti, id_cti_ets_proofOfApproval, id_cti_ets_proofOfCreation, id_cti_ets_proofOfDelivery, id_cti_ets_proofOfOrigin, id_cti_ets_proofOfReceipt, id_cti_ets_proofOfSender, id_hmacWithSHA1, id_hmacWithSHA224, id_hmacWithSHA256, id_hmacWithSHA384, id_hmacWithSHA512, id_hmacWithSHA512_224, id_hmacWithSHA512_256, id_mgf1, id_mod_CMS_AEADChaCha20Poly1305, id_mod_cms_seed, id_mod_mts_hashsig_2013, id_PBES2, id_PBKDF2, id_PBMAC1, id_pSpecified, id_rsa_KEM, id_RSAES_OAEP, id_RSASSA_PSS, id_smime, id_spq, id_spq_ets_unotice, id_spq_ets_uri, id_spq_oid, keyBag, md2, md2WithRSAEncryption, md4, md4WithRSAEncryption, md5, md5WithRSAEncryption, pbeWithMD2AndDES_CBC, pbeWithMD2AndRC2_CBC, pbeWithMD5AndDES_CBC, pbeWithMD5AndRC2_CBC, pbeWithSHA1AndDES_CBC, pbeWithSHA1AndRC2_CBC, pbeWithSHAAnd128BitRC2_CBC, pbeWithSHAAnd128BitRC4, pbeWithSHAAnd2_KeyTripleDES_CBC, pbeWithSHAAnd3_KeyTripleDES_CBC, pbewithSHAAnd40BitRC2_CBC, pbeWithSHAAnd40BitRC2_CBC, pbeWithSHAAnd40BitRC4, pkcs_1, pkcs_12, pkcs_12PbeIds, pkcs_3, pkcs_5, pkcs_7, pkcs_9, pkcs_9_at_binarySigningTime, pkcs_9_at_challengePassword, pkcs_9_at_contentType, pkcs_9_at_counterSignature, pkcs_9_at_emailAddress, pkcs_9_at_extendedCertificateAttributes, pkcs_9_at_extensionRequest, pkcs_9_at_friendlyName, pkcs_9_at_localKeyId, pkcs_9_at_messageDigest, pkcs_9_at_signingDescription, pkcs_9_at_signingTime, pkcs_9_at_smimeCapabilities, pkcs_9_at_unstructuredAddress, pkcs_9_at_unstructuredName, pkcs8ShroudedKeyBag, preferSignedData, RC2_CBC, rc4, rsaEncryption, safeContentsBag, sdsiCertificate, secretBag, sha1WithRSAEncryption, sha224WithRSAEncryption, sha256WithRSAEncryption, sha384WithRSAEncryption, sha512_224WithRSAEncryption, sha512_256WithRSAEncryption, sha512WithRSAEncryption, signedAndEnvelopedData, signedData, smime_alg, sMIMECapabilitiesVersions, srsaOAEPEncryptionSET, x509Certificate, x509certType, x509Crl`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TBSCertificateStructure(ASN1Sequence seq)` Deprecated.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `Time` | `getEndDate()` Deprecated.
    `X509Extensions` | `getExtensions()` Deprecated.
    `static TBSCertificateStructure` | `getInstance(ASN1TaggedObject obj, boolean explicit)` Deprecated.
    `static TBSCertificateStructure` | `getInstance(java.lang.Object obj)` Deprecated.
    `X500Name` | `getIssuer()` Deprecated.
    `ASN1BitString` | `getIssuerUniqueId()` Deprecated.
    `ASN1Integer` | `getSerialNumber()` Deprecated.
    `AlgorithmIdentifier` | `getSignature()` Deprecated.
    `Time` | `getStartDate()` Deprecated.
    `X500Name` | `getSubject()` Deprecated.
    `SubjectPublicKeyInfo` | `getSubjectPublicKeyInfo()` Deprecated.
    `ASN1BitString` | `getSubjectUniqueId()` Deprecated.
    `Validity` | `getValidity()` Deprecated.
    `int` | `getVersion()` Deprecated.
    `ASN1Integer` | `getVersionNumber()` Deprecated.
    `ASN1Primitive` | `toASN1Primitive()` Deprecated. 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

    - #### TBSCertificateStructure

          public TBSCertificateStructure(ASN1Sequence seq)

      Deprecated.

  - ### Method Detail

    - #### getInstance

          public static TBSCertificateStructure getInstance(ASN1TaggedObject obj,
                                                            boolean explicit)

      Deprecated.

    - #### getInstance

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

      Deprecated.

    - #### getVersion

          public int getVersion()

      Deprecated.

    - #### getVersionNumber

          public ASN1Integer getVersionNumber()

      Deprecated.

    - #### getSerialNumber

          public ASN1Integer getSerialNumber()

      Deprecated.

    - #### getSignature

          public AlgorithmIdentifier getSignature()

      Deprecated.

    - #### getIssuer

          public X500Name getIssuer()

      Deprecated.

    - #### getValidity

          public Validity getValidity()

      Deprecated.

    - #### getStartDate

          public Time getStartDate()

      Deprecated.

    - #### getEndDate

          public Time getEndDate()

      Deprecated.

    - #### getSubject

          public X500Name getSubject()

      Deprecated.

    - #### getSubjectPublicKeyInfo

          public SubjectPublicKeyInfo getSubjectPublicKeyInfo()

      Deprecated.

    - #### getIssuerUniqueId

          public ASN1BitString getIssuerUniqueId()

      Deprecated.

    - #### getSubjectUniqueId

          public ASN1BitString getSubjectUniqueId()

      Deprecated.

    - #### getExtensions

          public X509Extensions getExtensions()

      Deprecated.

    - #### toASN1Primitive

          public ASN1Primitive toASN1Primitive()

      Deprecated.
      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.