]> Cypherpunks.ru repositories - pygost.git/blob - NEWS
Simplify GOST3410Curve initialization
[pygost.git] / NEWS
1 4.0:
2     * 34.10-2012 TC26 twisted Edwards curve related parameters
3     * More test vectors
4     * Backward incompatible Sbox and curves parameters renaming, to
5       comply with OIDs identifying them:
6
7       Gost2814789_TestParamSet       -> id-Gost28147-89-TestParamSet
8       Gost28147_CryptoProParamSetA   -> id-Gost28147-89-CryptoPro-A-ParamSet
9       Gost28147_CryptoProParamSetB   -> id-Gost28147-89-CryptoPro-B-ParamSet
10       Gost28147_CryptoProParamSetC   -> id-Gost28147-89-CryptoPro-C-ParamSet
11       Gost28147_CryptoProParamSetD   -> id-Gost28147-89-CryptoPro-D-ParamSet
12       Gost28147_tc26_ParamZ          -> id-tc26-gost-28147-param-Z
13       GostR3411_94_TestParamSet      -> id-GostR3411-94-TestParamSet
14       GostR3411_94_CryptoProParamSet -> id-GostR3411-94-CryptoProParamSet
15
16       GostR3410_2001_TestParamSet            -> id-GostR3410-2001-TestParamSet
17       GostR3410_2001_CryptoPro_A_ParamSet    -> id-GostR3410-2001-CryptoPro-A-ParamSet
18       GostR3410_2001_CryptoPro_B_ParamSet    -> id-GostR3410-2001-CryptoPro-B-ParamSet
19       GostR3410_2001_CryptoPro_C_ParamSet    -> id-GostR3410-2001-CryptoPro-C-ParamSet
20       GostR3410_2001_CryptoPro_XchA_ParamSet -> id-GostR3410-2001-CryptoPro-XchA-ParamSet
21       GostR3410_2001_CryptoPro_XchB_ParamSet -> id-GostR3410-2001-CryptoPro-XchB-ParamSet
22       GostR3410_2012_TC26_256_ParamSetA      -> id-tc26-gost-3410-2012-256-paramSetA
23       GostR3410_2012_TC26_ParamSetA          -> id-tc26-gost-3410-12-512-paramSetA
24       GostR3410_2012_TC26_ParamSetB          -> id-tc26-gost-3410-12-512-paramSetB
25       GostR3410_2012_TC26_ParamSetC          -> id-tc26-gost-3410-2012-512-paramSetC
26
27     * Backward incompatible GOST3410Curve initialization: all parameters
28       are passed not as big-endian encoded binaries, but as integers
29     * Backward incompatible change: gost3410.CURVE_PARAMS is
30       disappeared. gost3410.CURVES dictionary holds already initialized
31       GOST3410Curve. Just use
32       CURVES["id-tc26-gost-3410-12-512-paramSetA"] instead of
33       GOST3410Curve(*CURVE_PARAMS["id-tc26-gost-3410-12-512-paramSetA"])
34
35 3.15:
36     * Licence changed back to GNU GPLv3+.
37       GNU LGPLv3+ licenced versions are not available anymore
38     * More ASN.1-based test vectors (PyDERASN dependency required)
39
40 3.14:
41     Add missing typing stubs related to previous release.
42
43 3.13:
44     * Ability to explicitly specify used 28147-89 Sbox in
45       pygost.wrap.* functions
46     * Ability to use key meshing in 28147-89 CBC mode
47
48 3.12:
49     * Added mode argument to pygost.gost3410_vko.kek_34102012256,
50       because 256-bit private keys can be used with that algorithm too
51     * Fix incorrect degree sanitizing in pygost.gost3410.GOST3410Curve.exp
52       preventing using of UKM=1 in @code{pygost.gost3410_vko.kek_*} functions
53
54 3.11:
55     Fixed PEP247 typing stub with invalid hexdigest method.
56
57 3.10:
58     Additional missing 34.11-* typing stubs.
59
60 3.9:
61     Add missing 34.11-2012 PBKDF2 typing stub.
62
63 3.8:
64     * 34.11-2012 based PBKDF2 function added
65     * 34.13-2015 does not require double blocksized IVs
66
67 3.7:
68     Fixed 34.13-2015 OFB bug with IVs longer than 2 blocks.
69
70 3.6:
71     Fixed source files installation during setup.py install invocation.
72
73 3.5:
74     Dummy release: added long description in package metadata.
75
76 3.4:
77     * Small mypy stubs related fixes
78     * Licence changed from GNU GPLv3+ to GNU LGPLv3+
79
80 3.3:
81     * GOST3412Kuz renamed to GOST3412Kuznechik
82     * GOST3412Magma implements GOST R 34.12-2015 Magma 64-bit block cipher
83
84 3.2:
85     34.13-2015 block cipher modes of operation implementations.
86
87 3.1:
88     Fixed mypy stubs related to PEP247-successors.
89
90 3.0:
91     * gost3411_94 renamed to gost341194
92     * gost3411_2012 renamed and split to gost34112012256, gost34112012512
93     * GOST34112012 split to GOST34112012256, GOST34112012512
94     * gost3410.kek moved to separate gost3410_vko.kek_34102001
95     * VKO GOST R 34.10-2012 appeared in gost3410_vko, with test vectors
96     * 34.11-94 digest is reversed, to be compatible with HMAC and
97       PBKDF2 test vectors describe in TC26 documents
98     * 34.11-94 PBKDF2 test vectors added
99     * gost3410.prv_unmarshal, gost3410.pub_marshal, gost3410.pub_unmarshal
100       helpers added, removing the need of x509 module at all
101     * gost3410.verify requires (pubX, pubY) tuple, instead of two separate
102       pubX, pubY arguments
103     * 34.11-94 based PBKDF2 function added
104
105 2.4:
106     Fixed 34.13 mypy stub.
107
108 2.3:
109     Typo and pylint fixes.
110
111 2.2:
112     GOST R 34.13-2015 padding methods.
113
114 2.1:
115     Documentation and supplementary files refactoring.
116
117 2.0:
118     PEP-0247 compatible hashers and MAC.
119
120 1.0:
121     * Ability to specify curve in pygost.x509 module
122     * Ability to use 34.10-2012 in pygost.x509 functions
123
124     Renamed classes and modules:
125
126     * pygost.gost3410.SIZE_34100 -> pygost.gost3410.SIZE_3410_2001
127     * pygost.gost3410.SIZE_34112 -> pygost.gost3410.SIZE_3410_2012
128     * pygost.gost3411_12.GOST341112 -> pygost.gost3411_2012.GOST34112012
129
130 0.16:
131     34.10-2012 TC26 curve parameters.
132
133 0.15:
134     PEP-0484 static typing hints.
135
136 0.14:
137     34.10-2012 workability fix.
138
139 0.13:
140     Python3 compatibility.
141
142 0.11:
143     GOST R 34.12-2015 Кузнечик (Kuznechik) implementation.
144
145 0.10:
146     CryptoPro and GOST key wrapping, CryptoPro key meshing.