Evolving Cryptographic Boolean Functions with Minimal Multiplicative Complexity

2020 
The multiplicative complexity (MC) is a cryptographic criterion that describes the vulnerability of a Boolean function to certain algebraic attacks, and in many important cryptographic applications also determines the computational cost. In this paper, we use Cartesian genetic programming to find various types of cryptographic Boolean functions, improve their implementation to achieve the minimal MC, and examine how difficult these optimized functions are to find in comparison to functions than only need to satisfy some base cryptographic criteria. To provide a comparison with other state-of-the-art optimization approaches, we also use our method to improve the implementation of several generic benchmark circuits. Our results provide new upper limits on MC of certain functions, show that our approach is competitive, and also that finding functions with an implementation that has better MC is not mutually exclusive with improving other performance criteria.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    28
    References
    0
    Citations
    NaN
    KQI
    []