RSA (Rivest-Shamir-Adleman) je algoritmus používaný modernými počítačmi na šifrovanie a dešifrovanie správ. Je to asymetrický kryptografický algoritmus. Asymetrický znamená, že existujú dva rôzne kľúče. Nazýva sa aj kryptografia s verejným kľúčom, pretože jeden z kľúčov môže byť poskytnutý komukoľvek. Druhý kľúč musí byť súkromný. Algoritmus je založený na tom, že nájsť činitele veľkého zloženého čísla je ťažké: keď sú činiteľmi prvočísla, problém sa nazýva prvočíselná faktorizácia. Ide tiež o generátor kľúčových párov (verejného a súkromného kľúča).