Question
In a peer-to-peer network with symmetric keys only, how does the key count grow with the number of users n, and what is the operational problem?
Answer
Each pair needs its own shared key, so the total is n·(n-1)/2 — quadratic in n. Worse, every new user has to securely exchange a key with every existing user before they can talk.
Users n |
Symmetric keys needed |
|---|---|
| 4 | 6 |
| 10 | 45 |
| 100 | 4,950 |
| 1,000 | 499,500 |
Two compounding problems:
- Storage: every user must store
n−1keys. Add a million users and each device holds nearly a million keys. - Distribution: how do you securely deliver each fresh pairwise key in the first place? A secure channel doesn't exist yet — that's the whole point of crypto.
The fix — public-key (asymmetric) cryptography. Each user has one keypair (public + private). Anyone who wants to talk to Alice uses Alice's public key; only she can decrypt. Number of keys grows linearly with n, not quadratically — and the public key can be shared on a billboard.
Tip: Modern systems are hybrid: asymmetric crypto only bootstraps a per-session symmetric key, then the actual data is encrypted symmetrically (1000× faster). TLS, SSH, Signal all work this way.
Note saved — thanks!