We investigate S-boxes defined by pairs of Orthogonal Cellular Automata (OCA), motivated by the fact that such CA always define bijective vectorial Boolean functions, and could thus be interesting for the design of block ciphers. In particular, we perform an exhaustive search of all nonlinear OCA pairs of diameter $d=4$ and $d=5$, which generate S-boxes of size $6\times 6$ and $8\times 8$, respectively. Surprisingly, all these S-boxes turn out to be linear, and thus they are not useful for the design of confusion layers in block ciphers. However, a closer inspection of these S-boxes reveals a very interesting structure. Indeed, we remark that the linear components space of the OCA-based S-boxes found by our exhaustive search are themselves the kernels of linear CA, or, equivalently, \emph{polynomial codes}. We finally classify the polynomial codes of the S-boxes obtained in our exhaustive search and observe that, in most cases, they actually correspond to the cyclic code with generator polynomial $X^{b}+1$, where $b=d-1$. Although these findings rule out the possibility of using OCA to design good S-boxes in block ciphers, they give nonetheless some interesting insights for a theoretical characterization of nonlinear OCA pairs, which is still an open question in general.
翻译:令人惊讶的是,所有这些S-框最终都是线性的,因此对于在区密码中设计混乱的层没有用处。然而,对这些S-箱的更仔细的检查揭示了一个非常有趣的结构。事实上,我们指出,我们详尽的搜索中发现的所有非线性OCA对子的线性空间是线性CA的内核,或相当于mph{polynomiacol code。我们最后将我们详尽的搜索中获取的S-箱的多线性代码分类为非线性,但是,在多数情况下,这些S-box的线性部分内容实际上都与S-x规则相一致。