This is a little tool I wrote a little while ago during a course that explained how RSA works. The course wasn't just theoretical, but we also needed to decrypt simple RSA messages. Given that I don't like repetitive tasks, my decision to automate the decryption was quickly made. Feel free to take a look at the code to see how it works.

With this tool you'll be able to calculate primes, encrypt and decrypt message(s) using the RSA algorithm.

Currently all the primes between 0 and 0 are stored in a bunch of javascript files, so those can be used to encrypt or decrypt (after they are dynamically loaded). In case this isn't sufficient, you can generate additional primes, which will be preserved until the page reloads.

If you encounter any issues or have suggestions/improvements, please create a new issue on the GitHub project page.

If you are interested in my personal site, you can visit it on canihavesome.cofffee.

I haven't written every line of code that's being used to show and generate this tool myself. I'd like to thank:

- Matthew Crumley and other contributors for the BigInteger js library
- Kyle Simpson for the LABjs library

Below you can calculate brute-force all the primes between a given lower and upper bound. Once that's finished, it will show all the prime numbers in the text box. If you want some explanation why a given number is not a prime number, tick the box, and an explanation will be shown for that number.

: | |

: | |

? | (WARNING! Causes severe lag/unresponsiveness with big ranges) |

: |

Explanations:

Here you can create an RSA encrypted message by filling in the form.

: : or

:

:

Status: Not started yet.

Here you can try to brute-force and decrypt a given RSA message if you have the public key (N and e) and the message.

Public key:

: :

Progress: not started yet.

This page lists a couple of examples which you can use on the other tabs.

Original message | Bewijs gevonden |

N | 69647 |

e | 53 |

Encoded bits | 0011000100011010101010101001001000011011110110111110101000111111000100111101101011011011110111010000110101010110011100000111000001111101 |

Original message | Here you can create an RSA message, if you provide some information. |

N | 148730576801 |

e | 13 |

Encoded bits | 0101101010110110111111011000111110111000001101011001010001101101101100010000001011111111110100011001101001101011100111101000011010001111000000101100101000110001111101111000101100110110100100011110011110010000000000100100101101000000010000001010111011101111110011101101001000011001001000101111011001000110010001001000010011111100111001011111010000011101011011011011110100001111101100011001111101110000101100100000110000000110101000010101101000111000101100110100111000110111010000010001101111101000110101001010101011101011101000000001010011110110111001110111111110001100000110110001010000101111100000010101100100000001011010100110000111101100110000 |

Original message | © 2013-now Willem Van Iseghem (wforums.net), all rights reserved. |

N | 928704363481 |

e | 97 |

Encoded bits | 0100100110111111101011101100010100000011001100011100000110101001011100000010101110001001110010100111000010001101101011011000101101000111101100100011010101101000100011010110010001000111011101110011101111001100011100010001111111101010001111110111000000100011011110000110101000000000010101001101001101110110100100011111101110100101000100011010110101000111100011010101110011001011111100100110011011110010100001010110011111100111001101100001011110001000110110110010001101001110001111011001111101001101011011110011000111111110 |

Original message | Bewijs gevonden |

N | 999962000357 |

e | 53 |

Encoded bits | 011111001011110101001000011101110110101100101110010000100010000110000011001110011101001110010001100110101101000110101110 |

No primes loaded.

© 2013-now Willem Van Iseghem (Can I Have Some Coffee), all rights reserved. Hosted on GitHub.