Crypto-1
Crypto1 is a proprietary encryption algorithm and authentication protocol created by NXP Semiconductors for its MIFARE Classic RFID contactless smart cards launched in 1994. Such cards have been used in many notable systems, including Oyster card, CharlieCard and OV-chipkaart.
By 2009, cryptographic research had reverse engineered the cipher and a variety of attacks were published that effectively broke the security.
NXP responded by issuing "hardened" cards, the MIFARE Classic EV1. However, in 2015 a new attack rendered the cards insecure, and NXP now recommends migrating away from MIFARE Classic.
Technical description
Crypto1 is a stream cipher very similar in its structure to its successor, Hitag2. Crypto1 consists of- a 48-bit linear feedback shift register for the state of the cipher,
- a two-layer 20-to-1 nonlinear function used to generate the keystream, and
- a 16-bit LFSR which is used during the authentication phase as a pseudo [random number generator]