NKCTF——Crypto

eZ_Math

题目:

from Crypto.Util.number import *
from secret import flag

m1, m2 = bytes_to_long(flag[:len(flag)//2]), bytes_to_long(flag[len(flag)//2:])
p, q, r, s = [getStrongPrime(512) for _ in range(4)]
e = 0x10001

n = p * q * r * s
x = pow(q + r, p, n)
y = pow(p * q + r, p, n)
z = pow(s + 1, m1, s ** 3)
c = pow(m2, e * (s - 1), n)

print(f'{n = }')
print(f'{x = }')
print(f'{y = }')
print(f'{z = }')
print(f'{c = }')

from Crypto.Util.number import *
import gmpy2

n = 16063619267258988011034805988633616492558472337115259037200126862563048933118401979462064790962157697989038876156970157178132518189429914950166878537819575544418107719419007799951815657212334175336430766777427972314839713871744747439745897638084891777417411340564312381163685003204182743581513722530953822420925665928135283753941119399766754107671729392716849464530701015719632309411962242638805053491529098780122555818774774959577492378249768503656934696409965037843388835948033129997732058133842695370074265039977902884020467413323500218577769082193651281154702147769044514475692164145099161948955990463002411473013
x = 3021730035236300354492366560252387204933590210661279960796549263827016146230329262559940840168033978439210301546282150367717272453598367244078695402717500358042032604007007155898199149948267938948641512214616076878271433754986480186150178487625316601499002827958344941689933374158456614113935145081427421623647242719093642478556263121508238995676370877385638074444859047640771188280945186355013165130171802867101829647797879344213688981448535289683363612035513789240264618036062440178755665951650666056478493289870170026121826588708849844053588998886259091357236645819074078054595561158630194224419831088510266212458
y = 8995787142441643101775260550632842535051686960331455373408888374295557050896156890779515089927839904014859222004906681231525326673182671984194300730575609496770604394218160422560576866112460837985407931067753009696969997384839637927957848613356269534870170452152926447601781637641134982178028922559652443398183848786034348994249923007092159192374765197460466878587635412657807328348343062302127490267456095927890461140420639805398464266081441243108883599713672104446500850203779995739675784794478089863001309614674686652597236324659979849324914804032046113978246674538411441434320732570934185579553749616238819583998
z = 1283646988194723153191718393109711130382429329041718186548715246082834666179475883560020086589684603980734305610989683434078096863563033623169666389076830792095374856743015929373461198718962686411467443788047511292138922700655772772117855226419561159782734009961921473456332468653898105909729309377890721920937410781006337057478451806364879679045839945032594716202888196404203782734864187890231653321470085251
c = 4988583141177813116287729619098477713529507701428689219486720439476625736884177254107631282807612305211904876847916760967188201601494592359879509876201418493870112712105543214178376471651715703062382025712952561985261461883133695993952914519494709871429166239968478488380137336776740647671348901626710334330855078254188539448122493675463406596681080368929986034772169421577420193671300532508625180845417164660544286332963072804192276425664877337357353975758574262657585309762422727680851018467657523970318042829660721433987195369353660020476598195375492128671951807024027929490113371463210453342974983253996717176870
e = 0x10001

q = GCD(y-x,n)
p = GCD(y-x+q,n)//q
r = (x-q)%p
s = n//(p*q*r)
m1 = (z%s**2-1)//s
m1 = long_to_bytes(m1)
phi = (p-1)*(q-1)*(r-1)
d = inverse(e*(s-1)//4,phi)
m2 = pow(c,d,p*q*r)
m2 = gmpy2.iroot(m2,4)
m2 = long_to_bytes(m2[0])
print(m1+m2)

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-29 19:32:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-29 19:32:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-29 19:32:04       82 阅读
  4. Python语言-面向对象

    2024-03-29 19:32:04       91 阅读

热门阅读

  1. Python批量提取pdf首页并合并为一个文件

    2024-03-29 19:32:04       42 阅读
  2. linux 常用命令整理

    2024-03-29 19:32:04       39 阅读
  3. AI分层架构设计思想

    2024-03-29 19:32:04       43 阅读
  4. 速盾:cdn配置ssl

    2024-03-29 19:32:04       33 阅读
  5. 智能消息推送SDK产品:移动APP拉新促活的利器

    2024-03-29 19:32:04       43 阅读
  6. C# —— 系统学习(控制结构)

    2024-03-29 19:32:04       42 阅读
  7. 使用OpenSSL指令测试椭圆曲线签名算法ECDSA

    2024-03-29 19:32:04       33 阅读
  8. 知识图谱智能问答系统技术实现

    2024-03-29 19:32:04       40 阅读
  9. python读取ply文件

    2024-03-29 19:32:04       39 阅读
  10. union在c语言中什么用途

    2024-03-29 19:32:04       46 阅读