PRESENT is a lightweight block cipher, developed by the Orange Labs (France), Ruhr University Bochum (Germany) and the Technical University of Denmark in 2007. PRESENT was designed by Andrey Bogdanov, Lars R. Knudsen, Gregor Leander, Christof Paar, Axel Poschmann, Matthew J. B. Robshaw, Yannick Seurin, and C. Vikkelsoe.[1] The algorithm is notable for its compact size (about 2.5 times smaller than AES).[2]
General | |
---|---|
Designers | Orange Labs, Ruhr University Bochum and the Technical University of Denmark |
First published | 2007-08-23 |
Cipher detail | |
Key sizes | 80 or 128 bits |
Block sizes | 64 bits |
Structure | SPN |
Rounds | 31 |
Overview
editThe block size is 64 bits and the key size can be 80 bit or 128 bit. The non-linear layer is based on a single 4-bit S-box which was designed with hardware optimizations in mind. PRESENT is intended to be used in situations where low-power consumption and high chip efficiency is desired. The International Organization for Standardization and the International Electrotechnical Commission included PRESENT in the new international standard for lightweight cryptographic methods.[2][3]
Cryptanalysis
editA truncated differential attack on 26 out of 31 rounds of PRESENT was suggested in 2014.[4]
Several full-round attacks using biclique cryptanalysis have been introduced on PRESENT.[5][6]
By design all block ciphers with a block size of 64 bit can have problems with block collisions if they are used with large amounts of data.[7] Therefore, implementations need to make sure that the amount of data encrypted with the same key is limited and rekeying is properly implemented.
Performance
editPRESENT uses bit-oriented permutations and is not software-friendly. It is clearly targeted at hardware, where bit-permutations are possible with simple wiring.[8] Performance of PRESENT when evaluated in microcontroller software environment using FELICS (Fair Evaluation of Lightweight Cryptographic Systems),[9] a benchmarking framework for evaluation of software implementations of lightweight cryptographic primitives.
Standardization
editPRESENT is included in the following standards.
- ISO/IEC 29167-11:2014, Information technology - Automatic identification and data capture techniques - Part 11: Crypto suite PRESENT-80 security services for air interface communications[10]
- ISO/IEC 29192-2:2019, Information security - Lightweight cryptography - Part 2: Block ciphers[3]
References
edit- ^ Bogdanov, Andrey; Knudsen, Lars R.; Leander, Gregor; Paar, Christof; Poschmann, Axel; Robshaw, Matthew J. B.; Seurin, Yannick; Vikkelsoe, Charlotte (2007). "PRESENT: An Ultra-Lightweight Block Cipher". Cryptographic Hardware and Embedded Systems - CHES 2007. Lecture Notes in Computer Science. Vol. 4727. pp. 450–466. doi:10.1007/978-3-540-74735-2_31. ISBN 978-3-540-74734-5.
- ^ a b Katholieke Universiteit Leuven. "Ultra-lightweight encryption method becomes international standard". Archived from the original on 2013-08-01. Retrieved 2012-02-28.
- ^ a b ISO. "ISO/IEC 29192-2:2019, Information security - Lightweight cryptography - Part 2: Block ciphers". Retrieved 2020-08-12.
- ^ Blondeau, Cline; Nyberg, Kaisa (2014). "Links between Truncated Differential and Multidimensional Linear Properties of Block Ciphers and Underlying Attack Complexities". Advances in Cryptology – EUROCRYPT 2014. Lecture Notes in Computer Science. Vol. 8441. pp. 165–182. doi:10.1007/978-3-642-55220-5_10. ISBN 978-3-642-55219-9.
- ^ Lee, Changhoon (2014-01-28). "Biclique cryptanalysis of PRESENT-80 and PRESENT-128". The Journal of Supercomputing. 70 (1): 95–103. doi:10.1007/s11227-014-1103-3. ISSN 0920-8542. S2CID 16627173.
- ^ Faghihi Sereshgi, Mohammad Hossein; Dakhilalian, Mohammad; Shakiba, Mohsen (2015-10-06). "Biclique cryptanalysis of MIBS-80 and PRESENT-80 block ciphers". Security and Communication Networks. 9: 27–33. doi:10.1002/sec.1375. ISSN 1939-0122.
- ^ Karthikeyan Bhargavan, Gaëtan Leurent (2016-08-24). "Sweet32: Birthday attacks on 64-bit block ciphers in TLS and OpenVPN". Retrieved 2016-09-30.
- ^ Cryptolux. "Lightweight Block Ciphers: PRESENT". Retrieved 2020-08-12.
- ^ Dinu, Daniel; Corre, Yann Le; Khovratovich, Dmitry; Perrin, Léo; Großschädl, Johann; Biryukov, Alex (14 July 2018). "Triathlon of lightweight block ciphers for the Internet of things" (PDF). Journal of Cryptographic Engineering. 9 (3): 283–302. doi:10.1007/s13389-018-0193-x. S2CID 1578215.
- ^ ISO. "ISO/IEC 29167-11:2014, Information technology - Automatic identification and data capture techniques - Part 11: Crypto suite PRESENT-80 security services for air interface communications". Retrieved 2021-10-29.
External links
edit- PRESENT: An Ultra-Lightweight Block Cipher
- http://www.lightweightcrypto.org/implementations.php Software Implementations in C and Python
- https://web.archive.org/web/20160809024354/http://cis.sjtu.edu.cn/index.php/Software_Implementation_of_Block_Cipher_PRESENT_for_8-Bit_Platforms C implementation
- http://www.emsec.rub.de/media/crypto/veroeffentlichungen/2011/01/29/present_ches2007_slides.pdf Talk slides from Cryptographic Hardware and Embedded Systems