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

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

СКАЧАТЬ alt="0 less-than-or-equal-to upper M less-than-or-equal-to upper N minus 1"/>. Our enciphering algorithm now reads: “increase upper M by 7 and get the cipher text upper C by calculating the remainder upon division by upper N.” For example if upper N is 55 and upper M equals 50, then upper C equals 2. So A transmits the cipher text 2. Now, B must undo (or decrypt or decipher) 2 to get the original message. Before, our decryption algorithm read “subtract 7 from upper C,” i.e. “add the inverse of 7 to upper C.” We do this now. First, we must get the additive inverse of 7 modulo upper N i.e., the inverse of 7 modulo 55 (see Chapter 19). In other words, we must find d such that d plus 7 leaves a remainder 0 when divided by 55. In this case, d is 48. Then, to decipher upper C, we increase upper C left-parenthesis equals 2 right-parenthesis by 48 and obtain the remainder upon division by 55. In this case, we obtain the number 50. This is the original message.

      The kind of procedure just described seems remarkably similar to the RSA algorithm. A summary is as follows:

RSA Algorithm (Outline) Symmetric Algorithm (Outline)
bulletB selects in private two large primes p, q with p not-equals q and sets upper N equals p q. bulletA and B publicly choose any positive integer upper N.
bulletA chooses a message upper M, 0 less-than-or-equal-to upper M less-than-or-equal-to upper N minus 1. bulletA chooses a message upper M, 0 less-than-or-equal-to upper M less-than-or-equal-to upper N minus 1.
bulletB chooses any positive enciphering index e with gcd left-parenthesis e comma left-parenthesis p minus 1 right-parenthesis left-parenthesis q minus 1 right-parenthesis right-parenthesis equals 1 and 1 less-than-or-equal-to e less-than left-parenthesis p minus 1 right-parenthesis left-parenthesis q minus 1 right-parenthesis. bulletA and B secretly agree on an enciphering indexe between 0 and upper N minus 1.
bulletA forms the cipher text upper C, where upper C is the remainder when upper M Superscript e is divided by upper N. bulletA forms the cipher text upper C, where upper C is the remainder when upper M plus e is divided by upper N.
bullet Let d be the multiplicative inverse of e modulo left-parenthesis p minus 1 right-parenthesis left-parenthesis q minus 1 right-parenthesis, so that e d leaves a remainder of 1 upon division by left-parenthesis p minus 1 right-parenthesis left-parenthesis q minus 1 right-parenthesis. Then, to decipher, B raises upper C to the power d and gets the remainder of upper C Superscript d upon division by upper N. bullet Let d be the additive inverse of e modulo СКАЧАТЬ