RSA (Rivest-Shamir-Adleman) je algoritmus používaný moderními počítači k šifrování a dešifrování zpráv. Jedná se o asymetrický kryptografický algoritmus. Asymetrický znamená, že existují dva různé klíče. Nazývá se také kryptografie s veřejným klíčem, protože jeden z klíčů může být předán komukoli. Druhý klíč musí zůstat soukromý. Algoritmus vychází ze skutečnosti, že najít činitele velkého složeného čísla je obtížné: pokud jsou činiteli prvočísla, nazývá se tento problém prvočinitel. Jedná se také o generátor klíčových párů (veřejného a soukromého klíče).