CharterAgreementProtocol.Acceptance (Charter Agreement Protocol v0.2.1)

Copy Markdown View Source

CAP never authorizes.

Closed Acceptance codec, countersignature verifier, and equivocation predicate.

Verification proves one party signed exact revision coordinates with a key active in the pinned Party Descriptor. Descriptor freshness and legal effect remain host policy; the view-relative descriptor position is retained.

Summary

Functions

Return an Acceptance's domain-separated content digest.

Return self-contained same-signer equivocation evidence, never a winner.

Verify one attached countersignature against exact caller-supplied artifacts.

Types

t()

@type t() :: %CharterAgreementProtocol.Acceptance{
  accepted_at: CharterAgreementProtocol.Timestamp.t(),
  charter_id: binary(),
  envelope: CharterAgreementProtocol.CompactJws.t(),
  party_descriptor_digest: binary(),
  party_role: binary(),
  prev_revision_digest: nil | binary(),
  protocol_revision: 1 | 2,
  revision_digest: binary(),
  revision_number: pos_integer()
}

Functions

digest(acceptance)

@spec digest(t()) :: binary()

Return an Acceptance's domain-separated content digest.

equivocation(left, right)

Return self-contained same-signer equivocation evidence, never a winner.

verify(compact, supplied_revision, supplied_chain, limits)

Verify one attached countersignature against exact caller-supplied artifacts.