This paper investigates large linear mappings with very good diffusion and efficient software implementations, that can be used as part of a block cipher design. The mappings are derived from linear codes over a small field (typically F 2 4) with a high dimension (typically 16) and a high minimum distance. This results in diffusion matrices with equally high dimension and a large branch number. Because we aim for parameters for which no MDS code is known to exist, we propose to use more flexible algebraic-geometry codes. We present two simple yet efficient algorithms for the software implementation of matrix-vector multi-plication in this context, and derive conditions on the generator matrices of the codes to yield efficient encoders. We then specify an appropriate code and use its automorphisms as well as random sampling to find good such matrices. We provide concrete examples of parameters and implementations, and the corresponding assembly code. We also give performance figures in an example of application which show the interest of our ap-proach.
['Daniel Augot', 'Pierre-Alain Fouque', 'Pierre Karpman']
Diffusion Matrices from Algebraic-Geometry Codes with Efficient SIMD Implementation