English

A Deterministic Algorithm for the Discrete Logarithm Problem in a Semigroup

Computational Complexity 2022-03-16 v4 Group Theory

Abstract

The discrete logarithm problem in a finite group is the basis for many protocols in cryptography. The best general algorithms which solve this problem have time complexity of O(NlogN)\mathcal{O}(\sqrt{N}\log N), and a space complexity of O(N)\mathcal{O}(\sqrt{N}) where NN is the order of the group. (If NN is unknown, a simple modification would achieve a time complexity of O(N(logN)2)\mathcal{O}(\sqrt{N}(\log N)^2).) These algorithms require the inversion of some group elements or rely on finding collisions and the existence of inverses, and thus do not adapt to work in the general semigroup setting. For semigroups, probabilistic algorithms with similar time complexity have been proposed. The main result of this paper is a deterministic algorithm for solving the discrete logarithm problem in a semigroup. Specifically, let xx be an element in a semigroup having finite order NxN_x. The paper provides an algorithm, which, given any element yxy\in \langle x \rangle , provides all natural numbers mm with xm=yx^m=y, and has time complexity O(Nx(logNx)2)O(\sqrt{N_x}(\log N_x)^2) steps. The paper also gives an analysis of the success rates of the existing probabilistic algorithms, which were so far only conjectured or stated loosely.

Keywords

Cite

@article{arxiv.2101.11500,
  title  = {A Deterministic Algorithm for the Discrete Logarithm Problem in a Semigroup},
  author = {Simran Tinani and Joachim Rosenthal},
  journal= {arXiv preprint arXiv:2101.11500},
  year   = {2022}
}