3.5 Crypto-agility and information half-life
Because fundamental advances in cryptanalysis cannot be reliably predicted, especially for prolonged periods of time, it is desirable to design security systems in such a way that the transition to longer keys (or stronger cryptographic mechanisms) is possible and, ideally, easy to do. This concept is called crypto-agility. It is an important feature of a secure system: when, for example, NIST looked for a new standard block cipher algorithm (the Advanced Encryption Standard, or AES; see ChapterĀ 14, Block Ciphers and Their Modes of Operation) in a competition held between 1997 and 2000, all candidate algorithms had to support varying key lengths of 128, 192, and 256 bits.
Conceptually, crypto-agility is to information security what software updates are to software engineering. A well-designed security system takes into account that at some future point in time, it will face some previously unknown attacks. Because the specific attacks...