A Particle Swarm Optimizer for the search of balanced Boolean functions with good cryptographic properties is proposed in this paper. The algorithm is a modified version of the permutation PSO by Hu, Eberhart and Shi which preserves the Hamming weight of the particles positions, coupled with the Hill Climbing method devised by Millan, Clark and Dawson to improve the nonlinearity and deviation from correlation immunity of Boolean functions. The parameters for the PSO velocity equation are tuned by means of two meta-optimization techniques, namely Local Unimodal Sampling (LUS) and Continuous Genetic Algorithms (CGA), finding that CGA produces better results. Using the CGA-evolved parameters, the PSO algorithm is then run on the spaces of Boolean functions from $n=7$ to $n=12$ variables. The results of the experiments are reported, observing that this new PSO algorithm generates Boolean functions featuring similar or better combinations of nonlinearity, correlation immunity and propagation criterion with respect to the ones obtained by other optimization methods.
翻译:本文提出了一种粒子群优化器,用于搜索具有良好密码学性质的平衡布尔函数。该算法是Hu、Eberhart和Shi所提出的置换粒子群优化(permutation PSO)的改进版本,能够保持粒子位置的汉明重量,并融合了Millan、Clark和Dawson提出的爬山方法,以提升布尔函数的非线性度和相关免疫偏差。通过两种元优化技术——局部单峰采样(LUS)和连续遗传算法(CGA)——对PSO速度方程的参数进行调优,发现CGA能产生更优结果。采用CGA演化得到的参数,该PSO算法在变量数从$n=7$到$n=12$的布尔函数空间上运行。实验结果表明,与其它优化方法相比,这种新的PSO算法生成的布尔函数在非线性度、相关免疫性和传播准则方面具有相似或更优的组合性能。