2 * PEP-396 compatible module's __version__
3 * Curve parameters aliases:
5 id-GostR3410-2001-CryptoPro-XchA-ParamSet -> id-GostR3410-2001-CryptoPro-A-ParamSet
6 id-GostR3410-2001-CryptoPro-XchB-ParamSet -> id-GostR3410-2001-CryptoPro-C-ParamSet
7 id-tc26-gost-3410-2012-256-paramSetB -> id-GostR3410-2001-CryptoPro-A-ParamSet
8 id-tc26-gost-3410-2012-256-paramSetC -> id-GostR3410-2001-CryptoPro-B-ParamSet
9 id-tc26-gost-3410-2012-256-paramSetD -> id-GostR3410-2001-CryptoPro-C-ParamSet
11 * Forbid any later GNU GPL version autousage (project's licence
12 now is GNU GPLv3 only)
15 * 34.10-2012 TC26 twisted Edwards curve related parameters
16 * Coordinates conversion from twisted Edwards to Weierstrass
19 * Backward incompatible Sbox and curves parameters renaming, to
20 comply with OIDs identifying them:
22 Gost2814789_TestParamSet -> id-Gost28147-89-TestParamSet
23 Gost28147_CryptoProParamSetA -> id-Gost28147-89-CryptoPro-A-ParamSet
24 Gost28147_CryptoProParamSetB -> id-Gost28147-89-CryptoPro-B-ParamSet
25 Gost28147_CryptoProParamSetC -> id-Gost28147-89-CryptoPro-C-ParamSet
26 Gost28147_CryptoProParamSetD -> id-Gost28147-89-CryptoPro-D-ParamSet
27 Gost28147_tc26_ParamZ -> id-tc26-gost-28147-param-Z
28 GostR3411_94_TestParamSet -> id-GostR3411-94-TestParamSet
29 GostR3411_94_CryptoProParamSet -> id-GostR3411-94-CryptoProParamSet
31 GostR3410_2001_TestParamSet -> id-GostR3410-2001-TestParamSet
32 GostR3410_2001_CryptoPro_A_ParamSet -> id-GostR3410-2001-CryptoPro-A-ParamSet
33 GostR3410_2001_CryptoPro_B_ParamSet -> id-GostR3410-2001-CryptoPro-B-ParamSet
34 GostR3410_2001_CryptoPro_C_ParamSet -> id-GostR3410-2001-CryptoPro-C-ParamSet
35 GostR3410_2001_CryptoPro_XchA_ParamSet -> id-GostR3410-2001-CryptoPro-XchA-ParamSet
36 GostR3410_2001_CryptoPro_XchB_ParamSet -> id-GostR3410-2001-CryptoPro-XchB-ParamSet
37 GostR3410_2012_TC26_256_ParamSetA -> id-tc26-gost-3410-2012-256-paramSetA
38 GostR3410_2012_TC26_ParamSetA -> id-tc26-gost-3410-12-512-paramSetA
39 GostR3410_2012_TC26_ParamSetB -> id-tc26-gost-3410-12-512-paramSetB
40 GostR3410_2012_TC26_ParamSetC -> id-tc26-gost-3410-2012-512-paramSetC
42 * Backward incompatible GOST3410Curve initialization: all parameters
43 are passed not as big-endian encoded binaries, but as integers
44 * Backward incompatible change: gost3410.CURVE_PARAMS is
45 disappeared. gost3410.CURVES dictionary holds already initialized
46 GOST3410Curve. Just use
47 CURVES["id-tc26-gost-3410-12-512-paramSetA"] instead of
48 GOST3410Curve(*CURVE_PARAMS["id-tc26-gost-3410-12-512-paramSetA"])
51 * Licence changed back to GNU GPLv3+.
52 GNU LGPLv3+ licenced versions are not available anymore
53 * More ASN.1-based test vectors (PyDERASN dependency required)
56 Add missing typing stubs related to previous release.
59 * Ability to explicitly specify used 28147-89 Sbox in
60 pygost.wrap.* functions
61 * Ability to use key meshing in 28147-89 CBC mode
64 * Added mode argument to pygost.gost3410_vko.kek_34102012256,
65 because 256-bit private keys can be used with that algorithm too
66 * Fix incorrect degree sanitizing in pygost.gost3410.GOST3410Curve.exp
67 preventing using of UKM=1 in @code{pygost.gost3410_vko.kek_*} functions
70 Fixed PEP247 typing stub with invalid hexdigest method.
73 Additional missing 34.11-* typing stubs.
76 Add missing 34.11-2012 PBKDF2 typing stub.
79 * 34.11-2012 based PBKDF2 function added
80 * 34.13-2015 does not require double blocksized IVs
83 Fixed 34.13-2015 OFB bug with IVs longer than 2 blocks.
86 Fixed source files installation during setup.py install invocation.
89 Dummy release: added long description in package metadata.
92 * Small mypy stubs related fixes
93 * Licence changed from GNU GPLv3+ to GNU LGPLv3+
96 * GOST3412Kuz renamed to GOST3412Kuznechik
97 * GOST3412Magma implements GOST R 34.12-2015 Magma 64-bit block cipher
100 34.13-2015 block cipher modes of operation implementations.
103 Fixed mypy stubs related to PEP247-successors.
106 * gost3411_94 renamed to gost341194
107 * gost3411_2012 renamed and split to gost34112012256, gost34112012512
108 * GOST34112012 split to GOST34112012256, GOST34112012512
109 * gost3410.kek moved to separate gost3410_vko.kek_34102001
110 * VKO GOST R 34.10-2012 appeared in gost3410_vko, with test vectors
111 * 34.11-94 digest is reversed, to be compatible with HMAC and
112 PBKDF2 test vectors describe in TC26 documents
113 * 34.11-94 PBKDF2 test vectors added
114 * gost3410.prv_unmarshal, gost3410.pub_marshal, gost3410.pub_unmarshal
115 helpers added, removing the need of x509 module at all
116 * gost3410.verify requires (pubX, pubY) tuple, instead of two separate
118 * 34.11-94 based PBKDF2 function added
121 Fixed 34.13 mypy stub.
124 Typo and pylint fixes.
127 GOST R 34.13-2015 padding methods.
130 Documentation and supplementary files refactoring.
133 PEP-0247 compatible hashers and MAC.
136 * Ability to specify curve in pygost.x509 module
137 * Ability to use 34.10-2012 in pygost.x509 functions
139 Renamed classes and modules:
141 * pygost.gost3410.SIZE_34100 -> pygost.gost3410.SIZE_3410_2001
142 * pygost.gost3410.SIZE_34112 -> pygost.gost3410.SIZE_3410_2012
143 * pygost.gost3411_12.GOST341112 -> pygost.gost3411_2012.GOST34112012
146 34.10-2012 TC26 curve parameters.
149 PEP-0484 static typing hints.
152 34.10-2012 workability fix.
155 Python3 compatibility.
158 GOST R 34.12-2015 Кузнечик (Kuznechik) implementation.
161 CryptoPro and GOST key wrapping, CryptoPro key meshing.