]> Cypherpunks.ru repositories - gogost.git/blob - news.texi
Panic on all possible hash write errors
[gogost.git] / news.texi
1 @node News
2 @unnumbered News
3
4 @table @strong
5
6 @anchor{Release 4.2.3}
7 @item 4.2.3
8     Panic on all possible hash @code{Write} errors.
9
10 @anchor{Release 4.2.2}
11 @item 4.2.2
12     More 34.10-2012 test vectors.
13
14 @anchor{Release 4.2.1}
15 @item 4.2.1
16     Dummy release. More nicer tarballs.
17
18 @anchor{Release 4.2.0}
19 @item 4.2.0
20     @itemize
21     @item @code{PRF_IPSEC_PRFPLUS_GOSTR3411_2012_@{256,512@}} implementation
22     @item Generic @code{prf+} function (taken from IKEv2
23         (@url{https://tools.ietf.org/html/rfc5831.html, RFC 7296}))
24     @end itemize
25
26 @anchor{Release 4.1.0}
27 @item 4.1.0
28     @itemize
29     @item @code{ESPTREE}/@code{IKETREE} implementation
30     @item @code{CurveIdtc26gost34102012256paramSetB},
31         @code{CurveIdtc26gost34102012256paramSetC},
32         @code{CurveIdtc26gost34102012256paramSetD} curve aliases
33     @item Forbid any later GNU GPL version autousage
34         (project's licence now is GNU GPLv3 only)
35     @item Project now is @command{go get}-able and uses
36         @code{go.cypherpunks.ru} namespace:
37         @command{go get go.cypherpunks.ru/gogost},
38         @command{go get go.cypherpunks.ru/gogost/cmd/streebog@{256,512@}}
39     @end itemize
40
41 @anchor{Release 4.0}
42 @item 4.0
43     @itemize
44     @item Backward incompatible change: all keys passing to encryption
45         functions are slices now, not the fixed arrays. That heavily
46         simplifies the library usage
47     @item Fix bug with overwriting IVs memory in @code{gost28147.CFB*crypter}
48     @item @code{TLSTREE}, used in TLS 1.[23], implementation
49     @item @code{gost3410.KEK2012*} can be used with any curves, not only 512-bit ones
50     @item @code{gost3410.PrivateKey} satisfies @code{crypto.Signer} interface
51     @item @code{gost34112012*} hashes satisfy @code{encoding.Binary(Un)Marshaler}
52     @item Streebog256 HKDF test vectors
53     @end itemize
54
55 @anchor{Release 3.0}
56 @item 3.0
57     @itemize
58     @item Multilinear Galois Mode (MGM) block cipher mode for
59       64 and 128 bit ciphers
60     @item @code{KDF_GOSTR3411_2012_256} KDF
61     @item 34.12-2015 64-bit block cipher Магма (Magma)
62     @item Additional EAC 28147-89 Sbox
63     @item 34.10-2012 TC26 twisted Edwards curve related parameters
64     @item Coordinates conversion from twisted Edwards to Weierstrass
65       form and vice versa
66     @item Fixed @code{gost3410.PrivateKey}'s length validation
67     @item Backward incompatible change: @code{gost3410.NewCurve} takes
68       @code{big.Int}, instead of encoded integers
69     @item Backward incompatible Sbox and curves parameters renaming, to
70       comply with OIDs identifying them:
71 @verbatim
72 Gost2814789_TestParamSet       -> SboxIdGost2814789TestParamSet
73 Gost28147_CryptoProParamSetA   -> SboxIdGost2814789CryptoProAParamSet
74 Gost28147_CryptoProParamSetB   -> SboxIdGost2814789CryptoProBParamSet
75 Gost28147_CryptoProParamSetC   -> SboxIdGost2814789CryptoProCParamSet
76 Gost28147_CryptoProParamSetD   -> SboxIdGost2814789CryptoProDParamSet
77 GostR3411_94_TestParamSet      -> SboxIdGostR341194TestParamSet
78 Gost28147_tc26_ParamZ          -> SboxIdtc26gost28147paramZ
79 GostR3411_94_CryptoProParamSet -> SboxIdGostR341194CryptoProParamSet
80 EACParamSet                    -> SboxEACParamSet
81
82 CurveParamsGostR34102001cc            -> CurveGostR34102001ParamSetcc
83 CurveParamsGostR34102001Test          -> CurveIdGostR34102001TestParamSet
84 CurveParamsGostR34102001CryptoProA    -> CurveIdGostR34102001CryptoProAParamSet
85 CurveParamsGostR34102001CryptoProB    -> CurveIdGostR34102001CryptoProBParamSet
86 CurveParamsGostR34102001CryptoProC    -> CurveIdGostR34102001CryptoProCParamSet
87 CurveParamsGostR34102001CryptoProXchA -> CurveIdGostR34102001CryptoProXchAParamSet
88 CurveParamsGostR34102001CryptoProXchB -> CurveIdGostR34102001CryptoProXchBParamSet
89 CurveParamsGostR34102012TC26ParamSetA -> CurveIdtc26gost341012512paramSetA
90 CurveParamsGostR34102012TC26ParamSetB -> CurveIdtc26gost341012512paramSetB
91 @end verbatim
92     @item Various additional test vectors
93     @item go modules friendliness
94     @end itemize
95
96 @anchor{Release 2.0}
97 @item 2.0
98     @itemize
99     @item 34.11-2012 is split on two different modules:
100         @code{gost34112012256} and @code{gost34112012512}
101     @item 34.11-94's digest is reversed. Now it is compatible with TC26's
102       HMAC and PBKDF2 test vectors
103     @item @code{gogost-streebog} is split to @code{streebog256} and
104         @code{streebog512} correspondingly by analogy with sha* utilities
105     @item added VKO 34.10-2012 support with corresponding test vectors
106     @item @code{gost3410.DigestSizeX} is renamed to
107         @code{gost3410.ModeX} because it is not related to digest size,
108         but parameters and key sizes
109     @item KEK functions take @code{big.Int} UKM value. Use @code{NewUKM}
110         to unmarshal raw binary UKM
111     @end itemize
112
113 @anchor{Release 1.1}
114 @item 1.1
115     @itemize
116     @item gogost-streebog is able to use either 256 or 512 bits digest size
117     @item 34.13-2015 padding methods
118     @item 28147-89 CBC mode of operation
119     @end itemize
120
121 @end table