Skip to content
hashkey.bond

Archivecryptography

Symmetric vs Asymmetric Crypto: When to Use Which

One key to share, two keys to manage. A decision guide with the protocols that mix both.

Published
Reading time
2 min read
Updated

Cryptography in production is almost never "pick a cipher" — it is "pick a key distribution problem." The two families solve it in opposite ways.

Symmetric: AES, ChaCha20

One secret key does both encryption and decryption. Encryption is fast enough to treat as free for bulk data. The entire difficulty lives outside the cipher: getting the same key to both parties without anyone else seeing it, and rotating it when it leaks or expires.

Use symmetric when you already share a secret channel or the secret is derived rather than transmitted — disk encryption, session data, anything after a handshake.

Asymmetric: RSA, Ed25519, X25519

Key generation produces a pair. The public half can be published anywhere. This dissolves the distribution problem but replaces it with two others:

  • Trust. A published key is only as trustworthy as the channel it arrived on. Certificate authorities, pinning, and TOFU workflows all exist to answer "is this the right public key?"
  • Cost. Asymmetric operations are orders of magnitude slower, and classical RSA key sizes incite real allocations heavy on constrained devices.

Use asymmetric to establish trust: signatures to authenticate a peer, key exchange to agree on a symmetric session, certificates to bind identity to a key.

The real-world protocol always mixes them

TLS is the canonical pattern — and 25 years of implementations have refined it into a checklist worth memorizing:

  1. Authentication (asymmetric: server proves possession of its private key).
  2. Key agreement (asymmetric math, but produces a symmetric secret).
  3. Bulk encryption (symmetric, keyed from step 2).
  4. Key rotation (session keys are stripped from every record going forward).

When you design your own service, start from the same shape. Sign at the identity layer, exchange once, encrypt everything else symmetrically — and never hand-roll any of the four steps yourself, in either direction.