RSA

数学前提

密钥生成流程

加解密

RSA 签名

RSA 正确性证明

已知 c=me mod N, ed1mod(p1)(q1), p、q 互素,N=pq
证明 m=cd mod N

Step1 公式化简

cd mod N=(me)d mod N=med mod N=mk(p1)(q1)+1 mod N=m(m(p1)(q1))k mod N

Step2 分类讨论证明

(1)若 gcd(m,N)=1,则 mϕ(N)1modN

gcb(p,q)=1,ϕ(p)=p1,ϕ(q)=q1ϕ(pq)=ϕ(p)ϕ(q)=(p1)(q1)m(p1)(q1)=mϕ(pq)=mϕ(N)1modNm(m(p1)(q1))kmmod N

(2)若 gcd(m,N)1

m<N,gcd(m,N)1gcd(m,M)=p (m=cp),m1modqmk(p1)(q1)(mq1)k(p1)1modqmk(p1)(q1)=sq+1mmk(p1)(q1)=m(sq+1)=cspq+m=csN+mmmodN

QED