虾虾一米六 发表于 2023-3-13 00:40:57

actually_ezrsa --WP

# actually_ezrsa

打开题目,然后检测一下n发现是素数,素数就是质数



**欧拉函数的性质:**

(1)p^k型欧拉函数:

若N是质数p(即N=p)则
$$
\phi(n)=\phi(p)=p-p^{k-1}=p-1
$$
若N是质数p的k次幂(即N=p^k)则
$$
\phi(n)=p^k-p^{k-1}=(p-1)p^{k-1}
$$
由此我们可以计算出本题的phi_n

```python
from Crypto.Util.number import *
import gmpy2
n = 32267105831567895697087463711842552107292654794975290329883817551132469932537994069658028816596166905917164155378286013381935886545790836484559554088828363276014303900132653905177063880467800662197037011127791741784737059933897250066094973425288815784214640334166437069801312090261287591131998515082474848622335778620645234310526381198375177207035399912915761588220891119602362603476660757740111760830544580721675099073415216380856699311074746581641743903505635880537206249181499119921920140249215261757655303002221814223740020996585754382178910089721547672535090937409848893111207927598015129504518403384377024467107
c = 15613529070159576112538081354007299200731161380377434087940695094353219898283135438195735967451172291372513352423923578359785674747889354938016605474537969001788896608416396376590300526582253828797617553532520551205190948019177841562510449052693641459094594048762857244458718417900324944708301731913016356659209523876231156957208061724999953067998613038786392145669272467863038379072488545140604113470849096790219422070438873422591580826816696635321520461570964479814089432098038745105856990593528480906550231705578156420021104322341804392208344675439925293468121633543239043496200111099260351409929698750938095245740
e = 65537

phi= n - 1
d = gmpy2.invert(e, phi)
m = pow(c,d,n)
print(long_to_bytes(m))
```

运行脚本即可得到flag
            
页: [1]
查看完整版本: actually_ezrsa --WP