Lightweight Cryptography Primitives
 All Data Structures Files Functions Variables Typedefs Macros Pages
Macros | Functions
internal-simp.h File Reference

SimP permutation family. More...

#include "internal-util.h"

Go to the source code of this file.

Macros

#define SIMP_256_STATE_SIZE   32
 State size of the SimP-256 permutation.
 
#define SIMP_192_STATE_SIZE   24
 State size of the SimP-192 permutation.
 

Functions

void simp_256_permute (unsigned char state[SIMP_256_STATE_SIZE], unsigned steps)
 Permutes a state with SimP-256. More...
 
void simp_192_permute (unsigned char state[SIMP_192_STATE_SIZE], unsigned steps)
 Permutes a state with SimP-192. More...
 

Detailed Description

SimP permutation family.

SimP-256 and SimP-192 are used by the Oribatida submission to round 2 of the NIST Lightweight Cryptography Competition. The permutations are built around reduced-round variants of the Simon-128-128 and Simon-96-96 block ciphers.

References: https://www.isical.ac.in/~lightweight/oribatida/

Function Documentation

void simp_192_permute ( unsigned char  state[SIMP_192_STATE_SIZE],
unsigned  steps 
)

Permutes a state with SimP-192.

Parameters
stateState to be permuted.
stepsNumber of steps to perform (usually 2 or 4).
void simp_256_permute ( unsigned char  state[SIMP_256_STATE_SIZE],
unsigned  steps 
)

Permutes a state with SimP-256.

Parameters
stateState to be permuted.
stepsNumber of steps to perform (usually 2 or 4).