X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=NEWS;h=60003b8217b57fe395385a624b2af5e28acc72b4;hb=312c6b813adbf8a04253e3b1da28e02780c61d07;hp=14759c3cacc7913a6035e3c6f056852769d028e9;hpb=34c9c9a4f95eecfee75fc36d75d2ee45d1054a25;p=pygost.git diff --git a/NEWS b/NEWS index 14759c3..60003b8 100644 --- a/NEWS +++ b/NEWS @@ -1,14 +1,123 @@ +4.0: + * 34.10-2012 TC26 twisted Edwards curve related parameters + * Coordinates conversion from twisted Edwards to Weierstrass + form and vice versa + * More test vectors + * Backward incompatible Sbox and curves parameters renaming, to + comply with OIDs identifying them: + + Gost2814789_TestParamSet -> id-Gost28147-89-TestParamSet + Gost28147_CryptoProParamSetA -> id-Gost28147-89-CryptoPro-A-ParamSet + Gost28147_CryptoProParamSetB -> id-Gost28147-89-CryptoPro-B-ParamSet + Gost28147_CryptoProParamSetC -> id-Gost28147-89-CryptoPro-C-ParamSet + Gost28147_CryptoProParamSetD -> id-Gost28147-89-CryptoPro-D-ParamSet + Gost28147_tc26_ParamZ -> id-tc26-gost-28147-param-Z + GostR3411_94_TestParamSet -> id-GostR3411-94-TestParamSet + GostR3411_94_CryptoProParamSet -> id-GostR3411-94-CryptoProParamSet + + GostR3410_2001_TestParamSet -> id-GostR3410-2001-TestParamSet + GostR3410_2001_CryptoPro_A_ParamSet -> id-GostR3410-2001-CryptoPro-A-ParamSet + GostR3410_2001_CryptoPro_B_ParamSet -> id-GostR3410-2001-CryptoPro-B-ParamSet + GostR3410_2001_CryptoPro_C_ParamSet -> id-GostR3410-2001-CryptoPro-C-ParamSet + GostR3410_2001_CryptoPro_XchA_ParamSet -> id-GostR3410-2001-CryptoPro-XchA-ParamSet + GostR3410_2001_CryptoPro_XchB_ParamSet -> id-GostR3410-2001-CryptoPro-XchB-ParamSet + GostR3410_2012_TC26_256_ParamSetA -> id-tc26-gost-3410-2012-256-paramSetA + GostR3410_2012_TC26_ParamSetA -> id-tc26-gost-3410-12-512-paramSetA + GostR3410_2012_TC26_ParamSetB -> id-tc26-gost-3410-12-512-paramSetB + GostR3410_2012_TC26_ParamSetC -> id-tc26-gost-3410-2012-512-paramSetC + + * Backward incompatible GOST3410Curve initialization: all parameters + are passed not as big-endian encoded binaries, but as integers + * Backward incompatible change: gost3410.CURVE_PARAMS is + disappeared. gost3410.CURVES dictionary holds already initialized + GOST3410Curve. Just use + CURVES["id-tc26-gost-3410-12-512-paramSetA"] instead of + GOST3410Curve(*CURVE_PARAMS["id-tc26-gost-3410-12-512-paramSetA"]) + +3.15: + * Licence changed back to GNU GPLv3+. + GNU LGPLv3+ licenced versions are not available anymore + * More ASN.1-based test vectors (PyDERASN dependency required) + +3.14: + Add missing typing stubs related to previous release. + +3.13: + * Ability to explicitly specify used 28147-89 Sbox in + pygost.wrap.* functions + * Ability to use key meshing in 28147-89 CBC mode + +3.12: + * Added mode argument to pygost.gost3410_vko.kek_34102012256, + because 256-bit private keys can be used with that algorithm too + * Fix incorrect degree sanitizing in pygost.gost3410.GOST3410Curve.exp + preventing using of UKM=1 in @code{pygost.gost3410_vko.kek_*} functions + +3.11: + Fixed PEP247 typing stub with invalid hexdigest method. + +3.10: + Additional missing 34.11-* typing stubs. + +3.9: + Add missing 34.11-2012 PBKDF2 typing stub. + +3.8: + * 34.11-2012 based PBKDF2 function added + * 34.13-2015 does not require double blocksized IVs + +3.7: + Fixed 34.13-2015 OFB bug with IVs longer than 2 blocks. + +3.6: + Fixed source files installation during setup.py install invocation. + +3.5: + Dummy release: added long description in package metadata. + +3.4: + * Small mypy stubs related fixes + * Licence changed from GNU GPLv3+ to GNU LGPLv3+ + +3.3: + * GOST3412Kuz renamed to GOST3412Kuznechik + * GOST3412Magma implements GOST R 34.12-2015 Magma 64-bit block cipher + +3.2: + 34.13-2015 block cipher modes of operation implementations. + +3.1: + Fixed mypy stubs related to PEP247-successors. + +3.0: + * gost3411_94 renamed to gost341194 + * gost3411_2012 renamed and split to gost34112012256, gost34112012512 + * GOST34112012 split to GOST34112012256, GOST34112012512 + * gost3410.kek moved to separate gost3410_vko.kek_34102001 + * VKO GOST R 34.10-2012 appeared in gost3410_vko, with test vectors + * 34.11-94 digest is reversed, to be compatible with HMAC and + PBKDF2 test vectors describe in TC26 documents + * 34.11-94 PBKDF2 test vectors added + * gost3410.prv_unmarshal, gost3410.pub_marshal, gost3410.pub_unmarshal + helpers added, removing the need of x509 module at all + * gost3410.verify requires (pubX, pubY) tuple, instead of two separate + pubX, pubY arguments + * 34.11-94 based PBKDF2 function added + +2.4: + Fixed 34.13 mypy stub. + 2.3: - Typo and pylint fixes + Typo and pylint fixes. 2.2: - 34.13-2015 padding methods + GOST R 34.13-2015 padding methods. 2.1: - Documentation and supplementary files refactoring + Documentation and supplementary files refactoring. 2.0: - PEP-0247 compatible hashers and MAC + PEP-0247 compatible hashers and MAC. 1.0: * Ability to specify curve in pygost.x509 module @@ -21,19 +130,19 @@ * pygost.gost3411_12.GOST341112 -> pygost.gost3411_2012.GOST34112012 0.16: - 34.10-2012 TC26 curve parameters + 34.10-2012 TC26 curve parameters. 0.15: - PEP-0484 static typing hints + PEP-0484 static typing hints. 0.14: - 34.10-2012 workability fix + 34.10-2012 workability fix. 0.13: - Python3 compatibility + Python3 compatibility. 0.11: - GOST R 34.12-2015 Кузнечик (Kuznechik) implementation + GOST R 34.12-2015 Кузнечик (Kuznechik) implementation. 0.10: - CryptoPro and GOST key wrapping, CryptoPro key meshing + CryptoPro and GOST key wrapping, CryptoPro key meshing.