diff --git a/Algorithm/Cryptology/RSA/RSA_的证明.md b/Algorithm/Cryptology/RSA/RSA_的证明.md index 6a443a9..ed10ad6 100644 --- a/Algorithm/Cryptology/RSA/RSA_的证明.md +++ b/Algorithm/Cryptology/RSA/RSA_的证明.md @@ -190,18 +190,18 @@ c = (((c^e)%n)^d)%n // 设 tmp=c^e,应用推论的逆运算得 (tmp^d)%n 此时,由于 n 等于质数 p 和 q 的乘积,所以必然有: ```cpp -c=h*p -// 或 -c=h*q +c=h*p 或 c=h*q ``` -但 c 不可能同时是 p、q 的倍数,否则 c=j*p*q 且 j>=1,这与 n>c 的要求相矛盾(若 c=j*p*q,则有 (c^e)%n=0,导致无法加密)。以 +但 c 不可能同时是 p、q 的倍数,否则: ```cpp -c=h*p +c=j*p*q 且 j>=1 ``` -为例,此时 c 与 q 必然互质,则根据欧拉定理 (1) 可得: +这与 n>c 的要求相矛盾(若 c=j\*p\*q,则有 (c^e)%n=0,导致无法加密)。 + +以 c=h\*p 为例,此时 c 与 q 必然互质,则根据欧拉定理 (1) 可得: ```cpp (c^ϕ(q))%q=1 // 因为 1 的任意次幂余 q 还是 1,因此对 (c^ϕ(q))%q 求 (t*ϕ(p)) 次幂再余 q,结果也是 1: @@ -227,13 +227,7 @@ c=h*p 此时得证。 -当 - -```cpp -c=h*q -``` - -时,证法相同。 +当 c=h\*q 时,证法相同。 ### 5.3. 关于 n 的选取和明文的分割