Juvix imports
module arch.node.engines.commitment_messages;
import prelude open;
import arch.node.types.identities open;
Commitment Messages¶
Message interface¶
type CommitmentMsg :=
| MsgCommitmentRequest RequestCommitment
| MsgCommitmentReply ReplyCommitment;
Message sequence diagrams¶
Request sequence¶
sequenceDiagram
participant C as Client
participant CE as Commitment Engine
C->>CE: RequestCommitment(data)
Note over CE: Generate commitment using internal signer
CE-->>C: ReplyCommitment(commitment)
Message types¶
RequestCommitment
¶
type RequestCommitment :=
mkRequestCommitment@{
data : Signable;
};
A RequestCommitment
instructs a commitment engine instance to produce a
commitment (signature) over the provided data.
Arguments
data
:- The data to sign.
ReplyCommitment
¶
type ReplyCommitment :=
mkReplyCommitment@{
commitment : Commitment;
err : Option String;
};
A ReplyCommitment
contains the commitment (signature) generated by the
commitment engine instance in response to a RequestCommitment
.
Arguments
commitment
:- The generated commitment (signature).
err
:- An error message if commitment generation failed.
CommitmentMsg
¶
type CommitmentMsg :=
| MsgCommitmentRequest RequestCommitment
| MsgCommitmentReply ReplyCommitment;