Information Security. Mark Stamp

Читать онлайн книгу.

Information Security - Mark Stamp


Скачать книгу
likely that “ F ″ has been substituted for “ E .″ Continuing in this manner, Trudy can try likely substitutions until she recognizes words, at which point she can be confident in her guesses.

Bar chart depicts Frequency counts for ciphertext

      This attack on the simple substitution shows that a large keyspace is not sufficient to ensure security. It also shows that cipher designers must guard against clever attacks. How can we protect against attacks when new attacks are developed all the time? The answer is that we can't and, as a result, a cipher must be subjected to extensive analysis by skilled cryptographers before we can trust it—the more skilled cryptographers who have tried to break a cipher and failed, the more confidence we have in the cipher.

      2.3.3 Definition of Secure

      There are several reasonable definitions of a secure cipher. Ideally, we would like to have a rigorous mathematical proof that there is no feasible attack on a system, but such ciphers are few and far between, and provably secure ciphers are impractical for most uses.

      Lacking a proof that a cipher is secure, we could require that the best‐known attack on the system is impractical, in the sense of being computationally infeasible. While this would seem to be the most crucial property, we'll use a slightly different definition. We say that a cryptosystem is secure if the best‐known attack requires as much work as an exhaustive key search. In other words, no shortcut attack is known.

      Note also that in practice, we must select a cipher that is secure (in the sense of our definition) and has a large enough key space so that an exhaustive key search is impractical. Both factors are necessary when choosing a cipher to protect sensitive data.

      2.3.4 Double Transposition Cipher

      In this section we discuss another classic cipher that illustrates some important basic concepts. The double transposition presented here is a weaker form of the usual double transposition cipher. We use this form of the cipher since it provides a slightly simpler means of illustrating all of the points that we want to make.

      To encrypt with a double transposition cipher, we first write the plaintext into an array of a given size and then permute the rows and columns according to specified permutations. For example, suppose we write the plaintext attackatdawn into a 3 times 4 array

Start 3 By 4 Matrix 1st Row 1st Column monospace a 2nd Column monospace t 3rd Column monospace t 4th Column monospace a 2nd Row 1st Column monospace c 2nd Column monospace k 3rd Column monospace a 4th Column monospace t 3rd Row 1st Column monospace d 2nd Column monospace a 3rd Column monospace w 4th Column monospace n EndMatrix period

      If we transpose (or permute) the rows according to left-parenthesis 1 comma 2 comma 3 right-parenthesis right-arrow left-parenthesis 3 comma 2 comma 1 right-parenthesis and transpose the columns according to left-parenthesis 1 comma 2 comma 3 comma 4 right-parenthesis right-arrow left-parenthesis 4 comma 2 comma 1 comma 3 right-parenthesis, we obtain

Start 3 By 4 Matrix 1st Row 1st Column monospace a 2nd Column monospace t 3rd Column monospace t 4th Column monospace a 2nd Row 1st Column monospace c 2nd Column monospace k 3rd Column monospace a 4th Column monospace t 3rd Row 1st Column monospace d 2nd Column monospace a 3rd Column monospace w 4th Column monospace n EndMatrix right-arrow Start 3 By 4 Matrix 1st Row 1st Column monospace d 2nd Column monospace a 3rd Column monospace w 4th Column monospace n 2nd Row 1st Column monospace c 2nd Column monospace k 3rd Column monospace a 4th Column monospace t 3rd Row 1st Column monospace a 2nd Column monospace t 3rd Column monospace t 4th Column monospace a EndMatrix right-arrow Start 3 By 4 Matrix 1st Row 1st Column monospace n 2nd Column monospace a 3rd Column monospace d 4th Column monospace w 2nd Row 1st Column monospace t 2nd Column monospace k 3rd Column monospace c 4th Column monospace a 3rd Row 1st Column monospace a 2nd Column monospace t 3rd Column monospace a 4th Column monospace t EndMatrix period

      The ciphertext is read from the final array as

Start 3 By 4 Matrix 1st Row 1st Column monospace upper N 2nd Column monospace upper A 3rd Column monospace upper D 4th Column monospace upper W 2nd Row 1st Column monospace upper T 2nd Column monospace upper K 3rd Column monospace upper C 4th Column monospace upper A 3rd Row 1st Column monospace upper A 2nd Column monospace upper T 3rd Column monospace upper A 4th Column monospace upper T EndMatrix right-arrow Start 3 By 4 Matrix 1st Row 1st Column monospace upper D 2nd Column monospace upper A 3rd Column monospace upper W 4th Column monospace upper N 2nd Row 1st Column monospace upper C 2nd Column monospace upper K 3rd Column monospace upper A 4th Column monospace upper T 3rd Row 1st Column monospace upper A 2nd Column monospace upper T 3rd Column monospace upper T 4th Column monospace upper A EndMatrix right-arrow Start 3 By 4 Matrix 1st Row 1st Column monospace upper A 2nd Column monospace upper T 3rd Column monospace upper T 4th Column monospace <hr><noindex><a href=Скачать книгу