canton-network-docs
Multi
Multi-Party Workflows - Canton Network Docs
Skip to main content
The Canton version:
Multi-party workflows are where Canton’s architecture shines compared to Ethereum. This page covers the key patterns and how to think about them differently.Documentation Index
Fetch the complete documentation index at: https://docs.canton.network/llms.txt
Use this file to discover all available pages before exploring further.
The Core Difference
On Ethereum, multi-party agreement is a pattern you implement. On Canton, it’s a protocol guarantee.| Aspect | Ethereum | Canton |
|---|---|---|
| Multi-sig creation | Deploy contract, collect signatures over time | Collect signatures over time or submit all at once |
| Authorization | Runtime mapping checks | Protocol-level enforcement |
| Atomicity | Manual state machine | Built-in all-or-nothing |
| Visibility | All parties see everything | Each party sees only their view |
The Propose-Accept Pattern
Since Canton requires all signatories to authorize contract creation, you can’t create a multi-party contract unilaterally. The standard pattern is propose-accept:In Daml
Compare to Ethereum
- Authorization is enforced by the protocol, not by application-level checks
- State transitions are atomic, so partial or inconsistent states don’t arise
- Visibility is automatically scoped to the involved parties
Delegation Patterns
Canton supports sophisticated delegation where one party grants another the ability to act on their behalf.Controller Delegation
Delegation via Separate Contract
Multi-Step Workflows
For workflows requiring multiple parties in sequence:Workflow State Machine
Atomic Multi-Contract Operations
Canton can atomically update multiple contracts in a single transaction:Why This Matters
On Ethereum, atomic swaps require:- Escrow contracts
- Time-locked phases
- Failure recovery logic
- Careful reentrancy protection
Privacy in Multi-Party Workflows
Each party only sees their relevant portion:Common Workflow Patterns
| Pattern | Use Case | Key Feature |
|---|---|---|
| Propose-Accept | Two-party agreements | Simple, clear consent |
| Propose-Accept-Settle | Three-party workflows | Sequential authorization |
| Delegation | Acting on behalf | Controlled authority transfer |
| Escrow | Conditional execution | Atomic swap guarantee |
| Voting | Group decisions | Threshold-based approval |
Voting Example
Related Topics
Migration Checklist
Practical checklist for migrating from Ethereum.
Module 3: Daml
Start writing Daml smart contracts.