Cost notation
n: computing-party countt: corruption thresholdB: values processed in a batchd: polynomial degreeL: broadcast payload bytesk: AVID data-shard counth: hash widthq: shares used in an interpolation attempt
HoneyBadgerMPC preprocessing
These stages produce the material consumed online. They are throughput work rather than application-circuit depth when material is generated ahead of time. If material is generated on demand, the same stages move onto the application’s critical path.
Preprocessing can wait indefinitely for a required party. Capacity planning should therefore include a reserve sized for the largest expected burst and a policy for what happens when replenishment stops.
HoneyBadgerMPC online
Multiplication depth usually matters more to latency than multiplication count. Independent products can share an interactive layer and consume more preprocessing without adding the same amount of sequential latency. Comparisons, bit decomposition, and nonlinear operations often expand into several multiplication and bit-oriented steps.
Batch reconstruction packs
d+1 values and uses two causal exchange stages. Batched wire sessions reduce message overhead, but transmitted bytes and polynomial work still grow with the number of values. Robust error correction may retry decoding as additional shares arrive.[1][6][7]
AVSS costs
AVSS has higher per-value cryptographic cost than uncommitted field arithmetic because share operations also update or verify curve points. Use it where public commitments or curve compatibility are part of the required output boundary, not as a default replacement for ordinary private application arithmetic.
AVSS multiplication additionally assumes correct triples. The supplied product-resharing step does not prove the multiplication relation against an active dealer, so its operation count should not be interpreted as the cost of a complete malicious-secure triple protocol.
Shared distributed primitives
The standalone binary-agreement and common-subset components are not part of the default preprocessing path. Do not add their costs to every arithmetic operation.
Capacity-planning checklist
- Measure a run with a prefilled preprocessing pool.
- Measure a run that generates the same material on demand.
- Record
n,t, field or curve, batch sizes, secret multiplication count and depth, and input widths. - Record the reliable-broadcast variant, message bytes, retries, and network conditions.
- Test pool exhaustion and delayed-party behavior, not only the all-honest fast path.
- For AVSS, include group verification and commitment serialization in the budget.
- For fixed point, include truncation and random-bit generation rather than counting only the underlying multiplication.