大步小步算法

✍ dations ◷ 2025-09-11 10:41:07 #自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版本的代码:

相关

  • 妊娠期妊娠期是指雌性哺乳动物从受精至分娩的这段时间。 不同的动物的妊娠期是不同的。大多数物种妊娠期的长短取决于胎儿出生时的体型。小型动物的妊娠期通常比大型动物短。 例
  • 颚(英语:Jaw),在解剖学中,指在嘴部入口处相对的铰接式结构,最常见的用途是用来进食与咀嚼食物。在大多数的动物身上,都拥有这个解剖结构。在人体解剖学中,又称颌,指嘴部的上下骨骼与
  • 辕固生辕固(?-?),又名辕固生,西汉齐国耏水(今山东省桓台县田庄镇辕固村)人。官至诗经博士、清河王太傅。开创《诗经》的《齐诗》诗派。一些齐人因研究《诗经》而仕途显贵,都是辕固弟子。辕
  • 伊朗狼伊朗狼(学名:Canis lupus pallipes),亦称为亚洲狼,是狼的一个亚种。曾广泛分布于黎巴嫩、北以色列、沙特阿拉伯、土耳其、阿富汗、巴基斯坦及伊朗。它们过去被认为是澳洲野犬的直
  • 卷舌挤喉音卷舌挤喉音(Retroflex ejective)是一种罕见的辅音,出现于一些口语中。国际音标将此音记作⟨ʈʼ⟩,其对应的X-SAMPA音标为t`_>。卷舌挤喉音的特征包括:当符号成对出现时,左边的是
  • 诺伦三女神诺伦三女神或诺恩三女神(或省掉“三女神”三字。古诺斯语:;英语:The Norns或是复数形nornir),是北欧神话中的命运女神。诺伦三女神是智慧巨人密米尔的三个女儿,另一说是巨人诺尔维(
  • 姜人杰姜人杰(1948年11月23日-2011年7月19日),湖北大冶人,出生于江苏苏州原吴江县震泽镇(今吴江区)。1974年6月入党,1964年10月参加工作,大专学历。2001年任苏州市副市长,分管城建、交通、房
  • 铃木俊一 (众议院议员)铃木俊一(1953年4月13日-),日本政治家,自由民主党党员,出身于东京都。现任东京奥林匹克运动会及东京残疾人奥林匹克运动会担当大臣。前环境大臣。共当选9届众议院议员,在自民党内属
  • 王应期 (万历进士)王应期(?-?),字瑞征,顺天府霸州文安县人,明朝政治人物。万历十七年(1589年)己丑科进士。授河南尉氏县知县,复补陕西蒲城县,升刑部主事,晋郎中,升陕西延安府知府,未被命而疾作,遂不复起。曾祖
  • 藻玲玉属21种,见内文藻玲玉属(属名:)为番杏科的一属,多年生肉质草本,植株低矮,丛生叶子合生为椭圆形,顶部驼峰状,会从成对叶子的中央裂开长出新的叶子。学名来源于拉丁文词汇“gibbosus”,意为