中文

求解区间离散对数问题的袋鼠法

数论 2015-01-29 v1 数据结构与算法

摘要

区间离散对数问题定义如下:给定群 GG 中的某些 g,hg,h 以及某个 NNN \in \mathbb{N},使得对于某个满足 0z<N0 \leq z < Nzzgz=hg^z=h,求 zz。目前,袋鼠法是解决区间离散对数问题最佳的低内存算法。解决此问题最快的非并行化袋鼠法是三只袋鼠法和四只袋鼠法,它们的预期平均运行时间分别为 (1.818+o(1))N\big(1.818+o(1)\big)\sqrt{N}(1.714+o(1))N\big(1.714 + o(1)\big)\sqrt{N} 次群运算。目前尚不清楚是否可以通过使用超过四只袋鼠来改进袋鼠法。在本论文之前,使用超过四只袋鼠的最快袋鼠法需要至少 2N2\sqrt{N} 次群运算来解决区间离散对数问题。在本文中,我通过提出一种预期平均运行时间为 (1.7195+o(1))N±O(1)\big(1.7195 + o(1)\big)\sqrt{N} \pm O(1) 次群运算的七只袋鼠法,显著提高了使用超过四只袋鼠的方法的运行时间,几乎超越了最快的袋鼠算法。本文还回答了“五只袋鼠是否比三只更差?”这一问题,因为我提出了一种五只袋鼠算法,平均需要 (1.737+o(1))N\big(1.737+o(1)\big)\sqrt{N} 次群运算来解决区间离散对数问题。

关键词

引用

@article{arxiv.1501.07019,
  title  = {Kangaroo Methods for Solving the Interval Discrete Logarithm Problem},
  author = {Alex Fowler and Steven Galbraith},
  journal= {arXiv preprint arXiv:1501.07019},
  year   = {2015}
}