大步小步算法

✍ dations ◷ 2025-12-03 16:11:09 #自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版本的代码:

相关

  • 密苏里植物园密苏里植物园(Missouri Botanical Garden)是一座位于美国密苏里州圣路易市的植物园,由美国慈善家亨利·萧所成立,因此有萧氏花园(Shaw's Garden)的别称。它是植物标本馆, 拥有超过
  • 道成肉身道成肉身(英语:Incarnation,希腊语:Ενσάρκωση,公教译圣言成了血肉),基督教术语,正统基督教信仰认为,耶稣基督是三位一体中的第二个位格,即是圣子或道(古希腊语:λόγος,转写:l
  • 戊辰战争1868年:1868年:其他亲藩大名:1868年: 大日本帝国1869年: 虾夷共和国炽仁亲王 彰仁亲王 西乡隆盛 黑田清隆 大村益次郎 山县有朋1868年: 德川庆喜 胜海舟 榎本武扬 松平
  • 动物解放阵线动物解放阵线(Animal Liberation Front,简称ALF),是被全世界以动物之名采取直接行动的动物解放行动分子们,所广泛应用的名称。这些行动包括:把动物们带离实验室和毛皮养殖场、人为
  • 光谱博硕光谱资讯股份有限公司(T-time Technology Co., Ltd.)成立于1992年,是台湾的电脑软件公司,其运营项目主是游戏的软件研发、代理和发行。公司目前由板桥搬迁至台北市中山区中山北
  • 叶望辉叶望辉(英语:Stephen J. Yates),曾任美国爱达荷州共和党主席、副总统钱尼的副国家安全顾问。出生在马里兰州,曾就读马利兰大学学院市分校中文系及约翰·霍普金斯大学。身为耶稣基
  • 漱口水漱口水,又称为口腔漱洗液,是口腔卫生产品,具有杀除微生物牙垢的功能,并防止由其引起的龋齿、齿龈炎和口臭的功效。防蛀漱洗液通过使用氟化物,从而保护牙齿并防止龋齿。漱口水也有
  • 超氧化钠超氧化钠是一个橙黄色的固体,化学式为NaO2,含有超氧离子O2−。超氧化钠为石盐结构,可由过氧化钠与氧气在加压情况下反应制备:用氧气与钠的液氨溶液小心反应也会得到超氧化钠:超氧
  • 白脸树鸭白脸树鸭()是分布在撒哈拉以南非洲及南美洲的一种树鸭属。白脸树鸭数量丰富。它们主要是留鸟,但也会有达100公里以上的地区性移动。它们会在地上筑巢,每次会产8-12只蛋,有时也会
  • 欧仁·卡马拉欧仁·卡马拉(法语:Eugène Camara,1942年1月21日-2019年11月23日),几内亚政治家,曾任几内亚高等教育和科学研究部长、计划部长和几内亚总理。为平息2007年1月爆发的几内亚总罢工,几