Cryptology: 1 Basic Concepts
Cryptology: 1 Basic Concepts
1 Basic concepts
The word Cryptology comes from the Greek words kryptos, which means hidden and logos, which
means word. It is the branch of science that deals with secret communications and information
security and privacy. Mathematical techniques are investigated and developed to provide
1) confidentiality (the information is available only to those people who have the right to it)
2) integrity (the information is protected against illegal chances)
3) authenticity (the identity of partners (people, computers, programs) is possible to check)
Sender: Alice in the figure above, person, bank, ATM machine, computer, satellite,
company,....
Receiver: Bob in the figure above, person, bank, ATM machine, computer, satellite,
company,…
Plaintext is a message (clear text, original text, source text) that should be securely transmitted
from the sender to the receiver.
Encryption is a process (a math function, an algorithm) by which the plaintext is transformed
into a hidden “non understandable” message, called ciphertext or cryptotext.
Decryption is a process (a math function, an algorithm) by which the ciphertext is turned into
its original plaintext.
A code is an unvarying rule for replacing a piece of information with another object, not necessarily
of the same sort e.g. ASCII or Morse Code. Ciphers, as in the case of codes, also replace a piece of
information (an element of the plaintext that may consist of a letter or word or string of symbols)
with another object. The difference is that the replacement is made according to a rule defined by a
secret key known only to the transmitter and legitimate receiver(s) in the expectation that an
outsider, ignorant of the key, will not be able to undo the replacement and retrieve the original
plaintext. Often the plaintext is first encoded into binary alphabet using for example ASCII and
then it is encrypted using a secret encryption key. The encrypted information can then be decrypted
and decoded be the receiver.
Example 1. One of the simplest cryptosystems was said to have been used by Julius Caesar and for
that reason this type of cryptosystem still bears his name. CAESAR is based on substitutions: each
letter is substituted by another letter. The latter is obtained from the former by advancing k steps in
the alphabet. For example, if k = 4, substitutions are as follows:
Old A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Ne E F G H I J K L M N O P Q R S T U V W X Y Z A B C D
w
The message WEMEETATNOONATSCHOOL is encrypted as AIQIIXEXRSSREXWGLSSP.
The key space of the CAESAR system consists of the 26 numbers 0, 1, 2, …, 25. The encryption
method Ek determined by the key k is: advance k steps in the alphabet and the corresponding
decryption method Dk is: go back k steps in the alphabet. Some further examples:
E6(HELP) = NKRV E20(HOME) = BIGY D6(NUSK) = HOME
CAESAR is easy to break. You only need to check all 26 possible values for k (when we are
dealing with the English alphabet).
In CAESAR the decryption key Dk can be immediately computed from the encryption key Ek.
Actually, for any cryptosystem, Dk is determined by the encryption key Ek. However, the
computation of Dk from Ek may be intractable. In classical cryptosystems Ek cannot be publicized
because Dk is possible to be computed from Ek. In public-key cryptosystems Ek can be made
public without compromising the secrecy. The keys are so skilfully constructed that the
computation of Dk from Ek is intractable. The keys are based on one-way functions whose inverse
functions are impossible (at least very difficult) to find.
Classical cryptosystems are also called symmetric or two-way and public-key systems non-
symmetric or one-way.
Exercises
Exercise 1.1 Choose k and a plaintext in English (the length about 20 letters). Using CAESAR
method encrypt the plaintext. Give the cryptotext to the teacher.
Exercise 1.2 You get a cryptotext from the teacher . Decrypt it.
Exercise 1.3 Your friend Al sends you a cryptotext FNPXCXSJYJWWNGCFNNT JU . Find the
plaintext.
Exercise 1.5 Make a program that asks the value of the key and encrypts English plaintexts using
CAESAR method.
Exercise 1.6 Make a program that decrypts cryptotexts which are known to have been written using
by CAESAR method