Reducing the Multiplicative Complexity in Logic Networks for Cryptography and Security Applications

Reducing the number of AND gates plays a central role in many cryptography and security applications. We propose a logic synthesis algorithm and tool to minimize the number of AND gates in a logic network composed of AND, XOR, and inverter gates. Our approach is fully automatic and exploits cut enumeration algorithms to explore optimization potentials in local subcircuits. The experimental results show that our approach can reduce the number of AND gates by 34% on average compared to generic size optimization algorithms. Further, we are able to reduce the number of AND gates up to 76% in best-known benchmarks from the cryptography community.

[1]  Elwyn R. Berlekamp,et al.  Weight distributions of the cosets of the (32, 6) Reed-Muller code , 1972, IEEE Trans. Inf. Theory.

[2]  Giovanni De Micheli,et al.  Majority-Inverter Graph: A New Paradigm for Logic Optimization , 2016, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[3]  René Peralta,et al.  The Multiplicative Complexity of Boolean Functions on Four and Five Variables , 2014, LightSec.

[4]  Peichen Pan,et al.  A new retiming-based technology mapping algorithm for LUT-based FPGAs , 1998, FPGA '98.

[5]  Jan Schmidt,et al.  Are XORs in logic synthesis really necessary? , 2017, 2017 IEEE 20th International Symposium on Design and Diagnostics of Electronic Circuits & Systems (DDECS).

[6]  Vladimir Kolesnikov,et al.  Improved Garbled Circuit: Free XOR Gates and Applications , 2008, ICALP.

[7]  Giovanni De Micheli,et al.  The EPFL Combinational Benchmark Suite , 2015 .

[8]  Robert K. Brayton,et al.  Combinational and sequential mapping with priority cuts , 2007, 2007 IEEE/ACM International Conference on Computer-Aided Design.

[9]  Martin R. Albrecht,et al.  Ciphers for MPC and FHE , 2015, IACR Cryptol. ePrint Arch..

[10]  Jesper Madsen,et al.  ZKBoo: Faster Zero-Knowledge for Boolean Circuits , 2016, USENIX Security Symposium.

[11]  Robert K. Brayton,et al.  Reducing structural bias in technology mapping , 2006, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[12]  Matthieu Rivain,et al.  On the Multiplicative Complexity of Boolean Functions and Bitsliced Higher-Order Masking , 2016, CHES.

[13]  Ahmad-Reza Sadeghi,et al.  TinyGarble: Highly Compressed and Scalable Sequential Garbled Circuits , 2015, 2015 IEEE Symposium on Security and Privacy.

[14]  C.R. Edwards The Application of the Rademacher–Walsh Transform to Boolean Function Classification and Threshold Logic Synthesis , 1975, IEEE Transactions on Computers.

[15]  Robert K. Brayton,et al.  ABC: An Academic Industrial-Strength Verification Tool , 2010, CAV.

[16]  Joan Boyar,et al.  Logic Minimization Techniques with Applications to Cryptology , 2013, Journal of Cryptology.

[17]  Giovanni De Micheli,et al.  The EPFL Logic Synthesis Libraries , 2018, ArXiv.

[18]  矢島 脩三,et al.  Harmonic Analysis of Switching Functions (情報科学の数学的理論) , 1973 .

[19]  Joan Boyar,et al.  A Small Depth-16 Circuit for the AES S-Box , 2012, SEC.

[20]  Theodosis Mourouzis,et al.  Solving Circuit Optimisation Problems in Cryptography and Cryptanalysis , 2011, IACR Cryptol. ePrint Arch..

[21]  Mathias Soeken,et al.  A Spectral Algorithm for Ternary Function Classification , 2018, 2018 IEEE 48th International Symposium on Multiple-Valued Logic (ISMVL).

[22]  Joan Boyar,et al.  Tight bounds for the multiplicative complexity of symmetric functions , 2008, Theor. Comput. Sci..

[23]  A. Yao,et al.  Fair exchange with a semi-trusted third party (extended abstract) , 1997, CCS '97.

[24]  Daniel Slamanig,et al.  Post-Quantum Zero-Knowledge and Signatures from Symmetric-Key Primitives , 2017, CCS.

[25]  René Peralta,et al.  The multiplicative complexity of 6-variable Boolean functions , 2018, Cryptography and Communications.

[26]  Giovanni De Micheli,et al.  Majority-Inverter Graph: A novel data-structure and algorithms for efficient logic optimization , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[27]  C. K. Yuen,et al.  Comments on "The Application of the Rademacher-Walsh Transform to Boolean Function Classification and Threshold Logic Synthesis" , 1976, IEEE Trans. Computers.

[28]  Robert K. Brayton,et al.  Improvements to Technology Mapping for LUT-Based FPGAs , 2007, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[29]  Mathias Soeken,et al.  An Algorithm for Linear, Affine and Spectral Classification of Boolean Functions , 2019, Advanced Boolean Techniques.

[30]  Robert K. Brayton,et al.  DAG-aware AIG rewriting: a fresh look at combinational logic synthesis , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[31]  Joan Boyar,et al.  On the multiplicative complexity of Boolean functions over the basis (cap, +, 1) , 2000, Theor. Comput. Sci..