摘要
This paper proposes a practical algorithm for systematically generating strong Boolean functions (f:GF(2) n →GF(2)) with cryptographic meaning. This algorithm takes bent function as input and directly outputs the resulted Boolean function in terms of truth table sequence. This algorithm was used to develop two classes of balanced Boolean functions, one of which has very good cryptographic properties:nl(f)=2 2k?1?2k+2k?2 (n=2k), with the sum-of-squares avalanche characteristic off satisfying σf=24k+23k+2+23k-2 and the absolute avalanche characteristic off satisfying σf=24k+23k+2+23k-2. This is the best result up to now compared to existing ones. Instead of bent sequences, starting from random Boolean functions was also tested in the algorithm. Experimental results showed that starting from bent sequences is highly superior to starting from random Boolean functions. Key words Boolean functions - Bent sequences - Nonlinearity - GAC - PC - Balancedness Document code A CLC number TP301.6
This paper proposes a practical algorithm for systematically generating strong Boolean functions (f:GF(2)n→GF(2)) with cryptographic meaning. This algorithm takes bent function as input and directly outputs the resulted Boolean function in terms of truth table sequence. This algorithm was used to develop two classes of balanced Boolean functions, one of which has very good cryptographic properties: nl(f)=22k?1?2k+2k?2 (n=2k), with the sum-of-squares avalanche characteristic of f satisfying σf=24k+23k+2+23k+23k?2 and the absolute avalanche characteristic of ?f satisfying ?f=2k+1. This is the best result up to now compared to existing ones. Instead of bent sequences, starting from random Boolean functions was also tested in the algorithm. Experimental results showed that starting from bent sequences is highly superior to starting from random Boolean functions.