Elliptic curve cryptography or RSA algorithm and why? | Advantages and Disadvantages

Elliptic curve cryptography is probably better for most purposes, but not for everything.

ECC's main advantage is that you can use smaller keys for the same level of security, especially at high levels of security (AES-256 ~ ECC-512 ~ RSA-15424). This is because of fancy algorithms for factoring like the Number Field Sieve.

Advantages of ECC:

  • Smaller keys, ciphertexts and signatures.
  • Very fast key generation.
  • Fast signatures.
  • Moderately fast encryption and decryption.
  • Signatures can be computed in two stages, allowing latency much lower than inverse throughput.
  • Good protocols for authenticated key exchange (FH-ECMQV et al)
  • Better US government support.
  • Special curves with bilinear pairings allow new-fangled crypto.
  • Binary curves are really fast in hardware.
    Disadvantages of ECC:
    -Complicated and tricky to implement securely, particularly the standard curves.
  • Standards aren't state-of-the-art, particularly ECDSA which is kind of a hack compared to Schnorr signatures.
  • Signing with a broken random number generator compromises the key.
  • Still has some patent problems, especially for binary curves.
  • Newer algorithms could theoretically have unknown weaknesses. Binary curves are slightly scary.
  • Don't use DUAL_EC_DRBG, since it has a back door.

Advantages of RSA:

  • Very fast, very simple encryption and verification.
  • Easier to implement than ECC.
  • Easier to understand.
  • Signing and decryption are similar; encryption and verification are similar.
  • Widely deployed, better industry support.
    Disadvantages of RSA:
  • Very slow key generation.
  • Slow signing and decryption, which are slightly tricky to implement securely.
  • Two-part key is vulnerable to GCD attack if poorly implemented.

Coin Marketplace

STEEM 0.19
TRX 0.13
JST 0.028
BTC 65687.24
ETH 3269.56
USDT 1.00
SBD 2.69