【Crypto】RSA

文章目录

  • 题目
  • 步骤
    • [1.计算 𝑛](#1.计算 𝑛)
    • [2.计算欧拉函数 𝜙(𝑛)](#2.计算欧拉函数 𝜙(𝑛))
    • [3. 扩展欧几里得算法求逆元 𝑑](#3. 扩展欧几里得算法求逆元 𝑑)
  • 解题感悟

题目


p=473398607161

q=4511491

e=17

求d

步骤

1.计算 𝑛

公式:n=p×q

n=473398607161×4511491=2135733555619387051

2.计算欧拉函数 𝜙(𝑛)

公式:𝜙(𝑛)=(p−1)×(q−1)

𝜙(𝑛)=(473398607161−1)×(4511491−1)=2135733082216268400

3. 扩展欧几里得算法求逆元 𝑑

d×e≡1(mod𝜙(𝑛))

意思是在模 𝜙(𝑛)的运算下,𝑑和𝑒是互为乘法逆元的。也就是说𝑑是𝑒的逆元,使得𝑒乘以𝑑后对𝜙(𝑛) 取模得到 1

直接用python进行计算

python 复制代码
from sympy import mod_inverse

# 给定值
e = 17
phi_n = 2135732641062828400

# 计算 d (e 在模 phi_n 下的乘法逆元)
d = mod_inverse(e, phi_n)
print(d)  # 输出应为 125631357777427553

其实直接可以所有计算都交给python

python 复制代码
from sympy import mod_inverse
p = 473398607161
q = 4511491
e = 17
phi_n = (p - 1) * (q - 1)
d = mod_inverse(e, phi_n)
print(d)

解题感悟

手撕这道题的话需要用到:扩展欧几里得算法,欧拉函数,模运算,逆元的求解等...感受到了python的便利!

相关推荐
云手机掌柜6 小时前
技术深度解析:指纹云手机如何通过设备指纹隔离技术重塑多账号安全管理
大数据·服务器·安全·智能手机·矩阵·云计算
德迅云安全杨德俊8 小时前
SCDN-保护网站安全的有效方案
网络·安全·web安全·ddos
独行soc12 小时前
2025年渗透测试面试题总结-100(题目+回答)
网络·安全·web安全·网络安全·adb·渗透测试·安全狮
静渊谋14 小时前
攻防世界-Check
java·安全·网络安全
酷柚易汛智推官15 小时前
2025软件供应链安全实战:从漏洞修补到风险预测的转型指南
安全
没有bug.的程序员18 小时前
MySQL 安全与权限管理:从基础到生产级安全实践
java·mysql·安全·adb·权限
weixin_4462608518 小时前
探索高效安全的去中心化应用——Solana区块链
安全·去中心化·区块链
大数据检索中心19 小时前
个人数据泄露有哪些法律与安全风险?
大数据·安全
脚底儿19 小时前
网络安全常见敏感目录字典
安全·web安全
字符串str21 小时前
常见端口安全弱点汇总表
安全