Skip to content

Engineering

Crypto-agility is an architecture property, not a product feature

You can't buy agility as a SKU. You design for it, and here's the pattern: algorithm-by-config.

Dhiti Labs· Research· 2 May 2026· 8 min read

The test

Ask one question of any service: can you change its signature algorithm without recompiling it? If the answer is no, you don't have crypto-agility, you have a rewrite waiting to happen.

# not agile, the algorithm is the code
signature = rsa_sign(private_key, message)

# agile, the algorithm is configuration
signer = crypto.signer(policy="pq-hybrid")   # ml-dsa + ecdsa today, ml-dsa alone tomorrow
signature = signer.sign(message)

Dhiti Forge is the second pattern as a library: certified upstream PQC behind a stable interface, algorithm chosen by config. When the standard changes, you change a value, not a codebase.

Get started

See how Comply maps your framework.