An Algebraic System for Constructing Cryptographic Permutations over
Finite Fields
In recent years a new class of symmetric-key primitives over GF(p) that are essential to Multi-party computation and Zero-knowledge proofs based protocols have emerged. A number of these constructions show, that following alternative design strategies to the classical SPN and Feistel networks, leads to more efficient cipher and hash function designs. In view of these efforts, in this work we build an \emph{algebraic framework} that allows the systematic exploration of viable and efficient design strategies for constructing symmetric-key (iterative) permutations over GF(p). We propose a generalized triangular polynomial dynamical system (GTDS), and based on the GTDS we provide a generic definition of an iterative (keyed) permutation Our GTDS-based generic definition is able to describe the three most well-known design strategies, namely SPNs, Feistel networks and Lai--Massey, and instantiations of them. Most notably, this definition allows for instantiations of novel and efficient (keyed) permutations. As example, we show that the partial SPN-based permutations and the recently proposed Griffin design, which does not explicitly follow Feistel or SPN, can be described using the generic GTDS-based definition. We show that GTDS-based permutations are able to achieve exponential degree growth - a property desirable for constructing efficient cryptographic permutations. In addition, we prove a general upper bound on the differential uniformity of the GTDS. Given that the upper bound on differential uniformity is small enough, we also prove that a GTDS-based two round block cipher is -close to being pairwise independent. Finally, we provide the discrepancy analysis, a technique used to measure the (pseudo-)randomness of a sequence, for analyzing the randomness of the sequence generated by the generic permutation described by GTDS.
View on arXiv