Cryptography Reference
In-Depth Information
A cryptosystem is called symmetric-key (also called single key , one key ,
and conventional ) if, for each key pair ( e,d ), it is computationally easy 3.1 to
determine d knowing only e and to determine e knowing only d . (Often e = d in
symmetric-key ciphers, adding more justification for the term “symmetric-key”.)
Remark 3.1 We caution the reader that the term “cipher” is not used uni-
formly throughout the literature. We have clarified and set our meaning here
so there is no confusion. Moreover, as discussed on page 6, the term “codes”
was historically blurred with the notion of “cipher”. However, we maintain the
definitionof“cryptographiccodes”givenonpage6todistinguishthemfrom“ci-
phers” and non -cryptographic codes described therein. Lastly, the term “cipher
table” is sometimes used in the literature and throughout history to mean what
we have defined to be a “cryptosystem”. However, the more precise meaning
we have given to the term “cipher” here makes the context clear, and the term
“cipher table” is also well defined. For instance, cipher Table 1.2 on page 11
for the Caesar cipher is such an example, whereas the description of the enci-
phering and deciphering transformations that make up the Caesar cipher itself
are components of the cryptosystem established in this definition.
In Chapter 1, we encountered the notion of monoalphabetic ciphers (those
with a single-cipher alphabet/key, as we determined therein), with the Caesar
cipher as a worked example. Then we witnessed the evolution of the polyal-
phabetic cipher (those with more than one cipher alphabet), with Trithemius's
tableauas a vivid example.
With monoalphabetic ciphers, an alteration of one letter in plaintext alters
exactly one letter in ciphertext. This makes the finding of the key by a frequency
analysis of the ciphertext a relatively easy task. In polyalphabetic ciphers, such
as the Vigenere cryptosystem, which we also studied in detail in Chapter 1,
for instance, the use of blocks of letters corresponding to the keylength makes
this more di0cult, but still feasible since there is no interaction among the
characters in each block. The following more general type of cryptosystem
avoids these failings by enciphering blocks of many characters simultaneously,
so that changing a symbol in one plaintext block, should (potentially) result in
a corresponding change in all symbols in the corresponding ciphertext block.
We have already encountered an example of a “block cipher” on page 98.
Here we present a formal definition for the sake of completeness and for easy
reference.
Block Ciphers
A block cipher is cryptosystem that separates the plaintext into strings,
called blocks, of fixed length n
N
, called its blocklength , and enciphers one
block at a time.
An example of one of the most basic kinds of block ciphers is the Caesar
cipher discussed on pages 11 and 12. We now look at a class of ciphers of which
3.1 A computationally easy problem means one that can be solved in expected polynomial
time (see the section on complexity in Appendix A, especially page 501.)
Search WWH ::




Custom Search