Class TransItem
java.lang.Object
org.bouncycastle.cert.ct.TransItem
One TLS-encoded item from an RFC 9162 (CT v2)
TransItemList. The structure is a 2-byte
VersionedTransType followed by the type-specific data
payload; this class retains the payload as opaque bytes and provides a
typed decoder for the only payload kind the certificate-side decoder
needs to interpret in practice:
getSignedCertificateTimestampDataV2(). Other payload kinds
(log entries, signed tree heads, consistency / inclusion proofs) are
still recoverable through getRawData(); layering structured
decoders on top is intentionally left to consumers that need them.
enum {
x509_entry_v2(0x0100), precert_entry_v2(0x0101),
x509_sct_v2(0x0102), precert_sct_v2(0x0103),
signed_tree_head_v2(0x0104),
consistency_proof_v2(0x0105),
inclusion_proof_v2(0x0106),
reserved_rfc6962(0x0000..0x00FF),
reserved_experimentaluse(0xE000..0xEFFF),
reserved_privateuse(0xF000..0xFFFF),
(0xFFFF)
} VersionedTransType;
struct {
VersionedTransType versioned_type;
select (versioned_type) {
case x509_sct_v2: SignedCertificateTimestampDataV2;
case precert_sct_v2: SignedCertificateTimestampDataV2;
...
} data;
} TransItem;
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbyte[]Serialize this TransItem to its TLS wire form.static TransItemgetInstance(byte[] encoded) Decode a TransItem from its serialized form (the bytes that appear as oneSerializedTransItementry inside aTransItemList).byte[]The rawdatapayload bytes — i.e. the SerializedTransItem minus the 2-byte versioned_type prefix.When this item is a v2 SCT (x509_sct_v2orprecert_sct_v2), return the decoded payload; otherwise returnnull.int
-
Field Details
-
x509_entry_v2
public static final int x509_entry_v2- See Also:
-
precert_entry_v2
public static final int precert_entry_v2- See Also:
-
x509_sct_v2
public static final int x509_sct_v2- See Also:
-
precert_sct_v2
public static final int precert_sct_v2- See Also:
-
signed_tree_head_v2
public static final int signed_tree_head_v2- See Also:
-
consistency_proof_v2
public static final int consistency_proof_v2- See Also:
-
inclusion_proof_v2
public static final int inclusion_proof_v2- See Also:
-
-
Constructor Details
-
TransItem
public TransItem(int versionedType, byte[] data)
-
-
Method Details
-
getInstance
Decode a TransItem from its serialized form (the bytes that appear as oneSerializedTransItementry inside aTransItemList). -
getVersionedType
public int getVersionedType() -
getRawData
public byte[] getRawData()The rawdatapayload bytes — i.e. the SerializedTransItem minus the 2-byte versioned_type prefix. The caller is responsible for parsing them according togetVersionedType(). -
getSignedCertificateTimestampDataV2
When this item is a v2 SCT (x509_sct_v2orprecert_sct_v2), return the decoded payload; otherwise returnnull. -
getEncoded
public byte[] getEncoded()Serialize this TransItem to its TLS wire form.
-