# dvCTF the more, the less Write Up
## Details:Points: 41
Jeopardy style CTF
Category: crypto
## Write up:
Opening up the file I saw an e, n, and cipher text showing that this was obviously RSA. I then used alpertron to find the prime factors of n:
```python# prime factorsx = [2152978987,2178670709,2292487361,2367104263,2563604567,2571500203,2715012803,2788319507,2823467653,2903526499,2936894063,2989253341,3035960167,3068856233,3165948211,3391790461,3592739747,3613621433,3852924077,3876487189,3890394553,3898886171,3910833851,3961066927,3989645813,4014542803,4024893437,4029819973,4068148789,4109794417,4130412409,4226418397]```
From here I wrote a python script to find phi(n), d, and then finally the answer:
```python# all prime factorsx = [2152978987,2178670709,2292487361,2367104263,2563604567,2571500203,2715012803,2788319507,2823467653,2903526499,2936894063,2989253341,3035960167,3068856233,3165948211,3391790461,3592739747,3613621433,3852924077,3876487189,3890394553,3898886171,3910833851,3961066927,3989645813,4014542803,4024893437,4029819973,4068148789,4109794417,4130412409,4226418397]
# nn = 31599415905194296507531163994468257280886159280045654346389430217405819290199334738577568528414824952061262558727052291045816515870348057534996441596560396962516719727878569643953152119895297353348080193869479088114850667155373326828408666807238584625432868509009967976378084883283066242914464294233411627
# ee = 65537
# cipher textct = 11371525982887248215036029303506383319725323173791816242922348267059091038845164126422411329763551336318264887183213679689757761368186436315189029720350805092964515239812759488055450797557376437081404871060787004042110689348646779529227539692241991396962852995556540999064671425810298104591755058349120054
# start value for phi(n)i = 1
# loop through prime factors and multiply them together with (factor-1)*(nextFactor-1)...for a in x:	i = i * (a-1)
# inverse pow (3.8+ syntax, for previous versions of python use gmpy2.invert)d = pow(e, -1, i)
# solve for the answerans = pow(ct, d, n)
# print the answerprint(bytes.fromhex(hex(ans)[2:]).decode('ascii'))```
Once run the output was:
```dvCTF{rs4_f4ctor1z4t10n!!!}```