Outline of cryptography#Undeciphered historical codes and ciphers
{{short description|none}}
{{see also|Index of cryptography articles}}
The following outline is provided as an overview of and topical guide to cryptography:
Cryptography (or cryptology) – practice and study of hiding information. Modern cryptography intersects the disciplines of mathematics, computer science, and engineering. Applications of cryptography include ATM cards, computer passwords, and electronic commerce.
{{TOC limit|limit=2}}
Essence of cryptography
Uses of cryptographic techniques
Branches of cryptography
History of cryptography
{{main|History of cryptography|Timeline of cryptography}}
Ciphers
=Classical=
==[[Substitution cipher|Substitution]]==
==[[Transposition cipher|Transposition]]==
- Scytale
- Grille
- Permutation cipher
- VIC cipher – complex hand cypher used by at least one Soviet spy in the early 1950s; it proved quite secure for the time
=Modern symmetric-key algorithms=
{{main|Symmetric-key algorithm}}
==[[Stream ciphers]]==
- A5/1 & A5/2 – ciphers specified for the GSM cellular telephone standard
- BMGL
- Chameleon
- FISH – by Siemens AG
- WWII 'Fish' cyphers
- Geheimfernschreiber – WWII mechanical onetime pad by Siemens AG, called STURGEON by Bletchley Park
- Pike – improvement on FISH by Ross Anderson
- Schlusselzusatz – WWII mechanical onetime pad by Lorenz, called tunny by Bletchley Park
- HELIX
- ISAAC – intended as a PRNG
- Leviathan
- LILI-128
- MUGI – CRYPTREC recommendation
- MULTI-S01 - CRYPTREC recommendation
- One-time pad – Vernam and Mauborgne, patented 1919; an extreme stream cypher
- Panama
- RC4 (ARCFOUR) – one of a series by Professor Ron Rivest of MIT; CRYPTREC recommended limited to 128-bit key
- CipherSaber – (RC4 variant with 10 byte random IV, easy to implement
- Salsa20 – an eSTREAM recommended cipher
- ChaCha20 – A Salsa20 variant.
- SEAL
- SNOW
- SOBER
- SOBER-t16
- SOBER-t32
- WAKE
==[[Block ciphers]]==
{{further|Block cipher modes of operation}}
- Product cipher
- Feistel cipher – pattern by Horst Feistel
- Advanced Encryption Standard (Rijndael) – 128-bit block; NIST selection for the AES, FIPS 197; Created 2001—by Joan Daemen and Vincent Rijmen; NESSIE selection; CRYPTREC recommendation.
- Anubis – 128-bit block
- BEAR – built from a stream cypher and hash function, by Ross Anderson
- Blowfish – 64-bit block; by Bruce Schneier et al.
- Camellia – 128-bit block; NESSIE selection (NTT & Mitsubishi Electric); CRYPTREC recommendation
- CAST-128 (CAST5) – 64-bit block; one of a series of algorithms by Carlisle Adams and Stafford Tavares, insistent that the name is not due to their initials
- CAST-256 (CAST6) – 128-bit block; the successor to CAST-128 and a candidate for the AES competition
- CIPHERUNICORN-A – 128-bit block; CRYPTREC recommendation
- CIPHERUNICORN-E – 64-bit block; CRYPTREC recommendation (limited)
- CMEA – cipher used in US cellphones, found to have weaknesses.
- CS-Cipher – 64-bit block
- Data Encryption Standard (DES) – 64-bit block; FIPS 46-3, 1976
- DEAL – an AES candidate derived from DES
- DES-X – a variant of DES to increase the key size.
- FEAL
- GDES – a DES variant designed to speed up encryption
- Grand Cru – 128-bit block
- Hierocrypt-3 – 128-bit block; CRYPTREC recommendation
- Hierocrypt-L1 – 64-bit block; CRYPTREC recommendation (limited)
- IDEA NXT – project name FOX, 64-bit and 128-bit block family; Mediacrypt (Switzerland); by Pascal Junod & Serge Vaudenay of Swiss Institute of Technology Lausanne
- International Data Encryption Algorithm (IDEA) – 64-bit block;James Massey & X Lai of ETH Zurich
- Iraqi Block Cipher (IBC)
- KASUMI – 64-bit block; based on MISTY1, adopted for next generation W-CDMA cellular phone security
- KHAZAD – 64-bit block designed by Barretto and Rijmen
- Khufu and Khafre – 64-bit block ciphers
- Kuznyechik – Russian 128-bit block cipher, defined in GOST R 34.12-2015 and RFC 7801.
- LION – block cypher built from stream cypher and hash function, by Ross Anderson
- LOKI89/91 – 64-bit block ciphers
- LOKI97 – 128-bit block cipher, AES candidate
- Lucifer – by Tuchman et al. of IBM, early 1970s; modified by NSA/NBS and released as DES
- MAGENTA – AES candidate
- Mars – AES finalist, by Don Coppersmith et al.
- MISTY1 – NESSIE selection 64-bit block; Mitsubishi Electric (Japan); CRYPTREC recommendation (limited)
- MISTY2 – 128-bit block: Mitsubishi Electric (Japan)
- Nimbus – 64-bit block
- NOEKEON – 128-bit block
- NUSH – variable block length (64-256-bit)
- Q – 128-bit block
- RC2 – 64-bit block, variable key length
- RC6 – variable block length; AES finalist, by Ron Rivest et al.
- RC5 – Ron Rivest
- SAFER – variable block length
- SC2000 – 128-bit block; CRYPTREC recommendation
- Serpent – 128-bit block; AES finalist by Ross Anderson, Eli Biham, Lars Knudsen
- SHACAL-1 – 160-bit block
- SHACAL-2 – 256-bit block cypher; NESSIE selection Gemplus (France)
- Shark – grandfather of Rijndael/AES, by Daemen and Rijmen
- Square – father of Rijndael/AES, by Daemen and Rijmen
- TEA – by David Wheeler & Roger Needham
- Triple DES – by Walter Tuchman, leader of the Lucifer design team—not all triple uses of DES increase security, Tuchman's does; CRYPTREC recommendation (limited), only when used as in FIPS Pub 46-3
- Twofish – 128-bit block; AES finalist by Bruce Schneier et al.
- XTEA – by David Wheeler & Roger Needham
- 3-Way – 96-bit block by Joan Daemen
- Polyalphabetic substitution machine cyphers
- Enigma – WWII German rotor cypher machine—many variants, any user networks for most of the variants
- Purple – highest security WWII Japanese Foreign Office cypher machine; by Japanese Navy Captain
- SIGABA – WWII US cypher machine by William Friedman, Frank Rowlett et al.
- TypeX – WWII UK cypher machine
- Hybrid code/cypher combinations
- JN-25 – WWII Japanese Navy superencyphered code; many variants
- Naval Cypher 3 – superencrypted code used by the Royal Navy in the 1930s and into WWII
=Modern asymmetric-key algorithms=
==[[Asymmetric key algorithm]]==
- ACE-KEM – NESSIE selection asymmetric encryption scheme; IBM Zurich Research
- ACE Encrypt
- Chor-Rivest
- Diffie-Hellman – key agreement; CRYPTREC recommendation
- El Gamal – discrete logarithm
- Elliptic curve cryptography – (discrete logarithm variant)
- PSEC-KEM – NESSIE selection asymmetric encryption scheme; NTT (Japan); CRYPTREC recommendation only in DEM construction w/SEC1 parameters
- ECIES – Elliptic Curve Integrated Encryption System, Certicom Corporation
- ECIES-KEM
- ECDH – Elliptic Curve Diffie-Hellman key agreement, CRYPTREC recommendation
- EPOC
- Kyber
- Merkle–Hellman knapsack cryptosystem – knapsack scheme
- McEliece cryptosystem
- Niederreiter cryptosystem
- NTRUEncrypt
- RSA – factoring
- RSA-KEM – NESSIE selection asymmetric encryption scheme; ISO/IEC 18033-2 draft
- RSA-OAEP – CRYPTREC recommendation
- Rabin cryptosystem – factoring
- Rabin-SAEP
- HIME(R)
- Paillier cryptosystem
- Threshold cryptosystem
- XTR
Keys
{{main|Key (cryptography)}}
=[[Key authentication]]=
=Transport/exchange=
=[[Weak key]]s=
- Brute force attack
- Dictionary attack
- Related key attack
- Key derivation function
- Key strengthening
- Password
- Password-authenticated key agreement
- Passphrase
- Salt
- Factorization{{Cite web|title=Research Paper - factorable.net|url=https://factorable.net/paper.html|access-date=2020-06-26|website=factorable.net}}
[[Cryptographic hash function]]s
- Message authentication code
- Keyed-hash message authentication code
- Encrypted CBC-MAC (EMAC) – NESSIE selection MAC
- HMAC – NESSIE selection MAC; ISO/IEC 9797-1, FIPS PUB 113 and IETF RFC
- TTMAC – (Two-Track-MAC) NESSIE selection MAC; K.U.Leuven (Belgium) & debis AG (Germany)
- UMAC – NESSIE selection MAC; Intel, UNevada Reno, IBM, Technion, & UC Davis
- Oblivious Pseudorandom Function
- MD5 – one of a series of message digest algorithms by Prof Ron Rivest of MIT; 128-bit digest
- SHA-1 – developed at NSA 160-bit digest, an FIPS standard; the first released version was defective and replaced by this; NIST/NSA have released several variants with longer 'digest' lengths; CRYPTREC recommendation (limited)
- SHA-256 – NESSIE selection hash function, FIPS 180-2, 256-bit digest; CRYPTREC recommendation
- SHA-384 – NESSIE selection hash function, FIPS 180-2, 384-bit digest; CRYPTREC recommendation
- SHA-512 – NESSIE selection hash function, FIPS 180-2, 512-bit digest; CRYPTREC recommendation
- SHA-3 – originally known as Keccak; was the winner of the NIST hash function competition using sponge function.
- Streebog – Russian algorithm created to replace an obsolete GOST hash function defined in obsolete standard GOST R 34.11-94.
- RIPEMD-160 – developed in Europe for the RIPE project, 160-bit digest; CRYPTREC recommendation (limited)
- RTR0 – one of Retter series; developed by Maciej A. Czyzewski; 160-bit digest
- Tiger – by Ross Anderson et al.
- Snefru – NIST hash function competition
- Whirlpool – NESSIE selection hash function, Scopus Tecnologia S.A. (Brazil) & K.U.Leuven (Belgium)
[[Cryptanalysis]]
=Classical=
=Modern=
- Symmetric algorithms
- Boomerang attack
- Brute force attack
- Davies' attack
- Differential cryptanalysis
- Impossible differential cryptanalysis
- Integral cryptanalysis
- Linear cryptanalysis
- Meet-in-the-middle attack
- Mod-n cryptanalysis
- Related-key attack
- Slide attack
- XSL attack
- Hash functions:
- Birthday attack
- Attack models
- Chosen-ciphertext
- Chosen-plaintext
- Ciphertext-only
- Known-plaintext
- Side channel attacks
- Power analysis
- Timing attack
- Cold boot attack
- Differential fault analysis
- Network attacks
- Man-in-the-middle attack
- Replay attack
- External attacks
- Black-bag cryptanalysis
- Rubber-hose cryptanalysis
Robustness properties
- Provable security
- Random oracle model
- Ciphertext indistinguishability
- Semantic security
- Malleability
- Forward secrecy
- Forward anonymity
- Freshness
- {{annotated link|Kerckhoffs's principle}}
Undeciphered historical codes and ciphers
{{main category|Undeciphered historical codes and ciphers}}
Organizations and selection projects
=Cryptography standards=
- Federal Information Processing Standards (FIPS) Publication Program – run by NIST to produce standards in many areas to guide operations of the US Federal government; many FIPS publications are ongoing and related to cryptography
- American National Standards Institute (ANSI) – standardization process that produces many standards in many areas; some are cryptography related, ongoing)
- International Organization for Standardization (ISO) – standardization process produces many standards in many areas; some are cryptography related, ongoing
- Institute of Electrical and Electronics Engineers (IEEE) – standardization process produces many standards in many areas; some are cryptography related, ongoing
- Internet Engineering Task Force (IETF) – standardization process that produces many standards called RFCs) in many areas; some are cryptography related, ongoing)
=General cryptographic=
- National Security Agency (NSA) – internal evaluation/selections, charged with assisting NIST in its cryptographic responsibilities
- Government Communications Headquarters (GCHQ) – internal evaluation/selections, a division is charged with developing and recommending cryptographic standards for the UK government
- Defence Signals Directorate (DSD) – Australian SIGINT agency, part of ECHELON
- Communications Security Establishment (CSE) – Canadian intelligence agency
=Open efforts=
- Data Encryption Standard (DES) – NBS selection process, ended 1976
- RIPE – division of the RACE project sponsored by the European Union, ended mid-1980s
- Advanced Encryption Standard (AES) – a "break-off" competition sponsored by NIST, ended in 2001
- NESSIE Project – an evaluation/selection program sponsored by the European Union, ended in 2002
- eSTREAM– program funded by ECRYPT; motivated by the failure of all of the stream ciphers submitted to NESSIE, ended in 2008
- CRYPTREC – evaluation/recommendation program sponsored by the Japanese government; draft recommendations published 2003
- CrypTool – an e-learning freeware programme in English and German— exhaustive educational tool about cryptography and cryptanalysis
Influential cryptographers
Legal issues
- AACS encryption key controversy
- Free speech
- Bernstein v. United States - Daniel J. Bernstein's challenge to the restrictions on the export of cryptography from the United States.
- Junger v. Daley
- DeCSS
- Phil Zimmermann - Arms Export Control Act investigation regarding the PGP software.
- Export of cryptography
- Key escrow and Clipper Chip
- Digital Millennium Copyright Act
- Digital rights management (DRM)
- Patents
- RSA – now public domain
- David Chaum – and digital cash
- Cryptography and law enforcement
- Telephone wiretapping
- Espionage
- Cryptography laws in different nations
- Official Secrets Act – United Kingdom, India, Ireland, Malaysia, and formerly New Zealand
- Regulation of Investigatory Powers Act 2000 – United Kingdom
Academic and professional publications
{{further|List of important publications in computer science#Cryptography|Books on cryptography}}
- Journal of Cryptology
- Encyclopedia of Cryptography and Security
- Cryptologia – quarterly journal focusing on historical aspects
- Communication Theory of Secrecy Systems – cryptography from the viewpoint of information theory
- International Association for Cryptologic Research ([https://iacr.org/ website])