We propose a practical flexible (or arbitrary) length small domain block cipher.
FNR can cipher small domain data formats like IPv4, Port numbers, MAC Addresses, IPv6 address, any random short strings and numbers while preserving their input length.
In addition to the classic Feistel networks, Naor and Reingold propose usage of pair-wise independent permutation (PWIP) functions in first and last rounds of LR constructions to provide additional randomness and security. But their PWIP functions are based on Galois Fields. Representing GF(2n) for different input lengths would be
complicated for implementation. For this reason, the PWIP functions we propose are based on random N X N Invertible matrices.
In this paper we propose the specification of FNR mode of encryption. Its properties, limitations, features etc.
We provide possible example applications of this block cipher for preserving formats of input types like IPv4 addresses, Credit card numbers. We provide reference implementation\'s experimental results and performance numbers in different setups. FNR should be used only when deterministic encryption is needed. It does not provide semantic security.
FNR denotes Flexible Naor and Reingold