From d4d6d042ed723287ed167b277080ad63d1956af5 Mon Sep 17 00:00:00 2001 From: "rick.chan" Date: Sat, 17 Aug 2024 01:27:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E7=90=86=E6=A0=BC=E5=BC=8F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: rick.chan --- Algorithm/Cryptology/RSA/RSA_的证明.md | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) 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 的选取和明文的分割