]> Cypherpunks.ru repositories - gogost.git/blob - news.texi
Preparing for release
[gogost.git] / news.texi
1 @node News
2 @unnumbered News
3
4 @table @strong
5
6 @anchor{Release 4.0}
7 @item 4.0
8     @itemize
9     @item Backward incompatible change: all keys passing to encryption
10         functions are slices now, not the fixed arrays. That heavily
11         simplifies the library usage
12     @item Fix bug with overwriting IVs memory in @code{gost28147.CFB*crypter}
13     @item @code{TLSTREE}, used in TLS 1.[23], implementation
14     @item @code{gost3410.KEK2012*} can be used with any curves, not only 512-bit ones
15     @item @code{gost3410.PrivateKey} satisfies @code{crypto.Signer} interface
16     @item @code{gost34112012*} hashes satisfy @code{encoding.Binary(Un)Marshaler}
17     @item Streebog256 HKDF test vectors
18     @end itemize
19
20 @anchor{Release 3.0}
21 @item 3.0
22     @itemize
23     @item Multilinear Galois Mode (MGM) block cipher mode for
24       64 and 128 bit ciphers
25     @item @code{KDF_GOSTR3411_2012_256} KDF
26     @item 34.12-2015 64-bit block cipher Магма (Magma)
27     @item Additional EAC 28147-89 Sbox
28     @item 34.10-2012 TC26 twisted Edwards curve related parameters
29     @item Coordinates conversion from twisted Edwards to Weierstrass
30       form and vice versa
31     @item Fixed @code{gost3410.PrivateKey}'s length validation
32     @item Backward incompatible change: @code{gost3410.NewCurve} takes
33       @code{big.Int}, instead of encoded integers
34     @item Backward incompatible Sbox and curves parameters renaming, to
35       comply with OIDs identifying them:
36 @verbatim
37 Gost2814789_TestParamSet       -> SboxIdGost2814789TestParamSet
38 Gost28147_CryptoProParamSetA   -> SboxIdGost2814789CryptoProAParamSet
39 Gost28147_CryptoProParamSetB   -> SboxIdGost2814789CryptoProBParamSet
40 Gost28147_CryptoProParamSetC   -> SboxIdGost2814789CryptoProCParamSet
41 Gost28147_CryptoProParamSetD   -> SboxIdGost2814789CryptoProDParamSet
42 GostR3411_94_TestParamSet      -> SboxIdGostR341194TestParamSet
43 Gost28147_tc26_ParamZ          -> SboxIdtc26gost28147paramZ
44 GostR3411_94_CryptoProParamSet -> SboxIdGostR341194CryptoProParamSet
45 EACParamSet                    -> SboxEACParamSet
46
47 CurveParamsGostR34102001cc            -> CurveGostR34102001ParamSetcc
48 CurveParamsGostR34102001Test          -> CurveIdGostR34102001TestParamSet
49 CurveParamsGostR34102001CryptoProA    -> CurveIdGostR34102001CryptoProAParamSet
50 CurveParamsGostR34102001CryptoProB    -> CurveIdGostR34102001CryptoProBParamSet
51 CurveParamsGostR34102001CryptoProC    -> CurveIdGostR34102001CryptoProCParamSet
52 CurveParamsGostR34102001CryptoProXchA -> CurveIdGostR34102001CryptoProXchAParamSet
53 CurveParamsGostR34102001CryptoProXchB -> CurveIdGostR34102001CryptoProXchBParamSet
54 CurveParamsGostR34102012TC26ParamSetA -> CurveIdtc26gost341012512paramSetA
55 CurveParamsGostR34102012TC26ParamSetB -> CurveIdtc26gost341012512paramSetB
56 @end verbatim
57     @item Various additional test vectors
58     @item go modules friendliness
59     @end itemize
60
61 @anchor{Release 2.0}
62 @item 2.0
63     @itemize
64     @item 34.11-2012 is split on two different modules:
65         @code{gost34112012256} and @code{gost34112012512}
66     @item 34.11-94's digest is reversed. Now it is compatible with TC26's
67       HMAC and PBKDF2 test vectors
68     @item @code{gogost-streebog} is split to @code{streebog256} and
69         @code{streebog512} correspondingly by analogy with sha* utilities
70     @item added VKO 34.10-2012 support with corresponding test vectors
71     @item @code{gost3410.DigestSizeX} is renamed to
72         @code{gost3410.ModeX} because it is not related to digest size,
73         but parameters and key sizes
74     @item KEK functions take @code{big.Int} UKM value. Use @code{NewUKM}
75         to unmarshal raw binary UKM
76     @end itemize
77
78 @anchor{Release 1.1}
79 @item 1.1
80     @itemize
81     @item gogost-streebog is able to use either 256 or 512 bits digest size
82     @item 34.13-2015 padding methods
83     @item 28147-89 CBC mode of operation
84     @end itemize
85
86 @end table