Abstract
It is known that correlation-immune (CI) Boolean functions used in the framework of side channel attacks need to have low Hamming weights. In this paper, we study minimum Hamming weights of 3-CI Boolean functions, and prove that the Carlet-Chen conjecture is equivalent to the famous Hadamard conjecture. Moreover, we propose a method to construct low-weight n-variable CI functions through d-linearly independent sets, which can provide numerous minimum-weight d-CI functions. Particularly, we obtain some new values of the minimum Hamming weights of d-CI functions in n variables for \(n\le 13\).
Similar content being viewed by others
References
Baumert L., Golomb S.W., Hall M.J.: Discovery of an Hadamard matrix of order 92. Bull. Am. Math. Soc. 68(3), 237–238 (1962).
Bhasin S., Carlet C., Guilley S.: Theory of masking with codewords in hardware: low-weight dth-order correlation-immune Boolean functions. IACR Cryptology ePrint Archive. Report 2013/303 (2013).
Borissov Y., Braeken A., Nikova S., Preneel B.: On the covering radii of binary reed-muller codes in the set of resilient Boolean functions. IEEE Trans. Inf. Theory 51(3), 1182–1189 (2005).
Carlet C.: Boolean Functions for Cryptography and Error Correcting Codes. Chapter of the monography “Boolean Models and Methods in Mathematics, Computer Science, and Engineering”, pp. 257–397. Cambridge University Press, Cambridge (2010) . http://www-roc.inria.fr/secret/Claude.Carlet/pubs.html.
Carlet C., Chen X.: Constructing low-weight \(d\)th-order correlation-immune Boolean functions through the Fourier-Hadamard transform. IEEE Trans. Inf. Theory 64(4), 2969–2978 (2018).
Carlet C., Guilley S.: Side-channel indistinguishability. In: Proceedings of HASP–13. 2nd International Workshop on Hardware and Architectural Support for Security and Privacy, pp. 9:1–9:8 (2013).
Cusick T.W., Stănică P.: Cryptographic Boolean Functions and Applications, 2nd edn. Elsevier-Academic Press, Cambridge (2017).
Djokovic D.Z.: Hadamard matrices of order 764 exist. Combinatorica 28(4), 487–489 (2008).
Georgiou S., Koukouvinos C., Seberry J.: Hadamard matrices, orthogonal designs and construction algorithms. Designs 563, 133–205 (2003).
Hadamard J.: Résolution d’une question relative aux déterminants. Bull. Sci. Math. 17, 240–246 (1893).
Kharaghani H., Tayfeh-Rezaie B.: A Hadamard matrix of order 428. J. Comb. Des. 13(6), 435–440 (2005).
Kocher P.: Timing attacks on implementations of Diffie-Hellman, RSA, DSS, and other systems. Advances in Cryptology—CRYPTO’96 . LNCS 1109, pp. 104–113. Springer, Berlin (1996).
Kocher P., Jaffe J., Jun B.: Differential power analysis. Advances in Cryptology–CRYPTO ’99. LNCS 1666, pp. 388–397. Springer, Berlin (1999).
Mangard S., Pramstaller N., Oswald E.: “Successfully attacking masked AES hardware implementations,” Cryptographic Hardware and Embedded Systems—CHES 2005. LNCS 3659, pp. 157–171. Springer, Berlin (2005).
Mangard S., Oswald E., Popp T.: Power Analysis Attacks: Revealing the Secrets of Smart Cards (Advances in Information Security). Springer, New York (2007).
Mazumdar B., Mukhopadhyay D., Sengupta I.: Constrained search for a class of good bijective s-boxes with improved DPA resistivity. IEEE Trans. Inf. Forensics Secur. 8(12), 2154–2163 (2013).
Picek S., Papagiannopoulos K., Ege B., Batina L., Jakobovic D: Confused by Confusion: Systematic Evaluation of DPA Resistance of Various S-boxes. Progress in Cryptology—INDOCRYPT 2014. LNCS 8885, pp. 374–390. Springer, Berlin (2014)
Schmidt B.: Cyclotomic integers and finite geometry. J. Am. Math. Soc. 12(4), 929–952 (1999).
Siegenthaler T.: Correlation immunity of nonlinear combining functions for cryptographic applications. IEEE Trans. Inf. Theory 30(5), 776–780 (1984).
Trichina E., Seta D.D., Germani L.: Simplified adaptive multiplicative masking for AES. Cryptographic Hardware and Embedded Systems—CHES 2002. LNCS 2523, pp. 187–197. Springer, Berlin (2002).
Wallis J.S.: On the existence of Hadamard matrices. J. Comb. Theory A. 21(2), 188–195 (1976).
Xiao G.Z., Massey J.L.: A spectral characterization of correlation-immune combining functions. IEEE Trans. Inf. Theory 34(3), 569–571 (1988).
Acknowledgements
The author would like to thank the financial support from the National Natural Science Foundation of China (Grant 61572189).
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by K. T. Arasu.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendices
Appendix A: Some results on the maximum number of orthogonal vectors in \({\mathbb {F}}_{2}^{n}\)
A group of vectors in \({\mathbb {F}}_{2}^{n}\) are said to be d-orthogonal if any m vectors of them are orthogonal, for \(1\le m\le d\). We use \(OA_{n,d}\) to denote the maximum number of d-orthogonal vectors in \({\mathbb {F}}_{2}^{n}\). Let \({\mathbf {p}}_1,{\mathbf {p}}_2,\ldots ,{\mathbf {p}}_m\) be d-orthogonal row vectors and M be the matrix \([{\mathbf {p}}_1^T,{\mathbf {p}}_2^T,\ldots ,{\mathbf {p}}_m^T]\). Clearly, if we negate any columns or exchange any rows of M, then the columns of the induced matrix are still d-orthogonal.
Let \({\mathbf {p}}_1,{\mathbf {p}}_2,\ldots ,{\mathbf {p}}_m\) be 4-orthogonal column vectors and \(M=[{\mathbf {p}}_1,{\mathbf {p}}_2,\ldots ,{\mathbf {p}}_m]\). Clearly, by exchanging rows, the first four columns of M can be transformed to the following vectors one by one:
where \({\mathbf {0}}_{i}=(0,\ldots ,0)\) and \({\mathbf {1}}_{i}=(1,\ldots ,1)\in {\mathbb {F}}_{2}^{i}\). Let \({\mathbf {q}}_5=[\alpha _1,\ldots ,\alpha _{8}]^T\), where \(\alpha _j\in {\mathbb {F}}_{2}^{n/8}\). Suppose \({\mathbf {q}}_1\), \({\mathbf {q}}_2\), \({\mathbf {q}}_3\), \({\mathbf {q}}_4\) and \({\mathbf {q}}_5\) are 4-orthogonal. Clearly, \(\alpha _1,\ldots ,\alpha _{8}\) must be balanced vectors, since \({\mathbf {q}}_1\), \({\mathbf {q}}_2\), \({\mathbf {q}}_3\) and \({\mathbf {q}}_5\) are 4-orthogonal. Let \({\mathbf {q}}_4=[\beta _1,\ldots ,\beta _{8}]^T\) and \(x_i\) be the Hamming weight of \(\alpha _i\oplus \beta _i\), where \(1\le i\le 8\). Since \({\mathbf {q}}_5\oplus {\mathbf {q}}_4\oplus c_1{\mathbf {q}}_1\oplus c_2{\mathbf {q}}_2\oplus c_3{\mathbf {q}}_3\) is balanced for \((c_1,c_2,c_3)\in {\mathbb {F}}_{2}^{3}\) and \(wt(c_1,c_2,c_3)\le 2\), we have
Therefore,
where \(0\le C\le \frac{n}{8}\).
Take \(n=48\). Then by exchanging rows or negating the column, \({\mathbf {q}}_5\) can be transformed to \((\gamma _1,\gamma _2,\gamma _2,\gamma _1,\gamma _2,\gamma _1,\gamma _1,\gamma _2)\), where \((\gamma _1,\gamma _2)\) is
If \((\gamma _1,\gamma _2)=(0, 0, 0, 1, 1, 1,1,1,1,0,0,0)\), then there is no \({\mathbf {q}}_6=(\theta _1,\ldots ,\theta _{8})\) such that \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_6\) are 4-orthogonal. Otherwise, \(\theta _1,\ldots ,\theta _{8}\) must be balanced vectors and
That is, \(wt(\theta _1\oplus \beta _1)=3\), which is contradictory to the fact that \(\theta _1\) and \(\beta _1\) are balanced vectors.
Now consider the case \((\gamma _1,\gamma _2)=(0, 0, 1, 0, 1, 1,0,1,1,0,0,1)\). Suppose \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_6\) are 4-orthogonal. Then \({\mathbf {q}}_6\) can be transformed to \((\theta _1,\ldots ,\theta _{8})\), where
or
It is easy to verify that all these 32 vectors are not 4-orthogonal with \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_5\). Therefore, \(OA_{48,4}=5\), which seems to be a previously unknown value. Hence, the minimum number of rows w of an orthogonal array OA(w, 7, 2, 4) is 64, which was known to be \(\ge 48\) (see Table 1 of [2]).
Now consider \(n=80\). Suppose \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_6\) are 4-orthogonal. Then \({\mathbf {q}}_5\) can be transformed to \((\alpha _1,\alpha _2,\alpha _2,\alpha _1,\alpha _2,\alpha _1,\alpha _1,\alpha _2)\), where
Moreover, \({\mathbf {q}}_6\) can be transformed to \((\theta _1,\ldots ,\theta _{8})\), where
and
It is easy to check by computer that only 8 such vectors are 4-orthogonal with \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_5\). We then consider \({\mathbf {q}}_7\) for these 8 cases. Using the Eq. (1) for \({\mathbf {q}}_7\oplus {\mathbf {q}}_i\), wherer \(i=4,5,6\), it is easy to verify by computer that there is no \({\mathbf {q}}_7\) 4-orthogonal with \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_6\). Therefore, \(OA_{80,4}=6\).
Now consider \(n=96\). We have the following facts:
-
(1)
Suppose \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_6\) are 4-orthogonal. Then one of \({\mathbf {q}}_5\) and \({\mathbf {q}}_6\) can be transformed to \((\alpha ,\alpha ,\alpha ,\alpha ,\alpha ,\alpha ,\alpha ,\alpha )\), where \(\alpha =(0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1)\).
-
(2)
If there exists a \({\mathbf {q}}_7\) which is 4-orthogonal with \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_6\), then the constant C in the Eq. (1) for \({\mathbf {q}}_7\oplus {\mathbf {q}}_i\) or \({\mathbf {q}}_6\oplus {\mathbf {q}}_i\) is \(\frac{n}{16}\), wherer \(i=4,5\).
So, we can take \({\mathbf {q}}_5=(\alpha ,\alpha ,\alpha ,\alpha ,\alpha ,\alpha ,\alpha ,\alpha )\) and there are 48 cases for \({\mathbf {q}}_6\). Suppose there exists a \({\mathbf {q}}_8\) which is 4-orthogonal with \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_7\). Then only four cases for \({\mathbf {q}}_6\) are remained. For these four cases, it is easy to verify by computer that the vectors can be extended to a group of seven vectors 4-orthogonal with each other, but no \({\mathbf {q}}_8\) exists. Therefore, \(OA_{96,4}=7\), which is a previously unknown value. Hence, the minimum number of rows w of an orthogonal array OA(w, 9, 2, 4) is 128 (it cannot be 112 from the next paragraph), which was known to be \(\ge 96\) [2].
Now consider \(n=112\). Suppose \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_6\) are 4-orthogonal. Then one of \({\mathbf {q}}_5\) and \({\mathbf {q}}_6\) can be transformed to \((\alpha _1,\alpha _2,\alpha _2,\alpha _1,\alpha _2,\alpha _1,\alpha _1,\alpha _2)\), where
So, we can take \({\mathbf {q}}_5\) to be this vector. Suppose \({\mathbf {q}}_1,{\mathbf {q}}_2,\ldots ,{\mathbf {q}}_7\) are 4-orthogonal. Then \({\mathbf {q}}_6\) can be reduced to eight cases, and it is easy to verify by computer that no \({\mathbf {q}}_7\) exists. Therefore, \(OA_{112,4}=6\), which is a previously unknown value. Hence, the minimum number of rows w of an orthogonal array OA(w, 12, 2, 4) is 128, which was known to be \(\ge 112\) [2].
We summarize the results in Table 3. It is noted that by Table 3 the minimum number of rows w of an orthogonal array OA(w, n, 2, 4) can be determined, for \(n\le 13\).
Appendix B: An 11-variable 4-CI Boolean function with the minimum Hamming weight
Take \(m=7\) and S be the absolute maximum 4-linearly independent set with 11 vectors given in Example 2. We have
Then we can get the function \(f\in {\mathcal {B}}_{11}\) by Construction 2 with the support
It is easy to check that f is a 4-CI Boolean function with the Hamming weight 128. Therefore, \(w_{11,4}\le 128\). From Table 3 of Appendix 1, we have \(w_{11,4}\ge 128\). Hence, \(w_{11,4}=128\). This is a previously unknown value, thus a triple question mark ??? in Table II of [5] can be taken place by it.
Rights and permissions
About this article
Cite this article
Wang, Q. Hadamard matrices, d-linearly independent sets and correlation-immune Boolean functions with minimum Hamming weights. Des. Codes Cryptogr. 87, 2321–2333 (2019). https://doi.org/10.1007/s10623-019-00620-1
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10623-019-00620-1