Record Class SigningExecutionEvidence
- Record Components:
namespace- signing namespacefingerprint- immutable semantic acceptance commitmentownerType- signing-owner principal typeownerId- signing-owner principal identitydetailCode- safe terminal detail classification, when presentoutcome- terminal outcome
Every issuance, status object, CA certificate, and CRL is produced by a signing operation, so this
evidence provides the key-usage audit dimension: which signing namespace and accepted-request fingerprint produced a
terminal outcome, under whose ownership, with which outcome classification. It is recorded when a signing
record reaches a terminal state (SIGNED, FAILED, CANCELLED, EXPIRED) and
is derivable entirely from that terminal record. Because signing records are retired after downstream
publication, the evidence is appended in the append-ordered signing-evidence log so a bounded,
crash-consistent audit projector can project retained key-use evidence independently of record retirement.
Delivery is best-effort and opt-in: a missing append is recoverable only while the authoritative
workflow remains retained. A composite proof uses its distinct provider step ID as the feed marker
and shares the parent acceptance commitment; proof success is recorded even if later verification
or certificate publication fails.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumTerminal signing outcomes. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final AttributeIdEvidence attribute vocabulary.static final AttributeIdEvidence attribute vocabulary.static final AttributeIdEvidence attribute vocabulary.static final AttributeIdEvidence attribute vocabulary.static final AttributeIdEvidence attribute vocabulary.static final AttributeIdEvidence attribute vocabulary. -
Constructor Summary
ConstructorsConstructorDescriptionSigningExecutionEvidence(String namespace, String fingerprint, String ownerType, String ownerId, Optional<String> detailCode, SigningExecutionEvidence.Outcome outcome) Validates the closed evidence model. -
Method Summary
Modifier and TypeMethodDescriptionReturns an immutable set containing only the closed evidence vocabulary.static Optional<SigningExecutionEvidence> decode(byte[] payload) Decodes a feed payload containing UTF-8 canonical unpadded base64url attributes.static Optional<SigningExecutionEvidence> decode(AttributeSet attributes) Strictly decodes the closed version-one evidence vocabulary.Returns the value of thedetailCoderecord component.final booleanIndicates whether some other object is "equal to" this one.Returns the value of thefingerprintrecord component.final inthashCode()Returns a hash code value for this object.Returns the value of thenamespacerecord component.outcome()Returns the value of theoutcomerecord component.ownerId()Returns the value of theownerIdrecord component.Returns the value of theownerTyperecord component.static SigningExecutionEvidenceterminal(String namespace, String fingerprint, String ownerType, String ownerId, Optional<String> detailCode, SigningExecutionEvidence.Outcome outcome) Creates authoritative terminal signing evidence.final StringtoString()Returns a string representation of this record class.
-
Field Details
-
NAMESPACE
Evidence attribute vocabulary. -
FINGERPRINT
Evidence attribute vocabulary. -
OWNER_TYPE
Evidence attribute vocabulary. -
OWNER_ID
Evidence attribute vocabulary. -
DETAIL_CODE
Evidence attribute vocabulary. -
OUTCOME
Evidence attribute vocabulary.
-
-
Constructor Details
-
SigningExecutionEvidence
-
-
Method Details
-
terminal
public static SigningExecutionEvidence terminal(String namespace, String fingerprint, String ownerType, String ownerId, Optional<String> detailCode, SigningExecutionEvidence.Outcome outcome) Creates authoritative terminal signing evidence.- Parameters:
namespace- signing namespacefingerprint- immutable semantic acceptance commitmentownerType- signing-owner principal typeownerId- signing-owner principal identifierdetailCode- optional safe terminal detail classificationoutcome- terminal outcome- Returns:
- validated terminal evidence
-
attributes
Returns an immutable set containing only the closed evidence vocabulary.- Returns:
- canonical evidence attributes
-
decode
Strictly decodes the closed version-one evidence vocabulary.- Parameters:
attributes- attributes to inspect- Returns:
- empty only when no version-one evidence attribute is present
- Throws:
IllegalArgumentException- if evidence is unknown, partial, duplicated, or mistyped
-
decode
Decodes a feed payload containing UTF-8 canonical unpadded base64url attributes. The encoded byte count is bounded before allocation; the existing attribute decoder enforces canonical framing and its decoded-byte and entry limits.- Parameters:
payload- exact evidence-feed bytes, borrowed for this call- Returns:
- empty only when this evidence family's vocabulary is absent
- Throws:
IllegalArgumentException- if framing or this family's vocabulary is invalid
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
namespace
-
fingerprint
Returns the value of thefingerprintrecord component.- Returns:
- the value of the
fingerprintrecord component
-
ownerType
-
ownerId
-
detailCode
Returns the value of thedetailCoderecord component.- Returns:
- the value of the
detailCoderecord component
-
outcome
-