Questions tagged [ecc]

ECC stands for Elliptic Curve Cryptography. Elliptic curves are a mathematical structure which allow to define cryptographic operations on them.

Elliptic Curve Cryptography is used in public-key cryptography, and is based on the algebraic structure of elliptic curves over finite fields: The security of ECC depends on the ability to compute a point multiplication, and the intractability of computing the multiplicand given the original and product points.

The benefits of ECC compared to other systems (such as RSA), is a smaller key size, which reduces requirements for storage and transmission. ECC is suitable for digital signatures, key-agreement, and pseudo-random generators, among other things. Due to it's limited computational requirements, ECC has been used on devices with limited computational power, such as RFID devices.

166 questions
118
votes
2 answers

SSH Key: Ed25519 vs RSA

A lot of people recommend using Ed25519 instead of RSA keys for SSH. The introduction page of Ed25519 (http://ed25519.cr.yp.to/) says: [..] breaking it has similar difficulty to breaking [..] RSA with ~3000-bit keys [..] So speaking only of security…
Ben Richard
  • 3,006
  • 5
  • 16
  • 18
115
votes
3 answers

Which elliptic curve should I use?

I am currently renewing an SSL certificate, and I was considering switching to elliptic curves. Per Bernstein and Lange, I know that some curves should not be used but I'm having difficulties selecting the correct ones in OpenSSL: $ openssl ecparam…
executifs
  • 4,772
  • 4
  • 23
  • 25
97
votes
4 answers

What is ECDHE-RSA?

What is the difference between ECDHE-RSA and DHE-RSA? I know that DHE-RSA is (in one sentence) Diffie Hellman signed using RSA keys. Where DH is used for forward secrecy and RSA guards against MITM, but where do the elliptic curves in ECDHE-RSA are…
Hubert Kario
  • 3,708
  • 3
  • 27
  • 34
97
votes
2 answers

Is it bad that my ed25519 key is so short compared to a RSA key?

I recently generated a new SSH key in the ed25519 format. The public key is only 69 bytes long while my old RSA key is 373 bytes. From my perception ed25519 is the more recent and secure format. So why isn't longer better here?
Alex
  • 1,207
  • 1
  • 10
  • 9
42
votes
3 answers

Which host key algorithm is best to use for SSH?

When you first connect to an SSH server that is not contained inside your known_hosts file your SSH client displays the fingerprint of the public key that the server gave. I found from this question here that as a client you are able to specify…
user4191887
  • 749
  • 1
  • 6
  • 10
28
votes
4 answers

What elliptic curves are supported by browsers?

I Wireshark'ed a Firefox 3 request, because I couldn't find the curve names documented: Elliptic curve: secp256r1 (0x0017) Elliptic curve: secp384r1 (0x0018) Elliptic curve: secp521r1 (0x0019) What are the supported curves for other browsers? Does…
Smit Johnth
  • 1,709
  • 4
  • 17
  • 23
26
votes
4 answers

Generating ECDSA certificate and private key in one step

Similar to how it can be easily done for RSA: openssl req -x509 -nodes -newkey rsa:2048 -rand /dev/urandom -keyout example.key -out example.crt -days 365 I'd like to generate an ECDSA cert/key in one step. I've tried: openssl req -x509 -nodes…
Python Novice
  • 531
  • 1
  • 6
  • 11
26
votes
3 answers

ECC in (Open)PGP

How is with the support for ECC (Elliptic Curve Cryptography) in (Open)PGP so far? It seems that GnuPG (The GNU Privacy Guard) doesn't have an official implementation - but I did find the gnupg-ecc project (ECC-enabled GnuPG per RFC 6637) on Google…
esskar
  • 629
  • 1
  • 5
  • 12
24
votes
3 answers

Why don't folks seem to use ECC for TLS root certificate signature?

I looked around, and all I see is websites using RSA2048 for Root signature, and a few using ECC for encryption. Are there any reasons folks don't seem to use ECC for TLS root signature? Are there any drawbacks to using ECC for X.509? - if indeed…
Woodstock
  • 679
  • 6
  • 20
21
votes
5 answers

Can ECC be used without infringing on patents?

Can ECC (Elliptic Curve Cryptography) be safely used without infringing on Certicom's patents? I would like to make use of ECC in an embedded system to establish a secure channel. But, I am concerned about patent infringement. Are there open source…
Joby Taffey
  • 373
  • 2
  • 9
19
votes
3 answers

Converting ECC Private key to PKCS#1 format

Is there any way to convert an ECC private key to RSA PKCS#1 format? I have tried converting it to PKCS#8 first using OpenSSL: openssl pkcs8 -topk8 -nocrypt -in EC_key.pem -out pkcs8_key.pem This results in a pem file that is in (what i am…
Sid Said
  • 193
  • 1
  • 1
  • 5
19
votes
2 answers

Generate new key - ECC vs RSA

I intend to start using GnuPG again. I haven't used it for the last 2 years and was surprised that there is now the option for RSA and ECC keys. After reading a bit about ECC, it seems to me there is quite a bit uncertainty about where it is going…
prankenandi
  • 373
  • 3
  • 6
17
votes
1 answer

Why is secp521r1 no longer supported in Chrome, others?

Found a few issue threads, notably for Chrome (Chromium issue #478225), and the browser does appear to have dropped support for the secp521r1 curve (can test your browser using SSLLabs). There were other issue threads for other software packages…
AJAr
  • 1,682
  • 1
  • 9
  • 19
16
votes
2 answers

Why is ECC more vulnerable than RSA in a post-quantum world?

Forgive me if this should be in the crypto sub, but sometimes the answers there are very mathematical and I would rather have an answer which is a bit lighter on the math. I was watching the Cryptographer's panel from RSA 2013 and at about 33…
JZeolla
  • 2,936
  • 1
  • 18
  • 25
14
votes
1 answer

Why does openssl writes EC parameters when generating private key?

When I'm generating a private key with openssl, it writes the curve's parameters, and the actual private key: ❯ openssl ecparam -name secp256k1 -genkey -----BEGIN EC PARAMETERS----- BgUrgQQACg== -----END EC PARAMETERS----- -----BEGIN EC PRIVATE…
Elazar Leibovich
  • 519
  • 2
  • 7
  • 14
1
2 3
11 12