Time-Memory Trade-Offs for Index Calculus in Genus 3

  • Kristin Lauter

Journal of Mathematical Cryptology | , Vol 9(2): pp. 95-114

In this paper, we present a variant of Diem’s O~(q)">O˜(q)O~(q) index calculus algorithm to attack the discrete logarithm problem (DLP) in Jacobians of genus 3">33 non-hyperelliptic curves over a finite field Fq">FqFq . We implement this new variant in C++ and study the complexity in both theory and practice, making the logarithmic factors and constants hidden in the O~">O˜O~ -notation precise. Our variant improves the computational complexity at the cost of a moderate increase in memory consumption, but we also improve the computational complexity even when we limit the memory usage to that of Diem’s original algorithm. Finally, we examine how parallelization can help to reduce both the memory cost per computer and the running time for our algorithms.