Efficient Software Implementation of Binary Field Arithmetic Using Vector Instruction Sets

  • Diego Aranha | University of Brasilia

In this talk, we will describe an efficient software implementation of characteristic 2 fields making extensive use of vector instruction sets commonly found in desktop processors. Field elements are represented in a split form so performance-critical field operations can be formulated in terms of simple operations over 4-bit sets. In particular, we detail techniques for implementing field multiplication, squaring, square root extraction, half-trace and inversion and present a constant-memory lookup-based multiplication strategy. We illustrate performance with timings for scalar multiplication on binary curves at the 128-bit security level and compare our results with publicly available benchmarking data.

Speaker Details

Diego Aranha holds a PhD degree in Computer Science from University of Campinas after working for 1 year as a visiting PhD student at the University of Waterloo. He is now an Adjunct Professor at the Department of Computer Science in the University of Brasilia, with experience on Cryptography and Computer Security and special interest in the efficient implementation of cryptographic algorithms and the design of cryptographic primitives for computational anonymity. Recently, he coordinated the first team of independent researchers who successfully detected and explored vulnerabilities in the Brazilian voting machine during controlled tests organized by the national electoral authority.

    • Portrait of Jeff Running

      Jeff Running

Series: Microsoft Research Talks