Patent ID: 7187769
Filing Date: 2007-03-06
Classification: H04L

Abstract:
1. A random function generating apparatus for a data encryption device comprising: input means for inputting digital signals representing parameter values of each of a plurality of functions each of a composite function composed of first and second functions of different algebraic structures, and for storing them in storage means; candidate function generating means for generating candidate functions each of said composite function formed of said first and second functions of different algebraic structures based on said plurality of parameters read out of the storage means; resistance evaluating means for evaluating the resistance of each of said candidate functions to a cryptanalysis; and selecting means for selecting those of said resistance-evaluated candidate functions which are highly resistant to said cryptanalysis and outputting digital signals representing selected ones of said resistance-evaluated candidate functions; wherein one of said first and second functions of different algebraic structures is resistant to each of differential cryptanalysis and linear cryptanalysis, wherein said input means is adapted to input digital signals representing input difference values Δx and output mask values Γy and storing them in the storage means, and said resistance evaluating means comprises at least one of: higher-order-differential cryptanalysis resistance evaluating means for: calculating a minimum value of the degree of a Boolean polynomial for input bits by which output bits of each of said candidate functions are expressed; and evaluating the resistance of said each candidate function to higher order cryptanalysis based on the result of said calculation; interpolation-cryptanalysis resistance evaluating means for: expressing an output value y as y=f partitioning-cryptanalysis resistance evaluating means for: dividing all input values of the function to be evaluated and the corresponding output values into input subsets and output subsets; calculating an imbalance of the relationships between the input subset and the output subset with respect to their average corresponding relationship; and evaluating the resistance of said candidate function to partitioning cryptanalysis based on the result of said calculation; and differential-linear cryptanalysis resistance evaluating means for: calculating, for every set of input difference value Δx and output mask value Γy of the function S(x) to be evaluated a number of input values x for which the inner product of (S(x)+S(x+Δx)) and said output mask value Γy is 1; and evaluating the resistance of said candidate function to differential-linear cryptanalysis based on the result of said calculation.