大步小步算法

✍ dations ◷ 2025-11-24 15:42:11 #自2020年4月需要从俄语维基百科翻译的条目,算法,群论

在群论中,大步小步算法(英语:baby-step giant-step)是丹尼尔·尚克斯(英语:Daniel Shanks)发明的一种中途相遇算法,用于计算离散对数或者有限阿贝尔群的阶。其中离散对数问题在公钥加密领域有着非常重要的地位。

许多常用的加密系统都基于离散对数极难计算这一假设——计算越困难,这些系统提供的数据传输就越安全。增加离散对数计算难度的一种方法,是把密码系统建立在更大的群上。

这是一种空间换时间(英语:space–time tradeoff)的算法,实质上是求解离散对数的朴素算法(枚举并试乘)的一个相当简单的改进。

给出一个 n {\displaystyle n} 阶循环群 G {\displaystyle G} 、该群的一个生成元 α {\displaystyle \alpha } 和一个元素 β {\displaystyle \beta } 。试找到一个整数 x {\displaystyle x} 满足

大步小步算法把 x {\displaystyle x} 代换成:

于是,我们有:

该算法先对 j {\displaystyle j} 的不同取值计算出 α j {\displaystyle \alpha ^{j}} 的值,然后固定一个 m {\displaystyle m} ,并对 i {\displaystyle i} 尝试不同的取值,带入上面同余式的右边,看是否与某个(已经预先算出的)同余式左边的值相匹配。

给出C++17版本的代码:

相关

  • 厄瓜多尔面积以下资讯是以2019年估计家用电源国家领袖国内生产总值(购买力平价) 以下资讯是以2016年估计国内生产总值(国际汇率) 以下资讯是以2016年估计人类发展指数 以下资讯是以2018
  • 粉笔河实验室粉笔河实验室,或称乔克河核子实验室(英语:Chalk River Laboratories)是位于加拿大安大略省的国家级实验室。始于1945年,主要从事核能相关的研究,像是研发加拿大重水铀反应堆。此外
  • 吴福元吴福元(1962年8月-),中国岩石学家、地球化学家。主要研究中国东北、华东地区中新生代地壳增生、岩石圈演化的机制。曾发起第420项国际地质对比计划研究东北花岗岩体的形成。开发
  • 南加州加州南部(Southern California)是美国加州南部的超级城市区,范围包含大洛杉矶地区及大圣地牙哥都会区。加州南部范围从文图拉延伸至圣地牙哥,其南端则是美墨边境。
  • 荷兰市镇列表荷兰政府与政治 系列条目荷兰所有的省份的下一级行政区划均为市镇(荷兰语:gemeenten)。截至2019年1月,荷兰共有355个市镇和3个“特别市”(正式名称为公共实体,openbare lichamen)。
  • 鸡冠山 (韩国)鸡冠山(韩语:계관산)是一座位于大韩民国京畿道加平郡和江原道春川市之间的山峰,主峰标高海拔710米。
  • 巴克林巴克林(英语:Bucklin)是一个美国城市,位于密苏里州林县。根据2010年的人口普查,当地人口为467人。巴克林位于39°47′1″N 92°53′17″W / 39.78361°N 92.88806°W / 39.78361;
  • 87式反坦克导弹87式反坦克导弹(87式対戦車誘導弾,Type 87 Chu-MAT,87-shiki tai-sensha yūdō-dan)是一款由日本两间重工业企业川崎重工和三菱重工在1970年代后期研制和生产的激光制导式(英语:L
  • 德倍礼德倍礼(Debrett's),建立于1769年,是大众了解英国贵族文化及社交礼仪的可借鉴来源。德倍礼因记录英国贵族爵位及轶事而诞生,其创始人John Debrett所编撰的《德倍礼贵族与从男爵》
  • 皮埃蒙特 (美国)皮埃蒙特(英语:Piedmont)是美国的特指东部沿海至阿巴拉契亚山脉的一片丘陵地区,​​绵延自新泽西州至阿拉巴马州。“皮埃蒙特”一词源于法国,意指山脚下的地区,同样使用这词的还有