RSA Interactive
Here you can create small public/private keys and use them to encrypt and decrypt messages for learning purposes.
It is fun to use but is not very secure*. See RSA Cryptography for more details.
images/rsa.js
*How secure is this?
Not very!
If someone knows the public key, such as "23,187", then all they have to do is find the prime factors of 187 (which are 11 and 17) and they have enough information to find the private key.
In practice that "187" number is very large (100s of digits) and so very hard to find its prime factors.