+3.0:
+ * Multilinear Galois Mode (MGM) block cipher mode for
+ 64 and 128 bit ciphers
+ * KDF_GOSTR3411_2012_256 KDF
+ * 34.12-2015 64-bit block cipher Магма (Magma)
+ * Additional EAC 28147-89 Sbox
+ * 34.10-2012 TC26 twisted Edwards curve related parameters
+ * Coordinates conversion from twisted Edwards to Weierstrass
+ form and vice versa
+ * Fixed gost3410.PrivateKey's length validation
+ * Backward incompatible change: gost3410.NewCurve takes big.Int,
+ instead of encoded integers
+ * Backward incompatible Sbox and curves parameters renaming, to
+ comply with OIDs identifying them:
+
+ Gost2814789_TestParamSet -> SboxIdGost2814789TestParamSet
+ Gost28147_CryptoProParamSetA -> SboxIdGost2814789CryptoProAParamSet
+ Gost28147_CryptoProParamSetB -> SboxIdGost2814789CryptoProBParamSet
+ Gost28147_CryptoProParamSetC -> SboxIdGost2814789CryptoProCParamSet
+ Gost28147_CryptoProParamSetD -> SboxIdGost2814789CryptoProDParamSet
+ GostR3411_94_TestParamSet -> SboxIdGostR341194TestParamSet
+ Gost28147_tc26_ParamZ -> SboxIdtc26gost28147paramZ
+ GostR3411_94_CryptoProParamSet -> SboxIdGostR341194CryptoProParamSet
+ EACParamSet -> SboxEACParamSet
+
+ CurveParamsGostR34102001cc -> CurveGostR34102001ParamSetcc
+ CurveParamsGostR34102001Test -> CurveIdGostR34102001TestParamSet
+ CurveParamsGostR34102001CryptoProA -> CurveIdGostR34102001CryptoProAParamSet
+ CurveParamsGostR34102001CryptoProB -> CurveIdGostR34102001CryptoProBParamSet
+ CurveParamsGostR34102001CryptoProC -> CurveIdGostR34102001CryptoProCParamSet
+ CurveParamsGostR34102001CryptoProXchA -> CurveIdGostR34102001CryptoProXchAParamSet
+ CurveParamsGostR34102001CryptoProXchB -> CurveIdGostR34102001CryptoProXchBParamSet
+ CurveParamsGostR34102012TC26ParamSetA -> CurveIdtc26gost341012512paramSetA
+ CurveParamsGostR34102012TC26ParamSetB -> CurveIdtc26gost341012512paramSetB
+
+ * Various additional test vectors
+ * go modules friendliness
+
2.0:
* 34.11-2012 is split on two different modules: gost34112012256 and
gost34112012512
* GOST R 34.10-2001 (RFC 5832) public key signature function
* GOST R 34.10-2012 (RFC 7091) public key signature function
* various 34.10 curve parameters included
+* Coordinates conversion from twisted Edwards to Weierstrass form and
+ vice versa
* VKO GOST R 34.10-2001 key agreement function (RFC 4357)
* VKO GOST R 34.10-2012 key agreement function (RFC 7836)
* KDF_GOSTR3411_2012_256 KDF function (RFC 7836)
@table @strong
+@anchor{Release 3.0}
+@item 3.0
+ @itemize
+ @item Multilinear Galois Mode (MGM) block cipher mode for
+ 64 and 128 bit ciphers
+ @item @code{KDF_GOSTR3411_2012_256} KDF
+ @item 34.12-2015 64-bit block cipher Магма (Magma)
+ @item Additional EAC 28147-89 Sbox
+ @item 34.10-2012 TC26 twisted Edwards curve related parameters
+ @item Coordinates conversion from twisted Edwards to Weierstrass
+ form and vice versa
+ @item Fixed @code{gost3410.PrivateKey}'s length validation
+ @item Backward incompatible change: @code{gost3410.NewCurve} takes
+ @code{big.Int}, instead of encoded integers
+ @item Backward incompatible Sbox and curves parameters renaming, to
+ comply with OIDs identifying them:
+@verbatim
+ Gost2814789_TestParamSet -> SboxIdGost2814789TestParamSet
+ Gost28147_CryptoProParamSetA -> SboxIdGost2814789CryptoProAParamSet
+ Gost28147_CryptoProParamSetB -> SboxIdGost2814789CryptoProBParamSet
+ Gost28147_CryptoProParamSetC -> SboxIdGost2814789CryptoProCParamSet
+ Gost28147_CryptoProParamSetD -> SboxIdGost2814789CryptoProDParamSet
+ GostR3411_94_TestParamSet -> SboxIdGostR341194TestParamSet
+ Gost28147_tc26_ParamZ -> SboxIdtc26gost28147paramZ
+ GostR3411_94_CryptoProParamSet -> SboxIdGostR341194CryptoProParamSet
+ EACParamSet -> SboxEACParamSet
+
+ CurveParamsGostR34102001cc -> CurveGostR34102001ParamSetcc
+ CurveParamsGostR34102001Test -> CurveIdGostR34102001TestParamSet
+ CurveParamsGostR34102001CryptoProA -> CurveIdGostR34102001CryptoProAParamSet
+ CurveParamsGostR34102001CryptoProB -> CurveIdGostR34102001CryptoProBParamSet
+ CurveParamsGostR34102001CryptoProC -> CurveIdGostR34102001CryptoProCParamSet
+ CurveParamsGostR34102001CryptoProXchA -> CurveIdGostR34102001CryptoProXchAParamSet
+ CurveParamsGostR34102001CryptoProXchB -> CurveIdGostR34102001CryptoProXchBParamSet
+ CurveParamsGostR34102012TC26ParamSetA -> CurveIdtc26gost341012512paramSetA
+ CurveParamsGostR34102012TC26ParamSetB -> CurveIdtc26gost341012512paramSetB
+@end verbatim
+ @item Various additional test vectors
+ @item go modules friendliness
+ @end itemize
+
@anchor{Release 2.0}
@item 2.0
@itemize
(@url{https://tools.ietf.org/html/rfc7091.html, RFC 7091})
public key signature function
@item various 34.10 curve parameters included
+@item Coordinates conversion from twisted Edwards to Weierstrass
+ form and vice versa
@item VKO GOST R 34.10-2001 key agreement function
(@url{https://tools.ietf.org/html/rfc4357.html, RFC 4357})
@item VKO GOST R 34.10-2012 key agreement function
(@url{https://tools.ietf.org/html/rfc7836.html, RFC 7836})
+@item @code{KDF_GOSTR3411_2012_256} KDF function
+ (@url{https://tools.ietf.org/html/rfc7836.html, RFC 7836})
@item GOST R 34.12-2015 128-bit block cipher Кузнечик (Kuznechik)
(@url{https://tools.ietf.org/html/rfc7801.html, RFC 7801})
+@item GOST R 34.12-2015 64-bit block cipher Магма (Magma)
@item GOST R 34.13-2015 padding methods
+@item MGM AEAD mode for 64 and 128 bit ciphers
@end itemize
Please send questions, bug reports and patches to