【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的便利!

相关推荐
独行soc4 小时前
2025年渗透测试面试题总结-腾讯[实习]玄武实验室-安全工程师(题目+回答)
linux·安全·web安全·面试·职场和发展·渗透测试·区块链
一ge科研小菜鸡4 小时前
构建云原生安全治理体系:挑战、策略与实践路径
安全·云原生
李子圆圆4 小时前
高压危险铁塔大字金属安全警示牌技术解析
安全
100分题库小程序7 小时前
汽车加气站操作工证考试重点
经验分享·笔记·安全
饮长安千年月8 小时前
JavaSec-SSTI - 模板引擎注入
java·windows·安全·web安全·网络安全·系统安全·安全架构
tonydf9 小时前
还在用旧的认证授权方案?快来试试现代化的OpenIddict!
后端·安全
☞无能盖世♛逞何英雄☜10 小时前
SSRF漏洞
安全·web安全
芯盾时代19 小时前
AI在网络安全领域的应用现状和实践
人工智能·安全·web安全·网络安全
银空飞羽21 小时前
再学学MCP间接提示词注入
安全·mcp·trae
安全系统学习1 天前
【网络安全】漏洞分析:阿帕奇漏洞学习
java·网络·安全·web安全·系统安全