Welcome Guest [Log In] [Register]
Viewing Single Post From: Arcanum (another new cipher)
jdege
Member Avatar
Elite member
[ *  *  *  *  * ]
Just after WWI, Gilbert Vernam invented the stream cipher. His machine was intended to attach to a mechanical teletype, that used the five-bit Baudot code, and was fed by a punched tape. His machine used a second punch tape, and added the two tapes together by a bit-wise XOR. In Vernam's original system, the key tape was a loop, resulting in a long, but repeating periodic key. It was this system for which Joseph Mauborgne proposed that if the key tape was totally random, and was longer than the message, and was never re-used, security would be ideal. Claude Shannon later proved that Mauborgne's system was theoretically unbreakable.

Of course, distributing a unique key tape for every message is impractical, so the other modification to Vernam's tape cipher was to use two tapes, one slightly longer than the other. If the first key was 1000 characters long and the second was 1001, the result would repeat only every 1,001,000 characters.

So this is an idea that dates back to 1919. Still, like most good crypto ideas, it's been reinvented by enthusiastic amateurs many times, over the years.

Charles Babbage once wrote:
Quote:
 
One of the most singular characteristics of the art of deciphering is the strong conviction possessed by every person, even moderately acquainted with it, that he is able to construct a cipher which nobody else can decipher. I have also observed that the cleverer the person, the more intimate is his conviction. In my earliest study of the subject I shared in this belief, and maintained it for many years.}


My own "unbreakable" cipher I invented in the seventh grade. I don't remember where I learned about the Vig, perhaps from Martin Gardner's book, but I knew about it, and decided that multiple keywords would be better. It seemed clear to me that using keywords with prime lengths would result in the longest periods. And I'd noticed that 3+5+7+11 = 26. So,

Take your keyword, and write it out horizontally, If it contains any repeated letters, keep only the first occurance, drop the rest. Under it, in lines of the same length, write the rest of the alphabet.
Code:
 
S E C R T K Y
A B D F G H I
J L M N O P Q
U V W X Z


Now, read off the letters vertically, in alphabetic order of the keyword:
Code:
 
C[space]D[space]M[space]W[space]E[space]B[space]L[space]V[space]K[space]H[space]P[space]R[space]F[space]N[space]X[space]S[space]A[space]J[space]U[space]T[space]G[space]O[space]Z[space]Y[space]I[space]Q


Now, split this into four keys, of lengths 3, 5, 7, and 11:
Code:
 

Key[space]1:[space]C[space]D[space]M
Key[space]2:[space]W[space]E[space]B[space]L[space]V
Key[space]3:[space]K[space]H[space]P[space]R[space]F[space]N[space]X
Key[space]4:[space]S[space]A[space]J[space]U[space]T[space]G[space]O[space]Z[space]Y[space]I[space]Q


Now, encrypt your message using the standard Vigenere method, once for each of the four keys:
Code:
 
  ATTACKATDAWN
+ CDMCDMCDMCDM
= CWFCFWCWPCZZ
+ WEBLVWEBLVWE
= YAGNASGXAXVD
+ KHPRFNXKHPRF
= IHVEFFDHHMMI
+ SAJUTGOZYIQS
= AHEYYLRGFUCA


The result repeats only after 3*5*7*11 = 1155 characters, and I thought that meant you'd need at least that much ciphertext in order to break it. Of course, I was wrong. There's an easy known-plaintext break if you know just 26 characters.
When cryptography is outlawed, bayl bhgynjf jvyy unir cevinpl.
Offline Profile Quote Post
Arcanum (another new cipher) · General