Contracts
3 + NFT
Quorum
2 — N
Tooling
Hardhat
Pattern
Factory
Overview
A from-scratch multi-sig wallet that enforces multi-party approval before any transaction executes — the backbone of secure treasury management.
A factory contract deploys independent wallet instances and indexes them, while a two-phase signer-replacement flow guards against instant malicious key rotation.
Key highlights
- Configurable quorum (minimum 2, bounded by signatory count) with O(1) signer validity lookups.
- Two-phase, time-locked signer replacement that blocks instant key-rotation attacks.
- hasSigned mapping that prevents double-signing per transaction.
- Factory pattern for deploying and indexing multiple independent wallet instances.
What it does
- Descriptive custom errors (e.g. EnterAtLeastTwoQuorum) for cheaper, clearer reverts
- Role-based signer authorization via OpenZeppelin AccessControl
- Transaction struct tracking recipient, amount, signature count and execution status
- Maximum signer cap to prevent unbounded arrays
Tech stack
Solidity ^0.8.28Hardhat (hardhat-toolbox)OpenZeppelin AccessControlTypeScriptHardhat Ignition