Education Intro
to Cryptosystems Cryptanalysis The
Zimmermann Telegram Edgar
Allan Poe 
| Home
Education Contact
Us Shop CryptoStick
CryptanalysisCryptanalysis
is probably the thing most people first think of when they think of Cryptology.
Most of the time when the subject is broached, the first image is a Sherlock Holmes-type
detective, sitting and diligently working on the cipher text left behind from
the last encounter he had with his arch nemeses. This idea of attempting to break
a code we do not already know is fascinating. Of course, one can see how this
can be a very useful skill for a military to posses. If One encodes information
to hide it from prying eyes, through Cryptanalysis we can still get to the information
we are attempting to obtain. As far as military this could be vital strategic
information or plans, the knowledge of which may allow us to be able to prevent
an enemy from gaining the upper hand. However Cryptanalysis also can be a very
dangerous weapon. If a person is very adapt at breaking codes, then no information
is safe from them. Things like encoded credit card numbers or personal digital
information is all encoded in databases and throughout the internet. A person
could, in cryptanalical theory, break into all of this and have access to these
very vital pieces of information. Cryptanalysis has naturally been around
as long as Cryptography, however its first major breakthrough historically came
with World War II. In this war, the German's used a very infamous code, Enigma,
which allowed them to communicate without fear of anyone else being able to access
the information. The Allied forces did eventually break this code, and this truly
became the first major victory for Cryptanalysis. Since Enigma was a private-key
crypto-system, and was based on an Affine Shift, it had a finite number of keys
able to exist. With this information, and the help of a one of the first true
computers designed especially for this, the Allied forces used an exhaustive key
search to crack the German code, and thus allowing the Allied forces access to
top secret German military information. It is believed without this cryptanalyical
effort, the Allied forces may have not been able to win the war. Even though
there are many different ways to encrypt something, decryption has by far less
methods than does cryptography. There are in fact only two true ways to crack
a code. An Exhaustive Key Search is probably the most effective way, and works
on the theory if one encrypts text using a cipher such as Affine or a Caesar Cipher
they had to have encrypted the text by using a function F(x). Then we can theoretically
use F-1(x) to decrypt it. We do not, however, know what F(x) is. We do know there
are a finite possibilities for what F(x) could be, and if we run through them
all systematically then we should be able to decrypt the code. Here is where computers
play a major role. Let us say there are 1,000 different possible keys, or 10,000
or 1,000,000? We would need to run through all of them to get the correct key,
since a computer can try many keys in a very short amount of time or even sometimes
simultaneously, we could crack codes with a large number of keys in a relatively
short amount of time. The other type of cryptanalsys is called Frequency Analysis,
and can be a very powerful cyptanalical tool against such things as a Random Cipher,
or any cipher where there is an exact one to one mapping from regular alphabet
to cipher alphabet, or where F(x) is a one to one function. It works on the principle
certain letters appear more in natural text than others. Of course this is subject
to what language the text is written, however for a regular English paragraph
it is safe to assume the letter "e" will appear more than any other.
If we had a piece of cipher text we are trying to crack, and it was at least a
paragraph long, we could count to find which letter appears most often. Then we
could say whatever letter that is, it probably corresponds to the letter "e."
One question always coming up is, "Is there an unbreakable code?" The
answer to this is no. Every code is theoretically breakable, however some may
be so complex or have so many keys it is essentially unbreakable. Cryptologists,
when developing their encryption schemes, think about this, and will put in little
traps to help through Cryptanalysists off, such as encoding each group of ten
letters using a different key. This way a simple frequency analysis, or even an
exhaustive key search would prove useless if the text is taken as a whole. Even
such crypto-systems as RSA and other public key systems are breakable, however
cryptanalysis for these crypto-systems can be very complex and frustratingly tedious.
Cryptanalsysis, as a whole much like cryptology, is becoming more and more
digital and high-tech. Computers can run though keys and count faster than any
human, however the programs and algorithms used are still the same techniques
used throughout the ages.
|