Imagine a protocol whose only algorithm is suddenly broken. Cryptographic agility lets clients and services switch among supported algorithms instead of becoming trapped by an inflexible design. section 16.2
Agility creates a tradeoff: supporting alternatives can ease migration when algorithms are deprecated, but excessive flexibility increases complexity and can enable downgrade attacks, as seen with TLS. section 16.2
Treat agility as a protocol-design decision:
- Provide clear, safe interfaces and test vectors for each supported algorithm. section 16.2
- Avoid letting negotiation complexity undermine security or preserve obsolete choices. section 16.2
- Check threat models and composability before combining primitives or building a mini-protocol. section 16.2
Figure 16.1 The Tamarin protocol prover is a free formal verification tool that you can use to model a cryptographic protocol and find attacks on it.
Model a cryptographic protocol and search for attacks with the Tamarin protocol prover. section 16.2
