summaryrefslogtreecommitdiff
path: root/lib/algorithms
diff options
context:
space:
mode:
authorDmitry Eremin-Solenikov <dbaryshkov@gmail.com>2019-09-28 21:40:30 +0300
committerDmitry Eremin-Solenikov <dbaryshkov@gmail.com>2019-10-06 19:32:05 +0300
commit025af8a4291fbc615a2ac57fe345d089ab8c2b4a (patch)
tree87bae8770aede383c922639ace5b31842c916720 /lib/algorithms
parent96fcde09cef9ca68b0d94d0498be3bfd8a609e2b (diff)
downloadgnutls-025af8a4291fbc615a2ac57fe345d089ab8c2b4a.tar.gz
lib/ecc: add documentation for GOST-related curves
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Diffstat (limited to 'lib/algorithms')
-rw-r--r--lib/algorithms/ecc.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/lib/algorithms/ecc.c b/lib/algorithms/ecc.c
index 0d305e8fee..f07de60f72 100644
--- a/lib/algorithms/ecc.c
+++ b/lib/algorithms/ecc.c
@@ -91,6 +91,29 @@ gnutls_ecc_curve_entry_st ecc_curves[] = {
.supported = 1,
},
#if ENABLE_GOST
+ /* Curves for usage in GOST digital signature algorithm (GOST R
+ * 34.10-2001/-2012) and key agreement (VKO GOST R 34.10-2001/-2012).
+ *
+ * Historically CryptoPro has defined three 256-bit curves for use with
+ * digital signature algorithm (CryptoPro-A, -B, -C).
+ *
+ * Also it has reissues two of them with different OIDs for key
+ * exchange (CryptoPro-XchA = CryptoPro-A and CryptoPro-XchB =
+ * CryptoPro-C).
+ *
+ * Then TC26 (Standard comitee working on cryptographic standards) has
+ * defined one 256-bit curve (TC26-256-A) and three 512-bit curves
+ * (TC26-512-A, -B, -C).
+ *
+ * And finally TC26 has reissues original CryptoPro curves under their
+ * own OID namespace (TC26-256-B = CryptoPro-A, TC26-256-C =
+ * CryptoPro-B and TC26-256-D = CryptoPro-C).
+ *
+ * CryptoPro OIDs are usable for both GOST R 34.10-2001 and
+ * GOST R 34.10-2012 keys (thus they have GNUTLS_PK_UNKNOWN in this
+ * table).
+ * TC26 OIDs are usable only for GOST R 34.10-2012 keys.
+ */
{
.name = "CryptoPro-A",
.oid = "1.2.643.2.2.35.1",