I've downloaded the source code from the developer site. All the encrypted related parts under the libgcrypt
Libgcrypt is a cryptography library developed as a separated module of GnuPG. It can also be used independently of GnuPG, but depends on its error-reporting library Libgpg-error.
And those are listed as the supported curve in the library
- NIST (P-256, P-384, P-521)
- SECG (secp256k1)
- ECC Brainpool / RFC 5639 (P256r1, P384r1, P512r1)
- Bernstein Curve25519
- GOST R 34.10-2012 (RFC 7091)
Which one is used? Search files excluding the
libgcrypt directory since it is the exact copy of it.
grep -r curve tools/ build/ calendar/ chat/ mail mailnews/ python/ suite/ taskcluster/ tools/
in the command line displays only
This curve is used for public-key signature system as Ed2559.
Curve25519 is also known as the Bernstein curve. It is one of the most secure curves for the listed criteria as in the safecurves.cr.yp.to/.
If you want to read more about how secure the curve is, see our canonical answer;
And note that if ever Shor's period finding algorithm is built with enough qbits the curve will be no more secure.
Edwards25519 aims for a ‘128-bit security level