RSA encryption, decryption and prime calculator

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:

Calculate primes

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)


RSA Encryption

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

: : or



Status: Not started yet.

RSA Decryption

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.

Example tab

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 (, 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.