This document provides an overview of the RSA algorithm for public-key cryptography. It explains that RSA relies on the difficulty of factoring large prime numbers. The algorithm involves each user generating a public/private key pair by selecting two large prime numbers p and q, computing the modulus N as p * q, and finding values for the encryption key e and decryption key d such that e * d = 1 mod φ(N), where φ(N) is Euler's totient function of N. A message M is encrypted by computing Me mod N and decrypted by computing Md mod N. The security of RSA depends on the difficulty of factoring the modulus N into its prime factors p and q without knowledge of φ(N