@table @strong
-@anchor{Release 4.1}
-@item 4.1
+@anchor{Release 5.7.0}
+@item 5.7.0
+Go 1.17 requires @code{gost3410.PublicKey} to have @code{Equal} method.
+
+@anchor{Release 5.6.0}
+@item 5.6.0
+ @itemize
+ @item Add @code{gost3410.CurveIdtc26gost341012512paramSetTest} curve
+ @item More curve aliases:
+@verbatim
+CurveIdGostR34102001CryptoProAParamSet -> CurveIdtc26gost341012256paramSetB
+CurveIdGostR34102001CryptoProBParamSet -> CurveIdtc26gost341012256paramSetC
+CurveIdGostR34102001CryptoProCParamSet -> CurveIdtc26gost341012256paramSetD
+CurveIdGostR34102001CryptoProXchAParamSet -> CurveIdGostR34102001CryptoProAParamSet
+CurveIdGostR34102001CryptoProXchBParamSet -> CurveIdGostR34102001CryptoProCParamSet
+CurveIdtc26gost34102012256paramSetA -> CurveIdtc26gost341012256paramSetA
+CurveIdtc26gost34102012256paramSetB -> CurveIdtc26gost341012256paramSetB
+CurveIdtc26gost34102012256paramSetC -> CurveIdtc26gost341012256paramSetC
+CurveIdtc26gost34102012256paramSetD -> CurveIdtc26gost341012256paramSetD
+CurveIdtc26gost34102012512paramSetTest -> CurveIdtc26gost341012512paramSetTest
+CurveIdtc26gost34102012512paramSetA -> CurveIdtc26gost341012512paramSetA
+CurveIdtc26gost34102012512paramSetB -> CurveIdtc26gost341012512paramSetB
+CurveIdtc26gost34102012512paramSetC -> CurveIdtc26gost341012512paramSetC
+@end verbatim
+ @end itemize
+
+@anchor{Release 5.5.0}
+@item 5.5.0
+ @code{gost3410.PrivateKey} is in @code{gost3410.Curve.Q} now. That
+ makes them more friendly with some implementations.
+
+@anchor{Release 5.4.0}
+@item 5.4.0
+ Even slightly less allocations in Streebog.
+
+@anchor{Release 5.3.0}
+@item 5.3.0
+ ~16x speedup of Streebog, ~15x speedup of Kuznechik.
+
+@anchor{Release 5.2.0}
+@item 5.2.0
+ MGM does not panic when short (tagless) message is verified.
+
+@anchor{Release 5.1.1}
+@item 5.1.1
+ Tarball uses vendoring, instead of @env{GOPATH} overriding.
+ As minimal Go version is 1.12 for a long time, it supports modules.
+
+@anchor{Release 5.1.0}
+@item 5.1.0
+ @code{gost3410/KEK*} functions do not alter @code{ukm} argument.
+ It is safe to reuse now.
+
+@anchor{Release 5.0.0}
+@item 5.0.0
+ Backward incompatible remove of excess misleading @code{gost3410.Mode}
+ from all related functions. Point/key sizes are determined by
+ looking at curve's parameters size.
+
+@anchor{Release 4.3.0}
+@item 4.3.0
+ @strong{Fixed} nasty bug with Edwards curves using in 34.10-VKO
+ functions: curve's cofactor has not been used.
+
+@anchor{Release 4.2.4}
+@item 4.2.4
+ @code{gost3410.PrivateKeyReverseDigest} reversed digests and
+ @code{PrivateKeyReverseDigestAndSignature} with also reversed signatures
+ signers appeared for convenience.
+
+@anchor{Release 4.2.3}
+@item 4.2.3
+ Panic on all possible hash @code{Write} errors.
+
+@anchor{Release 4.2.2}
+@item 4.2.2
+ More 34.10-2012 test vectors.
+
+@anchor{Release 4.2.1}
+@item 4.2.1
+ Dummy release. More nicer tarballs.
+
+@anchor{Release 4.2.0}
+@item 4.2.0
@itemize
- @item @code{ESPTREE} implementation
+ @item @code{PRF_IPSEC_PRFPLUS_GOSTR3411_2012_@{256,512@}} implementation
+ @item Generic @code{prf+} function (taken from IKEv2
+ (@url{https://tools.ietf.org/html/rfc5831.html, RFC 7296}))
+ @end itemize
+
+@anchor{Release 4.1.0}
+@item 4.1.0
+ @itemize
+ @item @code{ESPTREE}/@code{IKETREE} implementation
@item @code{CurveIdtc26gost34102012256paramSetB},
@code{CurveIdtc26gost34102012256paramSetC},
@code{CurveIdtc26gost34102012256paramSetD} curve aliases
@item Forbid any later GNU GPL version autousage
(project's licence now is GNU GPLv3 only)
- @item Project now is go-get-able: @command{go get go.cypherpunks.ru/gogost/v4}
-
+ @item Project now is @command{go get}-able and uses
+ @code{go.cypherpunks.ru} namespace:
+ @command{go get go.cypherpunks.ru/gogost},
+ @command{go get go.cypherpunks.ru/gogost/cmd/streebog@{256,512@}}
@end itemize
@anchor{Release 4.0}