Paper 2019/488

Enigma 2000: An Authenticated Encryption Algorithm For Human-to-Human Communication

Alan Kaminsky


Enigma 2000 (E2K) is a cipher that updates the World War II-era Enigma Machine for the twenty-first century. Like the original Enigma, E2K is intended to be computed by an offline device; this prevents side channel attacks and eavesdropping by malware. Unlike the original Enigma, E2K uses modern cryptographic algorithms; this provides secure encryption. E2K is intended for encrypted communication between humans only, and therefore it encrypts and decrypts plaintexts and ciphertexts consisting only of the English letters A through Z plus a few other characters. E2K uses a nonce in addition to the secret key, and requires that different messages use unique nonces. E2K performs authenticated encryption, and optional header data can be included in the authentication. This paper defines the E2K encryption and decryption algorithms, analyzes E2K’s security, and describes an encryption appliance based on the Raspberry Pi computer for doing E2K encryptions and decryptions offline.

Available format(s)
Secret-key cryptography
Publication info
Preprint. MINOR revision.
Enigma Machineauthenticated encryptionpolyalphabetic cipherhistorical cipher
Contact author(s)
ark @ cs rit edu
2019-05-20: received
Short URL
Creative Commons Attribution


      author = {Alan Kaminsky},
      title = {Enigma 2000: An Authenticated Encryption Algorithm For Human-to-Human Communication},
      howpublished = {Cryptology ePrint Archive, Paper 2019/488},
      year = {2019},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.