Page 319 - Discrete Mathematics and Its Applications
P. 319

298  4 / Number Theory and Cryptography


                                                    We now illustrate the use of the definition of a cryptosystem.
                                 EXAMPLE 7      Describe the family of shift ciphers as a cryptosytem.

                                                Solution: To encrypt a string of English letters with a shift cipher, we first translate each letter
                                                to an integer between 0 and 25, that is, to an element of Z 26 . We then shift each of these integers
                                                by a fixed integer modulo 26, and finally, we translate the integers back to letters. To apply the
                                                defintion of a cryptosystem to shift ciphers, we assume that our messages are already integers,
                                                that is, elements of Z 26 . That is, we assume that the translation between letters and integers
                                                is outside of the cryptosystem. Consequently, both the set of plaintext strings P and the set of
                                                ciphertext stringsC are the set of strings of elements of Z 26 .The set of keysK is the set of possible
                                                shifts, so K = Z 26 . The set E consists of functions of the form E k (p) = (p + k) mod 26, and
                                                the set D of decryption functions is the same as the set of encrypting functions where D k (p) =
                                                (p − k) mod 26.                                                                ▲

                                                    The concept of a cryptosystem is useful in the discussion of additional families of ciphers
                                                and is used extensively in cryptography.


                                                Public Key Cryptography

                                                All classical ciphers, including shift ciphers and affine ciphers, are examples of private key
                                                cryptosystems. In a private key cryptosystem, once you know an encryption key, you can
                                                quickly find the decryption key. So, knowing how to encrypt messages using a particular key
                                                allows you to decrypt messages that were encrypted using this key. For example, when a shift
                                                cipher is used with encryption key k, the plaintext integer p is sent to

                                                    c = (p + k) mod 26.

                                                Decryption is carried out by shifting by −k; that is,

                                                    p = (c − k) mod 26.
                                                So knowing how to encrypt with a shift cipher also tells you how to decrypt.
                                                    When a private key cryptosystem is used, two parties who wish to communicate in secret
                                                must share a secret key. Because anyone who knows this key can both encrypt and decrypt
                                                messages, two people who want to communicate securely need to securely exchange this key.
                                                (We will introduce a method for doing this later in this section.) The shift cipher and affine cipher
                                                cryptosystems are private key cryptosystems.They are quite simple and are extremely vulnerable
                                                to cryptanalysis. However, the same is not true of many modern private key cryptosystems. In
                                                particular, the current US government standard for private key cryptography, the Advanced
                                                Encryption Standard (AES), is extremely complex and is considered to be highly resistant to
                                                cryptanalysis. (See [St06] for details on AES and other modern private key cryptosystems.)
                                                AES is widely used in government and commercial communications. However, it still shares
                                                the property that for secure communications keys be shared. Furthermore, for extra security, a
                                                new key is used for each communication session between two parties, which requires a method
                                                for generating keys and securely sharing them.
                                                    To avoid the need for keys to be shared by every pair of parties that wish to communicate
                                                securely, in the 1970s cryptologists introduced the concept of public key cryptosystems. When
                                                such cryptosystems are used, knowing how to send an encrypted message does not help decrypt
                                                messages. In such a system, everyone can have a publicly known encryption key. Only the
                                                decryption keys are kept secret, and only the intended recipient of a message can decrypt it,
                                                because, as far as it is currently known, knowledge of the encryption key does not let someone
                                                recover the plaintext message without an extraordinary amount of work (such as billions of
                                                years of computer time).
   314   315   316   317   318   319   320   321   322   323   324