New Applications of T-Functions in Block Ciphers and Hash Functions
A T-function is a mapping from n-bit words to n-bit words in which for each 0 ≤ i <n, bit i of any output word can depend only on bits 0,1,..., i of any input word. All the boolean operations and most of the numeric operations in modern processors are T-functions, and all their compositions are also T-functions. Our earlier papers on the subject dealt with “crazy” T-functions which are invertible mappings (including Latin squares and multipermutations) or single cycle permutations (which can be used as state update functions in stream ciphers). In this paper we use the theory of T-functions to construct new types of primitives, such as MDS mappings (which can be used as the diffusion layers in substitution/permutation block ciphers), and self-synchronizing hash functions (which can be used in self-synchronizing stream ciphers or in “fuzzy” string matching applications).
- 1.Biham, E., Shamir, A.: Differential cryptanalysis of DES-like cryptosystems. In: Menezes, A., Vanstone, S.A. (eds.) CRYPTO 1990. LNCS, vol. 537, pp. 2–21. Springer, Heidelberg (1991)Google Scholar
- 2.Broder, A., Glassman, S., Manasse, M., Zweig, G.: Syntactic Clustering of the Web, Available from http://decweb.ethz.ch/WWW6/Technical/Paper205/Paper205.html
- 3.Daemen, J., Rijmen, V.: AES Proposal: Rijndael. version 2 (1999)Google Scholar
- 7.Matsui, M.: Linear cryptanalysis method for DES cipher. In: Helleseth, T. (ed.) EUROCRYPT 1993. LNCS, vol. 765, pp. 386–397. Springer, Heidelberg (1994)Google Scholar
- 8.Tridgell, A., Mackerras, P.: The rsync algorithm, Available from http://rsync.samba.org/tech_report/