Was this page helpful?
Normal Operation
State Notation | Signer State |
---|---|
H[] C[] |
no holder commitment, no counterparty commitment |
H[0] C[0] |
holder initial commitment, counterparty initial commitment |
H[n] C[m] |
holder commitment n, counterparty commitment m |
H[n,n+1] C[m] |
holder commitment n and n+1, counterparty commitment m |
H[n]* |
holder base commitment, splice, and RBF candidates for n |
H[n,n+1]* |
holder base commitment, splice, and RBF candidates for n and n+1 |
sequenceDiagram
autonumber
participant Signer-A
participant Node-A
participant Node-B
participant Signer-B
par
%% Node-A initiated, nantucket red
rect rgb(254, 126, 136)
activate Node-A
Note over Node-A: Update Node B's Commitment
Note over Signer-A: H[n] C[m]
Node-A->>+Signer-A: SignCounterpartyCommitment(m+1)
Signer-A-->>-Node-A:
Note over Signer-A: H[n] C[m,m+1]
Node-A->>+Node-B: commitment_signed(m+1)
Note over Signer-B: H[m] C[n]
Node-B->>+Signer-B: ValidateHolderCommitment(m+1)
Signer-B-->>-Node-B:
Note over Signer-B: H[m,m+1] C[n]
Note over Node-B: persist H[m+1]
Node-B->>+Signer-B: RevokeHolderCommitment(m)
Signer-B-->>-Node-B:
Note over Signer-B: H[m+1] C[n]
Node-B->>Node-A: revoke_and_ack(m)
deactivate Node-B
Node-A->>+Signer-A: ValidateCounterpartyRevocation(m)
Signer-A-->>-Node-A:
Note over Signer-A: H[n] C[m+1]
deactivate Node-A
end
and
%% Node-B initiated, soft teal
rect rgb(143, 188, 187)
activate Node-B
Note over Node-B: Update Node A's Commitment
Note over Signer-B: H[m] C[n]
Node-B->>+Signer-B: SignCounterpartyCommitment(n+1)
Signer-B-->>-Node-B:
Note over Signer-B: H[m] C[n,n+1]
Node-B->>+Node-A: commitment_signed(n+1)
Note over Signer-A: H[n] C[m]
Node-A->>+Signer-A: ValidateHolderCommitment(n+1)
Signer-A-->>-Node-A:
Note over Signer-A: H[n,n+1] C[m]
Note over Node-A: persist H[n+1]
Node-A->>+Signer-A: RevokeHolderCommitment(n)
Signer-A-->>-Node-A:
Note over Signer-A: H[n+1] C[m]
Node-A->>Node-B: revoke_and_ack(n)
deactivate Node-A
Node-B->>+Signer-B: ValidateCounterpartyRevocation(n)
Signer-B-->>-Node-B:
Note over Signer-B: H[m] C[n+1]
deactivate Node-B
end
end
Resources
Community
© 2025 VLS Developers