Post by cass on Mar 13, 2012 2:27:53 GMT
Cass > I was thinking about that, and I thought however that you could, not too uneasily, take a string of crypted letters, convert them into numbers, and use those numbers with a table to *generate* seemingly normal, meaningful language (which granted wouldn't make much sense, but would still look like English, as opposed to random letters).
Well a one time pad just works on a big wheel. Like if I take the alphabet on a strip of paper and wrap it into a circle and just start counting round, then A would be 1 B would be 2 - and so on up to ... 25(?) letters in this alphabet I think.
So if I want to encrypt the message
Chocolate is tasty
I can pair it with the random text
dukrlotwn ie qefge
It works like a clock so if you add 4 to 24 you don't get to 28, you get to 3.
Okay so I've got a d, as the first letter of my random text and I've got a c as my message - so I count around 4 letters from c giving me a g... and so on until I've encrypted the thing.
It's really a modified version of the Beale Cipher - which used a common word or part of a phrase as its key. Which is in turn a more complex form of the Caesar cipher - which just said move X number of letters from where you are.
Anyway, the point of all this is that it doesn't matter what number you're counting up to, as long as the other person has a matching wheel. If you had a common dictionary, you could just assign each word of your message a number and use those numbers on your circle, instead of the alphabet.
Which is probably a lot easier - at least given that they have computers and can just use a dictionary on there to do the decrypting - than having a table that they put on top of a layer of cryptography working on a smaller alphabet.
I was more concerned that it wouldn't form a coherent narrative than that it wouldn't be English.
Given that you can work your way around to anything from anything, if you select the right number of turns on your circle, you could turn your encrypted text into a reasonably coherent narrative. But to do that you'd have to know ahead of time what message you wanted to encrypt to know how many spaces your later going to want to tell him to move each word around on his wheel. And if you know that you may as well just have a codeword you can bury in a more normal conversation that just stands for the message you want to send them.
...
This is also, in a round about way, why you mustn't reuse a one time pad: If you select the right key, you can turn any message of a given length into any other message of a given length. But if you have two (or more) messages using the same key, then only one of the messages will be meaningful if you use the wrong key. Which just turns it into a computationally intensive, but otherwise theoretically uninteresting, task of searching through the keys until you find the one that makes both messages make sense at the same time, (this is obviously easier the more text you have to compare.)