Previous: DSA key parameters, Up: Used S-expressions [Contents][Index]
An ECC private key is described by this S-expression:
(private-key
(ecc
(p p-mpi)
(a a-mpi)
(b b-mpi)
(g g-point)
(n n-mpi)
(q q-point)
(d d-mpi)))
Prime specifying the field GF(p).
The two coefficients of the Weierstrass equation y^2 = x^3 + ax + b
Base point g.
Order of g
The point representing the public key Q = dG.
The private key d
All point values are encoded in standard format; Libgcrypt does in
general only support uncompressed points, thus the first byte needs to
be 0x04. However “EdDSA” describes its own compression
scheme which is used by default; the non-standard first byte
0x40 may optionally be used to explicit flag the use of the
algorithm’s native compression method.
The public key is similar, with "private-key" replaced by "public-key" and no d-mpi.
If the domain parameters are well-known, the name of this curve may be used. For example
(private-key
(ecc
(curve "NIST P-192")
(q q-point)
(d d-mpi)))
Note that q-point is optional for a private key. The
curve parameter may be given in any case and is used to replace
missing parameters.
Currently implemented curves are:
Curve25519X255191.3.6.1.4.1.3029.1.5.11.3.101.110The RFC-8410 255 bit curve, its RFC name, OpenPGP and RFC OIDs.
X4481.3.101.111The RFC-8410 448 bit curve and its RFC OID.
Ed255191.3.6.1.4.1.11591.15.11.3.101.112The signing variant of the RFC-8410 255 bit curve, its OpenPGP and RFC OIDs.
Ed4481.3.101.113The signing variant of the RFC-8410 448 bit curve and its RFC OID.
NIST P-1921.2.840.10045.3.1.1nistp192prime192v1secp192r1The NIST 192 bit curve, its OID and aliases.
NIST P-2241.3.132.0.33nistp224secp224r1The NIST 224 bit curve, its OID and aliases.
NIST P-2561.2.840.10045.3.1.7nistp256prime256v1secp256r1The NIST 256 bit curve, its OID and aliases.
NIST P-3841.3.132.0.34nistp384secp384r1The NIST 384 bit curve, its OID and aliases.
NIST P-5211.3.132.0.35nistp521secp521r1The NIST 521 bit curve, its OID and aliases.
brainpoolP160r11.3.36.3.3.2.8.1.1.1The Brainpool 160 bit curve and its OID.
brainpoolP192r11.3.36.3.3.2.8.1.1.3The Brainpool 192 bit curve and its OID.
brainpoolP224r11.3.36.3.3.2.8.1.1.5The Brainpool 224 bit curve and its OID.
brainpoolP256r11.3.36.3.3.2.8.1.1.7The Brainpool 256 bit curve and its OID.
brainpoolP320r11.3.36.3.3.2.8.1.1.9The Brainpool 320 bit curve and its OID.
brainpoolP384r11.3.36.3.3.2.8.1.1.11The Brainpool 384 bit curve and its OID.
brainpoolP512r11.3.36.3.3.2.8.1.1.13The Brainpool 512 bit curve and its OID.
GOST2001-test1.2.643.2.2.35.0GOST2001-CryptoPro-A1.2.643.2.2.35.1GOST2001-CryptoPro-B1.2.643.2.2.35.2GOST2001-CryptoPro-C1.2.643.2.2.35.3GOST2001-CryptoPro-AGOST2001-CryptoPro-XchAGOST2001-CryptoPro-CGOST2001-CryptoPro-XchBGOST2001-CryptoPro-A1.2.643.2.2.36.0GOST2001-CryptoPro-C1.2.643.2.2.36.1GOST2012-256-tc26-A1.2.643.7.1.2.1.1.1GOST2001-CryptoPro-A1.2.643.7.1.2.1.1.2GOST2001-CryptoPro-AGOST2012-256-tc26-BGOST2001-CryptoPro-B1.2.643.7.1.2.1.1.3GOST2001-CryptoPro-BGOST2012-256-tc26-CGOST2001-CryptoPro-C1.2.643.7.1.2.1.1.4GOST2001-CryptoPro-CGOST2012-256-tc26-DGOST2012-512-testGOST2012-testGOST2012-512-test1.2.643.7.1.2.1.2.0GOST2012-512-tc26-AGOST2012-tc26-AGOST2012-512-tc26-BGOST2012-tc26-BGOST2012-512-tc26-A1.2.643.7.1.2.1.2.1GOST2012-512-tc26-B1.2.643.7.1.2.1.2.2GOST2012-512-tc26-C1.2.643.7.1.2.1.2.3secp256k11.3.132.0.10sm2p256v11.2.156.10197.1.301As usual the OIDs may optionally be prefixed with the string OID.
or oid..
Previous: DSA key parameters, Up: Used S-expressions [Contents][Index]