[Crypto][Newbies] An easy cryptographical challenge (RSA): solution

The challenge.

No one solved it correctly, but it is extremely simple to solve, if one can think out-of-box.

It had 100 (seemingly random) characters, in the a-zA-Z0-9 set. How many bits you can store in such string?

Python 3.12.7 (main, Nov  6 2024, 18:29:01) [GCC 14.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> (26+26+10)**100
173447861573683247714730657655312620453056954417135042074757049646310930624726299506063242973147383207308074513192299800436397892378848380276295319872954494152239940714065219813376
>>> import math
>>> math.log((26+26+10)**100, 2)
595.4196310386875
>>>

If this is RSA, no matter which RSA padding is used, its key is equal or lower than 595 bits. And with some effort, it can be cracked in practice.

(the post first published at 20241130.)


List of my other blog posts.

Subscribe to my news feed,

Yes, I know about these lousy Disqus ads. Please use adblocker. I would consider to subscribe to 'pro' version of Disqus if the signal/noise ratio in comments would be good enough.