Cryptography, Information Theory, and Error-Correction. Aiden A. Bruen
Чтение книги онлайн.

Читать онлайн книгу Cryptography, Information Theory, and Error-Correction - Aiden A. Bruen страница 43

СКАЧАТЬ How can a user “sign” a message?

      4 Nonrepudiation. How can B prove (in court, for example) that A sent the message?

      Technically, authentication has two aspects. One relates to the verification of the origin of received data. The other refers to verifying the identity of a user. Traditional methods include passwords, P.I.N. numbers, etc. Biometric data has been used in recent years as well, for example, for logging into a smart phone. We discuss this in Chapter 8.

      Message integrity can be achieved using hash functions as described in Chapter 4. Digital Signatures can be carried out using either symmetric or public key encryption. This is also described in Chapter 4.

      

      A basic issue in cryptography is this: If we are trying to guess one of n possible passwords in order to log on (or n possible keys say), then how many guesses will we have to make on average until we are successful? The answer is easy to find.

      On the average, when trying to guess one of n possible keys, we only need left-parenthesis n plus 1 right-parenthesis slash 2 guesses.

      First, we explain the concept of average value which is discussed also in Chapter 9. Suppose that, in a class of 6 students, 3 get 70%, 2 get 80%, and 1 gets 92%. What is the average grade? One can write this average as left-parenthesis left-parenthesis 3 right-parenthesis left-parenthesis 70 right-parenthesis plus left-parenthesis 2 right-parenthesis left-parenthesis 80 right-parenthesis plus left-parenthesis 1 right-parenthesis left-parenthesis 92 right-parenthesis right-parenthesis slash 6 equals 77. So the average grade is 77%. We could also calculate the average as three sixths left-parenthesis 70 right-parenthesis plus two sixths left-parenthesis 80 right-parenthesis plus one sixth left-parenthesis 92 right-parenthesis, where three sixths comma two sixths comma one sixth are the probabilities of getting 70, 80, and 92, respectively. Now, we proceed to the proof.

      Proof. The probability of guessing correctly the first time is 1 slash n. To get it right in exactly 2 guesses, we must get it wrong on the first guess and then, having discarded the unsuccessful guess, we must guess correctly on the next attempt. So the probability of being successful in exactly 2 guesses is left-parenthesis 1 minus StartFraction 1 Over n EndFraction right-parenthesis left-parenthesis StartFraction 1 Over n minus 1 EndFraction right-parenthesis equals left-parenthesis StartFraction n minus 1 Over n EndFraction right-parenthesis left-parenthesis StartFraction 1 Over n minus 1 EndFraction right-parenthesis equals StartFraction 1 Over n EndFraction. Similarly, the probability of being successful in exactly 3 comma 4 comma ellipsis comma n minus 1 comma n guesses is also 1 slash n. To get the average number of guesses, we multiply the number of guesses by the probability and add up. This gives the average number of trials until success to be left-parenthesis 1 right-parenthesis left-parenthesis 1 slash n right-parenthesis plus left-parenthesis 2 right-parenthesis left-parenthesis 1 slash n right-parenthesis plus left-parenthesis 3 right-parenthesis left-parenthesis 1 slash n right-parenthesis plus midline-horizontal-ellipsis plus left-parenthesis n minus 1 right-parenthesis left-parenthesis 1 slash n right-parenthesis plus n left-parenthesis StartFraction 1 Over n EndFraction right-parenthesis equals left-parenthesis 1 plus 2 plus 3 plus midline-horizontal-ellipsis plus left-parenthesis n minus 1 right-parenthesis plus n right-parenthesis left-parenthesis 1 slash n right-parenthesis equals left-parenthesis n plus 1 right-parenthesis slash 2. So on average, you get the correct password after left-parenthesis n plus 1 right-parenthesis slash 2 attempts.

      Public key algorithms and symmetric algorithms were compared in Section 3.4. With any public key algorithm such as RSA (or elliptic curve cryptography), given sufficient time and computing power, the eavesdropper is certain to recover the message. In fact, with RSA it is generally quicker to try to solve the factoring problem than to try all possible values of d (brute‐force). One of the main advantages of RSA is the convenience and low cost, especially for e‐commerce. Advantages of symmetric systems include improved security and the speed.

      A difficulty with key systems is the key distribution problem, i.e. the problem of getting the common secret key to A and B. This is eloquently expressed by Professor Lomonaco when he writes about the Catch‐22 of cryptography [Lom98].

      Catch‐22 of Cryptography:

      To communicate in secret, we must first communicate in secret.

      We have spoken already of the assumption that the encryption algorithms for public key cryptography are assumed to be mathematical one‐way functions. This means that enciphering has the property that its values are easily computed by a computer (i.e. are computed in polynomial time), yet the deciphering algorithm cannot be computed in a reasonable amount of time (even on a computer). In other words, the problem of deciphering the cipher text is intractable.

      Of course, we emphasize again that the existence of such mathematical one‐way functions is still in doubt since nobody has discovered a mathematical function that is provably one‐way.

      But one‐way functions abound in the physical world, many of them related to time. For example, as Beutelspacher [Beu94] points out, most people are not getting СКАЧАТЬ