已知:k,b,m" role="presentation" style="position: relative;">k,b,m
求解同余式:xk≡b(mod m)" role="presentation">xk≡b(mod m)
如果我们满足两个限制
1.gcd(b,m)=1" role="presentation" style="position: relative;">gcd(b,m)=1
2.gcd(k,ϕ(m))=1" role="presentation" style="position: relative;">gcd(k,ϕ(m))=1
那么我们是有快速的方法求解x的
1.先计算ϕ(m)" role="presentation" style="position: relative;">ϕ(m)
2.然后求ku−ϕ(m)v=1" role="presentation">ku−ϕ(m)v=1
得到u" role="presentation" style="position: relative;">u
那么x≡bu(mod m)" role="presentation">x≡bu(mod m)
但是这种求法有两个限制的因素,所以也很少遇到,其实第一个条件可以适当放宽,如果m是若干个不同质数的乘积,那么可以使得gcd(b,m)>1" role="presentation" style="position: relative;">gcd(b,m)>1,但是第二条件还是要满足的。
bonus:这个东西对于RSA公钥密码体制很重要。