What is the definition of Textbook RSA?
What are some of the properties of textbook RSA?
How does it differ from other RSAs?
|
What is the definition of Textbook RSA? What are some of the properties of textbook RSA? How does it differ from other RSAs? |
|||
|
|
|
Textbook RSA: Choose two large primes $p$ and $q$.
Let $n=p\cdot q$. Choose $e$ such that $gcd(e,\phi(n))=1$ (where $\phi(n)=(p-1)\cdot (q-1)$). Find $d$ such that $e\cdot d\equiv 1\mod\phi(n)$.
Signing and verifying messages is also defined (omitted for brevity). Some (Undesirable) Properties of Textbook RSA:
Differences with Deployed RSA:
In no way is my list comprehensive, but hopefully this helps. |
||||
|
RSA is both an encryption and signature function. I have heard the term "textbook RSA" used mostly with the encryption function, but the same basic principle applies to RSA signatures as well. It is essentially RSA without any padding. There is no canonical definition of textbook RSA (e.g., does it include restrictions on choosing safe primes or not?) and so it may differ by context, but it is what is called "plain RSA" on the Wikipedia article. Since Wikipedia evolves, also see these slides from Dan Boneh. Textbook RSA has no semantic security, therefore it is not secure against chosen plaintext attacks or ciphertext attacks. This is because, respectively, it is deterministic (encrypting the same message twice produces the same ciphertext) and multiplicatively homomorphic (an encrypted values can be multiplicatively modified under encryption). The main alternative to textbook RSA encryption is RSA with OAEP. This variant is semantically, CPA-, and CCA-secure. RSA+OAEP is randomized and has no homomorphisms. OAEP itself is a second generation padding scheme, the first generation only providing semantic/CPA-security for RSA. RSA signatures can also be padded. RSA with PSS makes the signatures randomized. |
|||
|
|