[cryptography] ciphers with keys modifying control flow?
smb at cs.columbia.edu
Mon Sep 27 22:07:37 EDT 2010
On Sep 27, 2010, at 9:11 28PM, Jon Callas wrote:
> On Sep 26, 2010, at 6:14 PM, Steven Bellovin wrote:
>> Does anyone know of any ciphers where bits of keys modify the control path, rather than just data operations? Yes, I know that that's a slippery concept, since ultimately things like addition and multiplication can be implemented with loops in the hardware or firmware. I also suspect that it's potentially dangerous, since it might create very hard-to-spot classes of weak keys. The closest I can think of is SIGABA, where some of the keying controlled the stepping of the other rotors.
> If you remember (or even read) Dan Brown's mid-late-'90s novel, "Digital Fortress," in which the MacGuffin was an unbreakable cipher, I was amused when I read it that Brown blurred the difference between code and data. The keys in Brown's cipher were both data and self-modifying instructions in some virtual machine. It didn't make sense in the way that software actually works, but this made the cipher some weird cross between crypto and a polymorphic virus. It was plain in the description that he'd gotten a little knowledge about each and combined them to create a dangerous thing.
> There have also been LFSR-type things that used some bits to control stepping of other things, a la SIGABA, but I think that Digital Fortress is the closest thing to what you want.
Someone else pointed out BassOMatic, in PGP 1.0, which is exactly what I was looking for.
--Steve Bellovin, http://www.cs.columbia.edu/~smb
More information about the cryptography