RUS  ENG
Full version
JOURNALS // Prikladnaya Diskretnaya Matematika. Supplement // Archive

Prikl. Diskr. Mat. Suppl., 2014 Issue 7, Pages 43–48 (Mi pdma127)

This article is cited in 4 papers

Mathematical Methods of Cryptography

SIBCiphers – symmetric iterative block ciphers composed of Boolean functions depending on small number of variables

G. P. Agibalov

Tomsk State University, Tomsk

Abstract: A class of symmetric iterative block ciphers called SIBCiphers is defined. Each round of a cipher in this class encrypts bitstrings of length $n$ into bitstrings of length $n$ according to a system of $n$ Boolean functions each depending on $k\leq n$ arguments taken from the bitstring on the inputs of the round and jointly representing an injective mapping. Formally, for $l$-th round in a $r$-round SIBCipher, there exist an injection $g^{(l)}\colon\{0,1\}^n\to\{0,1\}^n$, Boolean functions $g_i^{(l)}\colon\{0,1\}^k\to\{0,1\}$, and mappings $\eta_i^{(l)}\colon\{1,2,\dots,k\}\to\{1,2,\dots,n\}$, $i=1,2,\dots,n$, such that $\{\eta_i^{(l)}(j)\colon i=1,2,\dots,n;\ j=1,2,\dots,k\}=\{1,2,\dots,n\}$ and if $u=u_1u_2\dots u_n\in\{0,1\}^n$, then $g^{(l)}(u)=g_1^{(l)}(v_1)g_2^{(l)}(v_2)\dots g_n^{(l)}(v_n)$, where $v_i=u_{i_1}u_{i_2}\dots u_{i_k}$ and $i_j=\eta_i^{(l)}(j)$, $i=1,2,\dots,n$; $j=1,2,\dots,k$. A round key consists of some of Boolean functions ($g_i^{(l)}$) at the round and of numbers ($\eta_i^{(l)}(j)$) of their actual arguments. The ciphertext bitstring is obtained by permuting the bits on the outputs of the last ($r$-th) round.
Contemporary symmetric iterative block ciphers with additive round keys form a subclass of SIBCiphers. Two other subclusses of SIBCiphers called by names Lucifer and Feistel are constructed according to the known cryptographic schemes originally suggested by H. Feistel and implemented in ciphers LUCIFER and DES respectively.
In SIBCipher of Feistel's subclass, $g^{(l)}(u)=L_1R_1$ if $u=L_0R_0$ for $L_0,R_0\in\{0,1\}^{n/2}$, $L_1=R_0$ and $R_1=p^{(l)}(L_0)\oplus f^{(l)}(R_0)$, where $p\colon\{0,1\}^{n/2}\to\{0,1\}^{n/2}$ is a permutation and, for $z=R_0$, $f^{(l)}(z)=f_1^{(l)}(v_1)f_2^{(l)}(v_2)\dots f_{n/2}^{(l)}(v_{n/2})$, $v_i=z_{i_1}z_{i_2}\dots z_{i_k}$, and $i_j=\eta_i^{(l)}(j)$ for some Boolean functions $f_i^{(l)}\colon\{0,1\}^k\to\{0,1\}$ and for a surjective system of mappings $\eta_i^{(l)}\colon\{1,2,\dots,k\}\to\{1,2,\dots,n/2\}$, $i=1,2,\dots,n/2$; $j=1,2,\dots,k$.
SIBCipher of the subclass Lucifer is characterized by the folloving properties: (a) $n=ks$, $s >1$; (b) for any pair $(l,i)$, $l=1,2,\dots,r$ and $i=1,2,\dots,s$, the mapping $G_i^{(l)}\colon\{0,1\}^k\to\{0,1\}^k$ defined as $G_i^{(l)}(z)=g^{(l)}_{(i-1)k+1}(z)g^{(l)}_{(i-1)k+2}(z)\dots g^{(l)}_{ik}(z)$ for all $z\in\{0,1\}^k$, is a substitution; (c) $\eta^{(l)}_{(i-1)k+1} =\eta^{(l)}_{(i-1)k+2}=\dots=\eta^{(l)}_{ik}$; and (d) the mapping $p^{(l)}\colon\{0, 1\}^n\to\{0,1\}^n$, where $p^{(l)}(u)=p^{(l)}_1(u)p^{(l)}_2(u)\dots p^{(l)}_s(u)$ and $p^{(l)}_i(u)=u_{\eta^{(l)}_{ik}(1)}u_{\eta^{(l)}_{ik}(2)}\dots u_{\eta^{(l)}_{ik}(k)}$ for $i=1,2,\dots,s$, is a permutation.

Keywords: cryptography, Boolean functions, symmetric iterative block ciphers, Feistel network, cipher LUCIFER.

UDC: 519.113.6



© Steklov Math. Inst. of RAS, 2024