# RSA (cryptosystem)

## Algorithm for public-key cryptography / From Wikipedia, the free encyclopedia

#### Dear Wikiwand AI, let's keep it short by simply answering these key questions:

Can you list the top facts and stats about RSA algorithm?

Summarize this article for a 10 year old

**RSA** (**Rivest–Shamir–Adleman**) is a public-key cryptosystem, one of the oldest widely used for secure data transmission. The initialism "RSA" comes from the surnames of Ron Rivest, Adi Shamir and Leonard Adleman, who publicly described the algorithm in 1977. An equivalent system was developed secretly in 1973 at Government Communications Headquarters (GCHQ), the British signals intelligence agency, by the English mathematician Clifford Cocks. That system was declassified in 1997.^{[2]}

**Quick Facts**General, Designers ...

General | |
---|---|

Designers | Ron Rivest,^{[1]} Adi Shamir, and Leonard Adleman |

First published | 1977 |

Certification | PKCS#1, ANSI X9.31 |

Cipher detail | |

Key sizes | variable but 2,048 to 4,096 bit typically |

Rounds | 1 |

Best public cryptanalysis | |

General number field sieve for classical computers; Shor's algorithm for quantum computers. An 829-bit key has been broken. |

In a public-key cryptosystem, the encryption key is public and distinct from the decryption key, which is kept secret (private).
An RSA user creates and publishes a public key based on two large prime numbers, along with an auxiliary value. The prime numbers are kept secret. Messages can be encrypted by anyone, via the public key, but can only be decrypted by someone who knows the private key.^{[1]}

The security of RSA relies on the practical difficulty of factoring the product of two large prime numbers, the "factoring problem". Breaking RSA encryption is known as the RSA problem. Whether it is as difficult as the factoring problem is an open question.^{[3]} There are no published methods to defeat the system if a large enough key is used.

RSA is a relatively slow algorithm. Because of this, it is not commonly used to directly encrypt user data. More often, RSA is used to transmit shared keys for symmetric-key cryptography, which are then used for bulk encryption–decryption.