Category Archives: encryption

SIMECK Block Cipher

Introduction The Simeck Family of Lightweight Block Ciphers written by Gangqiang Yang, Bo Zhu, Valentin Suder, Mark D. Aagaard, and Guang Gong was published in 2015. According to the authors, SIMECK combines the good design components of both SIMON and … Continue reading

Posted in arm, assembly, cryptography, encryption, programming, x86 | Tagged , , , , , , , | Leave a comment

BlaBla Stream Cipher

Introduction BlaBla is a stream cipher intended for 64-bit CPUs, which was published by the cryptographer Jean-Philippe Aumasson on his Github in April 2017. BlaBla uses the same permutation function as the cryptographic hash algorithm BLAKE2b, which is derived from … Continue reading

Posted in assembly, cryptography, encryption, programming, security | Tagged , , , | Leave a comment

HIGHT Block Cipher

Introduction HIGHT which stands for HIGh security and light weigHT is a block cipher first proposed at the 2006 Cryptographic Hardware and Embedded Systems (CHES) conference held in Japan. HIGHT attracted a lot of attention upon its release because it … Continue reading

Posted in assembly, cryptography, encryption, programming, security | Tagged , , , | Leave a comment

RoadRunneR Block Cipher

Introduction RoadRunneR is a compact, fast Bitslice Block cipher designed specifically for Low Cost 8-bit CPUs. Details of the cipher were published here in 2015, and proposed by Adnan Baysal and Suhap Sahin at the Lightweight Cryptography for Security and … Continue reading

Posted in assembly, cryptography, encryption, programming, security | Tagged , , | Leave a comment

CHAM Block Cipher

Introduction CHAM: A Family of Lightweight Block Ciphers for Resource-Constrained Devices was published in December 2017 at the 20th Annual International Conference on Information Security and Cryptology held in South Korea. CHAM consists of three ciphers, CHAM-64/128, CHAM-128/128, and CHAM-128/256 … Continue reading

Posted in assembly, cryptography, encryption, programming | Tagged , , | 1 Comment

Magic “Nothing Up My Sleeve” Numbers

Introduction Just to be clear, this post does not endorse any cryptographic algorithms. It will only illustrate using source code how some magic numbers are created in such algorithms. Nothing Up My Sleeve Numbers (NUMSN) are numeric constants in cryptographic … Continue reading

Posted in cryptography, encryption, programming | Tagged , , , , , , , , , , , , , | 1 Comment

Ascon Permutation Function

Introduction Ascon is an Authenticated Encryption Associated Data (AEAD) algorithm submitted to The Competition for Authenticated Encryption: Security, Applicability, and Robustness (CAESAR) It was designed by Christoph Dobraunig, Maria Eichlseder, Florian Mendel and Martin Schläffer Some of the authors mentioned … Continue reading

Posted in cryptography, encryption, programming, security | Tagged , , | Leave a comment

Keccak Permutation Function

Introduction Permutation functions are incredibly useful, and Keccak which is used to implement the SHA-3 standard is a like a swiss army knife of cryptographic primitives. Designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche, Keccak can … Continue reading

Posted in assembly, cryptography, encryption, programming | Tagged , , , | 1 Comment

Gimli: a cross-platform permutation function

Introduction Gimli, named after the Lord Of The Rings character, is a 384-bit permutation function, designed specifically to be lightweight, high performance, and secure across multiple architectures. It was designed by Daniel J. Bernstein, Stefan Kölbl, Stefan Lucks, Pedro Maat … Continue reading

Posted in assembly, cryptography, encryption, programming, security | Tagged , , , , , | 3 Comments

Light Message Authentication Code (LightMAC)

Introduction A Message Authentication Code or MAC is a cryptographic primitive that enables two parties using a shared secret key to authenticate messages exchanged between them. MACs are used daily to secure online communications and will inevitably become a critical … Continue reading

Posted in assembly, cryptography, encryption, programming | Tagged , , , , , , , , , | Leave a comment