离散对数计算的Sherwood 算法

本文介绍了离散对数问题及其简单的解决算法,重点解析了Sherwood算法如何改进这一问题,确保算法效率不受输入参数a和p的影响。通过定理和随机化方法,实现了对离散对数计算的优化,其中关键步骤包括随机数r的选择和使用定理进行计算。

 

   问题描述:设 a=g^x mod p,记 log g,p a=x,称 x 为 a 的(以 g 为底模除 p)对数。从 p,g,a 计算 x 称为离散对数问题。
  问题在于:给出 p,g,a,怎么求 x

  

  简单算法:
1 ∀x, 计算 g ^x
最多计算 0≤x≤ p-1 或 1≤x≤p,因为实际上离散对数<g>是循环群;
2 验证 a=g ^x mod p 是否成立。

dlog(g, a, p) {                // 当这样的对数不存在时,算法返回 p
     x ← 0; y ← 1;
    do {
        x++;
        y ← y*g;       // 计算 y=g^ x
    }  while ( a ≠ y mod p) and

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值