密码中的数学系列——拓展欧几里得算法
题外话:前提摘要,“鸽了两个月左右,最近忙于各种比赛的爆零,实力还是太菜了,真的需要沉下心来学习了。先从复现新生赛开始,这篇就是复盘basectf2024得来的笔记”,和前一篇一起记下的笔记
上接欧几里得算法
现在我们来看一下拓展欧几里得算法
续上
有$g=r_n$ ,$r_{n-1}>r_n$
且$r_{i+2}$%$r_{i+1}=r_i$
$\Bigg\lceil{r_{n-1}=r_{n-3}\%r_{n-2}}\\r_{n-2}=r_{n-4}\%r_{n-3}$
则有
且有
则
代码实现为
1 | def exgcd(a, b): |
(代码来自Crypto系列——RSA(三) | NSSCTF)
推算稿纸