二、RSA加密

CTF中的RSA及攻击方法笔记1 数论基础1.1 模运算规则2 RSA相关题目2.1 已知 n,e,c 求 m2.2 已知 p,q,e 求 d2.3 已知dp,dq,c,p,q 求m2.4 仅已知c,c特别大 【c = m^e mod n】2.5 已知n1,n2,c1,c2,n 求 m2.6 已知n1,n2,e,c2 求m2.7 已知e,d,N 求p,q1 数论基础参考链接:https://www.freebuf.com/articles/web/257835.html1.1 模运算规则模运算与基
摘要由CSDN通过智能技术生成

1 数论基础

参考链接:https://www.freebuf.com/articles/web/257835.html

1.1 模运算规则

模运算与基本四则运算有些相似,但是除法例外。其规则如下:

(a + b) % p = (a % p + b % p) % p
(a - b) % p = (a % p - b % p) % p
(a * b) % p = (a % p * b % p) % p
(a ^ b) % p = ((a % p)^b) % p

结合律:

((a+b) % p + c) % p = (a + (b+c) % p) % p
((a*b) % p * c)% p = (a *(b*c)%p) % p

交换律:

(a + b) % p = (b + a) % p
(a * b) % p = (b * a) % p

分配律:

((a +b)% p * c) % p = ((a * c) %p + (b * c) % p) % p

重要定理:
a ≡ b(mod n) 表示ab对模n同余。
是数论中表示同余的符号,b mod n 是表示 bn 取余。

若a≡b (% p),则对于任意的c,都有(a + c)(b + c) (%p)
若a≡b (% p),则对于任意的正整数c,都有(a * c)(b * c) (%p)
若a≡b (% p),c≡d (% p),则 (a + c)(b + d) (%p)(a - c)(b - d) (%p)(a * c)(b * d) (%p)

最大公因子:

两个数互素是指:除了它们除了1​外没有共同的因子。如果an的最大公因子等于1,那么可写作
$gcd(a,n)=1$

欧几里得算法:
又称碾转相除法,我们通常使用该方法计算最大公因子。

欧几里得扩展算法:
如果gcd(a, b) = c,则存在x, y,使得c = ax + by

同余:
两个整数a、b,若它们除以整数m所得的余数相等,则称a与b对于模m同余或a同余于b模m。 记作:a≡b (mod m), 读作:a同余于b模m,或读作a与b对模m同余,例如26≡2(mod 12)。

模的逆元:
简单来说,求a的逆,就是找一个 x x x,使得 1 = ( a ∗ x ) ( m o d n ) 1 = (a*x){\pmod n} 1=(ax)(modn),也可记作 a − 1 ≡ x ( m o d n ) a^{-1} \equiv x{\pmod {n}} a1x(modn)

费马小定理和欧拉定理:
费马小定理是数论中的一个定理:假如 a {a} a 是一个整数, p {p} p 是一个质数,那么 a p − a {a^{p}-a} apa p p p 的倍数,可以表示为 a p ≡ a ( m o d p ) a^{p}\equiv a{\pmod {p}} apa(modp) 如果a不是p的倍数,这个定理也可以写成 a p − 1 ≡ 1 ( m o

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值