Skip to content
Juvix imports

module arch.node.engines.commitment_messages;

import prelude open;
import arch.node.types.identities open;

Commitment Messages

Message interface

type CommitmentMsg :=
| CommitRequest {data : Signable}
| CommitResponse {
commitment : Commitment;
err : Option String
};

CommitRequest message

CommitRequest

CommitRequest {
  data : Signable
}

A CommitRequest instructs a commitment engine instance to produce a commitment (signature) over the provided data.

  • data: The data to sign.

CommitResponse message

CommitResponse

CommitResponse {
  commitment : Commitment;
  err : Option String;
}

A CommitResponse contains the commitment (signature) generated by the commitment engine instance in response to a CommitRequest.

  • commitment: The generated commitment (signature).
  • err: An error message if commitment generation failed.

Message sequence diagrams

Commitment Generation Sequence

sequenceDiagram
    participant C as Client
    participant CE as Commitment Engine

    C->>CE: CommitRequest(data)
    Note over CE: Generate commitment using internal signer
    CE-->>C: CommitResponse(commitment)
Sequence diagram for commitment generation.

Engine Components

  • Commitment Engine Environment
  • Commitment Engine Dynamics