Problem
FROST signing requires a nonce commitment round before the signing round. For time-sensitive transactions, this adds latency. Pre-exchanging nonces during idle time enables single-round signing when needed.
Solution
Implement Bifrost-style nonce pool management in keep-frost-net.
Reference
- bifrost (
src/class/pool.ts): maintains separate incoming/outgoing nonce pools, auto-replenishment via events when pools fall below threshold, marks nonces as spent immediately
Implementation
- Outgoing pool: generate nonce commitments for each peer, send during idle
- Incoming pool: store received commitments, track consumption
- Auto-replenish when pool drops below configurable threshold
- Integrate with existing signing flow — use pooled nonce if available, fall back to interactive round
Problem
FROST signing requires a nonce commitment round before the signing round. For time-sensitive transactions, this adds latency. Pre-exchanging nonces during idle time enables single-round signing when needed.
Solution
Implement Bifrost-style nonce pool management in keep-frost-net.
Reference
src/class/pool.ts): maintains separate incoming/outgoing nonce pools, auto-replenishment via events when pools fall below threshold, marks nonces as spent immediatelyImplementation