Description:

  • From Alan Turing

Version 1

  • Replace each letter of a message with two digits: A = 01, B = 02, C = 03, … , Z = 26.
    • For example, “victory” is translated to 22 09 03 20 15 18 25.
  • Adding (a few) number to make it prime, i.e., 22 09 03 20 15 18 25 13.
  • Beforehand Sender and Receiver agree on a secret key, a prime .
  • Encryption The sender encrypts:
  • Decryption The receiver decrypts:
  • However, If attack got 2 messages, they can find to have

Version 2

  • Beforehand: Sender and Receiver agree on a large prime , which can be public, and a secret key, a prime .
  • Encryption: The sender encrypts a message , which is a large prime:
  • Decryption: The receiver know both and , so can compute , an inverse of modulo , and decrypts:
  • Problem:
    • if the attacker know both encrypted and unencrypted message, i.e., and
    • Attacker can compute , an inverse of modulo
    • Then compute