已知RSA的公钥(e,n)计算对应的私钥d

本文详细解释了RSA算法中公钥(13,35)对应的私钥d的求解过程,通过公钥的性质推导出私钥值,最终确定私钥d=13,选项C正确。同时介绍了网络安全工程师的学习路线和相关资源。
摘要由CSDN通过智能技术生成

今天分享一个软考中经常出现的关于RSA私钥计算的题目。我们试着理解背后的算法逻辑,然后再看看如何解题。

设在RSA的公钥密码体制中,公钥为(e, n)= (13, 35), 则私钥d= ()。

A. 17

B. 15

C. 13

D. 11

RSA 算法

Rivest Shamir
Adleman(RSA)加密算法是一种非对称加密算法,广泛应用于许多产品和服务中。非对称加密使用一对密钥(私钥和公钥),公钥是任何人都可以访问的,而私钥是密钥创建者才知道的秘密。可以使用私钥或公钥进行数据加密,然后用另一个密钥进行数据解密。

比如用户A生成一对密钥并将公钥公开。当用户B需要向用户A发送机密信息的时候,用户B使用A的公钥对机密信息进行加密再发送给A,用户A使用自己的私钥对加密信息进行解密。另一方面,用户A可以使用自己的私钥对机密信息进行签名然后发给用户B,用户B再使用A的公钥来验证签名。

算法描述

公钥

1. 任意选取两个不同的大素数p和q,计算乘积 n = p*q;

质数是指在大于1的自然数中,除了1和它本身以外不再有其他因素的自然数。

2. 任意选取一个大整数e,满足gcd (e, (p-1) (q-1)) = 1;

**** gcd:最大公约数, e的选取比较容易,比如所有大于p和q的素数都可用

3. 公钥为(e, n)

私钥

1. 使用公式 {d*e} mod {(p-1) (q-1)} = 1 来计算;

mod,是一个数学运算符号。指取模运算符,算法和取余运算(REM)相似例如a mod b=c,表明a除以b余数为c

2. 密钥为(d, n)

解题思路

1. 已知 公钥为(e, n)= (13, 35),即e = 13,n = 35;

2. n = p*q,得到p=5, q=7 (或者 p=7, q = 5);

3. 计算得出 (p-1) (q-1) = 24;

4. 将以上参数代入公式 {de} mod {(p-1) (q-1)} = 1,即 {d13} mod 24 = 1

5. 分别计算4个选项,看看哪一个满足条件

{17*13} mod 24 = 5

{15*13} mod 24 = 3

{13*13} mod 24 = 1

{11*13} mod 24 = 23

所以第三个答案满足条件,即d = 13,所以答案选 C

网络安全工程师(白帽子)企业级学习路线

第一阶段:安全基础(入门)

img

第二阶段:Web渗透(初级网安工程师)

img

第三阶段:进阶部分(中级网络安全工程师)

img

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

学习资源分享

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值