18.5.1. "What about neural nets and AI in crypto?" - Of limited use, at least in breaking modern ciphers. Marvin Minsky once said that if you don't understand how to solve a problem, adding randomness usually doesn't help. - The shape of the solution space is very spiky, very poorly- suited to hill-climbing or divide-and-conquer methods + Neural nets are not likely to do well with modern ciphers (e.g., RSA, IDEA, DES, etc.), mainly because of the shape of the solution space. Instead of the "rolling hills and valleys" that neural nets (and related methods, such as genetic algorithms, simulated annealing, etc.) do well in, the solution space for modern ciphers offers very little in the way of "learning" opportunities: you either have the solution (the key), or you don't. Think of a needle standing up from a flat plain...a NN or any other hill-climber could wander for years and never find it. Well-designed modern ciphers like RSA and IDEA appear to admit no analysis based on "nonrandom" properties. If anybody has found shortcuts to factoring the modulus in RSA, for example, they haven't let on. I suspect there are uses in peripheral aspects, such as guessing passwords (when people have not picked high- entropy passwords, but have instead used familiar names). Or in traffic analysis. Those who munch on lots of traffic may well be using neural nets, custom signal processing, etc. to "prepare" the captured traffic for further analysis. A safe bet, in fact. But the move in modern cryptology is definitely away from using anything with "structure" that can be learned. Put another way, neural nets and such work well in structured environments, where there's something to _learn), but not in the high-entropy, seemingly random world of encrypted data. + AI may be useful in other areas - protocol generation - SIGINT 18.5.2. Evolutionary or Genetic Programming - a la Holland, Koza - RNGs
Next Page: 18.6 Miscellaneous Advanced Crypto Ideas
Previous Page: 18.4 Chaotic Cryptography
By Tim May, see README
HTML by Jonathan Rochkind