【深入浅出密码学】离散对数

文章介绍了离散对数问题在密码学中的重要性以及几种解决方法,包括蛮力搜索、Baby-StepGiant-Step算法和PollardsRho算法。这些算法用于求解指数方程在模意义下的解,如在整数分解和椭圆曲线密码学(ECC)中的应用。

群相关知识点

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

离散对数相关

在这里插入图片描述## 蛮力搜索

对于解决αx=β\alpha^{x} =\betaαx=β,我们不断地选取合适地xxx,计算axa^xax,直到找到满足这个等式的xxx,时间复杂度O(∣G∣)O(|G|)O(G).

Baby-Step Giant-Step

对于解决αx=β mod (p)\alpha^x=\beta\ mod\ (p)αx=β mod (p),我们将xxx表示为x=xg∗p+xbx=x_g*\sqrt{p}+x_bx=xgp +xb.这里的xb,xg∈[0,p]x_b,x_g \in[0,\sqrt{p}]xb,xg[0,p ]

现将问题转化为,求解axg∗p+xb=β mod(p)a^{x_g*\sqrt{p}+x_b}=\beta \ mod(p)axgp +xb=β mod(p),此时我们只需要寻找满足等式的(xg,xb)(x_g,x_b)(xg,xb),

将等式等价变换成axg∗p=β∗a−xb mod(p)a^{x_g*\sqrt{p}}=\beta*a^{-x_b}\ mod(p)axgp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值