

4096-bit and longer keys), due to prime number generation process. By contrast, in RSA key generation may be slow, especially for long keys (e.g. In the ECC cryptosystems, key generation consists of random number generation + EC point multiplication and is extremely fast, even for the most heavy curves used in practice. Ciphertext length has typically the same length as the unencrypted plain-text. By contract, in RSA for 128-bit security, a 3072-bit private key is needed. Signatures typically consist of 2 times the private key-length or longer (depends on the encoding scheme). Typically for 128-bit encryption, a 256-bit EC private key is used. Smaller keys, ciphertexts and signatures.The Elliptic-curve cryptography (ECC) has the following advantages over RSA:


For example (as of Nov 2018) Facebook and Google protect their primary Web sites with 256-bit ECC private keys, while Amazon and Apple protect their primary Web sites with 2048-bit RSA private keys. Today both cryptosystems are widely used. Generally, it is considered that ECC is the modern and the more preferable public-key cryptosystem because of smaller keys, shorter signatures and better performance, but some people disagree. Both cryptosystems (RSA and elliptic-curve cryptography) work with private and public keys and provide similar capabilities like key generation, digital signatures, key agreement schemes and encryption schemes. It is disputable whether ECC or RSA is better in the space of the public-key cryptosystems, so we shall present their strong and weak sides. Exercises - Scrypt Key Derivation and Password Hashing.Practical Cryptography for Developers (Unfinished)
