Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
from gmpy2 import *
from Crypto.Util.number import *
def fermatfactor(n):
a = isqrt(n) + 1
b = a * a-n
while not is_square(b):
a = a + 1
b = a * a -n
b = isqrt(b)
return (a + b, a -b)
c = 17830167351685057470426148820703481112309475954806278304600862043185650439097181747043204885329525211579732614665322698426329449125482709124139851522121862053345527979419420678255168453521857375994190985370640433256068675028575470040533677286141917358212661540266638008376296359267047685745805295747215450691069703625474047825597597912415099008745060616375313170031232301933185011013735135370715444443319033139774851324477224585336813629117088332254309481591751292335835747491446904471032096338134760865724230819823010046719914443703839473237372520085899409816981311851296947867647723573368447922606495085341947385255
n = 23135514747783882716888676812295359006102435689848260501709475114767217528965364658403027664227615593085036290166289063788272776788638764660757735264077730982726873368488789034079040049824603517615442321955626164064763328102556475952363475005967968681746619179641519183612638784244197749344305359692751832455587854243160406582696594311842565272623730709252650625846680194953309748453515876633303858147298846454105907265186127420148343526253775550105897136275826705375222242565865228645214598819541187583028360400160631947584202826991980657718853446368090891391744347723951620641492388205471242788631833531394634945663
e = 65537
p,q = fermatfactor(n)
d = inverse(e,(p-1)*(q-1))
m=pow(c,d,n)
flag = long_to_bytes(m)
print(flag)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment