Category Archives: security

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 , , , , , | 2 Comments

PRESENT Block Cipher

Introduction PRESENT is a 64-bit block cipher published in 2007 which provides support for key lengths of 80 and 128-bits. It was designed specifically for hardware implementation and uses a Substitution Permutation Network (SPN) structure which is similar to AES … Continue reading

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

SM3 Cryptographic Hash Algorithm (Chinese Standard)

Introduction In December of 2007, the Chinese National Cryptographic Administration Bureau released the specification of a Trusted Cryptography Module, detailing a cryptoprocessor to be used within the Trusted Computing framework in China. The module specifies a set of cryptographic algorithms … Continue reading

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

Chaskey-LTS Block Cipher

Introduction The Chaskey cipher is a 128-bit block, 128-bit key symmetric encryption algorithm which is the underlying function used for the Chaskey Message Authentication Code (MAC). It’s based on an Even-Mansour construction which makes it very simple to implement and … Continue reading

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

CubeMAC128 Message Authentication Code

Introduction CubeMAC128 is a cryptographic Message Authentication Code (MAC) designed for packet authentication that was proposed in 2010 by mathematician and cryptographer Daniel J. Bernstein. The CubeMAC proposal was in response to NIST concerns about using CubeHash as a MAC … Continue reading

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

Speck Block Cipher

Introduction Speck is a family of lightweight block ciphers publicly released by the National Security Agency (NSA) in June 2013. It’s an ARX (add-rotate-xor) design optimized for performance in software implementations and has been suggested for use on resource constrained … Continue reading

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

Noekeon Block cipher

Introduction Noekeon is a 128-bit block cipher designed by Joan Daemen, Michaël Peeters, Gilles Van Assche, Vincent Rijmen and submitted to the NESSIE project in September 2000. The two ciphers are “direct mode” Noekeon, to be used for maximum efficiency … Continue reading

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

Chaskey Message Authentication Code

Introduction Chaskey is a lightweight MAC algorithm optimised for 32-bit micro-controllers designed by Nicky Mouha, Bart Mennink, Anthony Van Herrewege, Dai Watanabe, Bart Preneel and Ingrid Verbauwhede. It is based on a 128-bit block cipher, the Chaskey cipher, which uses … Continue reading

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

Half SipHash

Introduction SipHash: a fast short-input Pseudo-Random-Function(PRF) was designed and published in 2012 by Jean-Philippe Aumasson and Daniel J. Bernstein. Last month, MR. Aumasson posted to the kernel-hardening mail list a link to a “Half SipHash” implementation which is intended to … Continue reading

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

Poly1305 Message Authentication Code

Introduction Poly1305 is a cryptographic Message Authentication Code (MAC) designed and published in 2004 by Daniel J. Bernstein. It can be used to verify the data integrity and authenticity of a message. Adam Langley has published details in RFC 7539 … Continue reading

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