]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
lib/ecc: add documentation for GOST-related curves
authorDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Sat, 28 Sep 2019 18:40:30 +0000 (21:40 +0300)
committerDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Sun, 6 Oct 2019 16:32:05 +0000 (19:32 +0300)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
lib/algorithms/ecc.c

index 0d305e8fee7995fa825b97f7941ce6e5d11c1ecf..f07de60f7283b4a004693835cbf8bd5fd806b18e 100644 (file)
@@ -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",