A Graph Theoretic Approach to Construct Desired Cryptographic Boolean Functions

A Graph Theoretic Approach to Construct Desired Cryptographic Boolean Functions

axioms Article A Graph Theoretic Approach to Construct Desired Cryptographic Boolean Functions Modjtaba Ghorbani 1,*, Matthias Dehmer 2,3,4, Vahid Taghvayi-Yazdelli 1 and Frank Emmert-Streib 5,6 1 Department of Mathematics, Faculty of Science, Shahid Rajaee, Teacher Training University, Tehran 16785-136, Iran; [email protected] 2 Steyr School of Management, University of Applied Sciences Upper Austria, 4400 Steyr, Austria; [email protected] 3 Steyr School of Management, University of Applied Sciences Upper Austria, 4400 Steyr, Austria 4 College of Artificial Intelligence, Nankai University, Tianjin 300071, China 5 Predictive Medicine and Data Analytics Lab, Department of Signal Processing, Tampere University of Technology, 33100 Tampere, Finland; frank.emmert-streib@tut.fi 6 Predictive Society and Data Analytics Lab, Faculty of Information Technology and Communication Sciences, Tampere University, 33720 Tampere, Finland * Correspondence: [email protected] Received: 7 January 2019; Accepted: 26 March 2019; Published: 3 April 2019 Abstract: In this paper, we present four product operations to construct cryptographic boolean functions from smaller ones with predictable Walsh spectrum. A lot of cryptographic properties of boolean functions can be presented by their Walsh spectrum. In our method, we use the product of Cayley graphs to present new boolean functions with desired Walsh spectrum and investigate their non-linearity, algebraic and correlation immunity. Keywords: boolean functions; Walsh spectrum; Cayley graphs; algebraic immunity; non-linearity 1. Introduction Boolean functions are fundamental components of a cryptographic algorithm. Designing boolean functions with desired cryptographic properties is an important problem. Boolean functions should have some properties like balancedness, high non-linearity, algebraic immunity, correlation immunity and propagation criterion to be used in a symmetric algorithm. These properties make the cipher resistant against attacks like differential and linear cryptanalysis, correlation and algebraic attacks and statistical tests. Correlation immune functions were introduced by Siegenthaler [1] to resist against a class of divide and conquer attacks on certain models of stream ciphers. Algebraic attacks [2,3] have become a powerful tool that can be used for almost all types of cryptographic systems. Algebraic attacks will be more efficient if boolean functions have low degrees. All cryptographic properties can be measured by the Walsh spectrum of a boolean function. Hence, constructing boolean functions with desired Walsh spectrum can help designers to use practical boolean functions. In this paper, we aim to propose four new methods to construct larger boolean functions from smaller ones with predictable cryptographic properties. In 1999 Bernasconi et al. made a new characterization for boolean functions exploiting the graph theoretic approach. They proved that any boolean function can be represented by a Cayley graph and eigenvalues of this Cayley graph correspond to its Walsh spectrum. The authors defined a Cayley n n graph on the boolean function as f : Z2 −! Z2, where G = Cay(Z2 , W f ) where W f is the support of f n n −1 and two vertices x, y 2 Z2 are incident if x ⊕ y 2 W f . Since for all elements x 2 Z2 we have x = x, n any subset of Z2 is symmetric. The adjacency matrix of a boolean function A f is the adjacency matrix Axioms 2019, 11, 483; doi:10.3390/axioms11040483 www.mdpi.com/journal/axioms Axioms 2019, 11, 483 2 of 10 of its associated Cayley graph and (A f )ij = f (i ⊕ j). The following theorem is the main result of [4] where the function W( f ) is the Walsh transform of the boolean function f . n n Theorem 1. Let f : Z2 −! Z2, and let li, 0 ≤ i ≤ 2 − 1 be the eigenvalues of its associated Cayley graph. n (i) For any 0 ≤ i ≤ 2 − 1, li = W( f )(i). (ii) The multiplicity of the largest spectral coefficient of f , W( f )(0) is equal to 2n−dimhW f i. In [5] Stanica investigated some cryptographic properties of boolean functions in terms of their eigenvalues and adapted some graph theory concepts with cryptographic properties of these functions. In the following we state some of these results. Corollary 1. Let f be a boolean function and the eigenvalues of G f be ordered as l1 ≥ l2 ≥ · · · ≥ lv. lv 1. Let g be the multiplicity of the lowest eigenvalue of G f and l2 6= 0, in this case minfg + 1, 1 − g ≤ l2 c(G f ) ≤ jW f j where c(G f ) is the chromatic number of G f . 2. A boolean function f depends linearly on a variable xi if and only if the eigenvalues for Cayley graph G f n−1 satisfy l0 = 2 and if i-th component of binary representation of a 6= 0 equals to 0, then la = 0. n l 2n 3. For an unbalanced correlation immune function f on Z2 of order l, there are ∑s=1 ( s ) zero eigenvalues of G f . In Section2, we first start with some definitions and basic properties of boolean functions and their cryptographic properties. Next we state some algebraic graph theory that will be used throughout the paper. In Section3, we first present some related works to our subject and next we propose our methods to construct new boolean functions. Finally, we present some theorems to investigate their cryptographic properties. 2. Definitions and Preliminaries 2.1. Boolean Functions n Consider the field Z2 with elements f0, 1g. Let n be a positive integer and Z2 = f(xn, ..., x1)jxi 2 n Z2, 1 ≤ i ≤ ng be the binary representation of the positive integer set f0, 1, ..., 2 − 1g. Here, we show n addition in integer sets by +, and addition by module 2 by ⊕. For x, y 2 Z2 , define x ⊕ y = (x1 ⊕ n y1, ..., xn ⊕ yn) and x.y = x1y1 ⊕ ... ⊕ xnyn. We also define the Hamming weight of a vector x 2 Z2 n as hwt(x) = jfijxi = 1gj. Now an n-variable boolean function f (xn, ..., x2, x1) is a map from Z2 n to Z2. The set of all boolean functions over Z2 is denoted by Fn. An n-variable boolean function f (xn, ..., x2, x1) can be represented as a multivariate polynomial over Z2 called algebraic normal form (ANF) as n M M M M f (xn, ..., x1) = a0 aixi aijxixj ··· a1···nx1x2 ··· xn. i=0 1≤i,j≤n The algebraic degree of a boolean function f is the number of variables in the most existing variables of its multiplicative terms with nonzero coefficient in its ANF and denoted by deg( f ). A boolean function of the form f (x) = a0 ⊕ a1x1 ⊕ ... ⊕ anxn is called affine and if a0 = 0, is called linear. n n n The binary vector of length 2 as ( f (0), f (1), ..., f (2 − 1)) 2 Z2 , is said to be the truth table of n n f . We also denote the support of f by W f as fx 2 Z2 j f (x) = 1g. Clearly 0 ≤ jW f j ≤ 2 and also the hamming weight of f is hwt( f ) = jW f j. n One can see that the ANF of a boolean function f : Z2 −! Z2 with support W f is M a f (xn, ··· , x1) = x a=(an,··· ,a1)2W f Axioms 2019, 11, 483 3 of 10 a (an) (a1) where x = xn ··· x1 = (xn ⊕ an ⊕ 1) ··· (x1 ⊕ a1 ⊕ 1). So we have n M f (xn, ··· , x1) = ∏(xi ⊕ ai ⊕ 1). (1) a2W f i=1 The distance between two boolean functions f , g 2 Fn is defined as d( f , g) = hwt( f ⊕ g). For each n n f (x) boolean function f : Z2 −! Z2, the sign function is fb : Z2 −! f−1, 1g where fb(x) = (−1) . n The Walsh transform of a boolean function is a function W( f ) from Z2 to Z where 2n−1 W( f )(w) = ∑ f (x)(−1)w.x. x=0 It is clear that W( f )(0) = jW f j and the Walsh spectrum of a boolean function can be defined as n 2n−1 f (x)+w.x (W( f )(0), ··· , W( f )(2 − 1)). Also the relation between W( f )(w) and W( fb)(w) = ∑x=0 (−1) is as follows 1 W( f )(w) = 2n−1d(w) − W( fb)(w), (2) 2 W( fb)(w) = 2nd(w) − 2W( f )(w), (3) where d(w) = 1 if w = 0 and d(w) = 0, otherwise. Any cryptographical property comes from a concrete attack or a potential security threat to cryptosystems. A lot of cryptographic properties of boolean functions can be described by their Walsh spectrum. The Walsh spectrum has been mostly employed for analysis and generalization of desired cryptographic boolean functions [6–8]. A boolean function f is called balanced if the number of outputs 0 is equal to the number of n−1 outputs 1 or jW f j = 2 . The nonlinearity of a boolean function f denoted by nl( f ) is an important criterion to measure the distance of the boolean function with the set of all affine functions. This criterion is a security property to measure how resistant a boolean function is against linear cryptanalysis which is a common and strong attack. If a boolean function has low nonlinearity, an attacker can approximate it by an affine function. A boolean function with high nonlinearity cannot be approximated by linear or affine functions. The nonlinearity of a boolean function can be measured by the following lemma. Lemma 1. [9] For an n-variable boolean function f , n−1 1 nl( f ) = 2 − maxw2Z n jW( fb)(w)j. 2 2 By Lemma1 and Equation (3), one can deduce the following lemma. Lemma 2. n n−1 nl( f ) = minfhwt( f ) − hwt( f ) − max n jW( f )(w)jg , 2 , 2 w2Z2 .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us