Evolutionary Construction of Perfectly Balanced Boolean Functions

Evolutionary Construction of Perfectly Balanced Boolean Functions
复制标题

完美平衡布尔函数的进化构造

DOI:
10.1109/cec55065.2022.9870427
复制
发表时间:
2022
期刊:
2022 IEEE Congress on Evolutionary Computation (CEC)
影响因子:
--
通讯作者:
A. Leporati
A. Leporati
中科院分区:
--
文献类型:
--
作者:
L. Mariot;S. Picek;D. Jakobović;Marko Djurasevic;A. Leporati

文献摘要

参考文献

被引文献

相似文献

寻找适合于密码原语的布尔函数是一个复杂的组合优化问题,因为它们必须满足几个性质才能抵抗密码分析攻击,而且空间非常大,随着输入变量的数量呈超指数增长。最近的研究集中在布尔函数的研究,满足有限的输入集的属性,由于他们的重要性,在FLIP流密码的发展。在本文中,我们考虑这样一个属性,完美的平衡性,并探讨使用遗传编程(GP)和遗传算法(GA)来构造布尔函数,满足此属性沿着具有良好的非线性配置文件。我们制定相关的优化问题,并定义两个编码的候选解决方案,即真值表和加权平衡表示。有些令人惊讶的是,结果表明,GA与加权平衡表示优于GP与经典的真值表在寻找高度非线性加权完美平衡(WPB)功能。这与之前关于平衡布尔函数演化的发现形成鲜明对比,GP总是表现最好。
Finding Boolean functions suitable for cryptographic primitives is a complex combinatorial optimization problem, since they must satisfy several properties to resist cryptanalytic attacks, and the space is very large, which grows super exponentially with the number of input variables. Recent research has focused on the study of Boolean functions that satisfy properties on restricted sets of inputs due to their importance in the development of the FLIP stream cipher. In this paper, we consider one such property, perfect balancedness, and investigate the use of Genetic Programming (GP) and Genetic Algorithms (GA) to construct Boolean functions that satisfy this property along with a good nonlinearity profile. We formulate the related optimization problem and define two encodings for the candidate solutions, namely the truth table and the weightwise balanced representations. Somewhat surprisingly, the results show that GA with the weightwise balanced representation outperforms GP with the classical truth table phenotype in finding highly nonlinear Weightwise Perfectly Balanced (WPB) functions. This is in stark contrast to previous findings on the evolution of balanced Boolean functions, where GP always performs best.
DOI: --
发表时间: 2006
期刊: --
影响因子: --
作者:
Iroon Polytechniou-
通讯作者: Iroon Polytechniou-