X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=news.texi;h=ed7795dc2fdd3a9ca6fb2d46c626b9ece153de29;hb=42674836008fc0a17aeb7756e25f6e7f1019af2f;hp=7f9c6607c9d2699a1a37616ab1dbcb8b17aeb195;hpb=0fcc8bc147ada51d2a9a912f18ac362d54b7d49a;p=pygost.git diff --git a/news.texi b/news.texi index 7f9c660..ed7795d 100644 --- a/news.texi +++ b/news.texi @@ -3,10 +3,156 @@ @table @strong +@anchor{Release 5.11} +@item 5.11 +@code{gost34112012}'s @code{update()}/@code{digest()} methods are +streaming now -- they do not store the whole data in memory. + +@anchor{Release 5.10} +@item 5.10 +Added ISO 10126 @code{pygost.gost3413.(un)pad_iso10126} padding support. + +@anchor{Release 5.9} +@item 5.9 +Fixed @code{wrap.wrap_cryptopro}, that ignored Sbox for key diversification. + +@anchor{Release 5.8} +@item 5.8 +Added human-readable name of the curve in @code{GOST3410Curve.name}. + +@anchor{Release 5.7} +@item 5.7 +Fixed MGM ignoring of the set tag size. + +@anchor{Release 5.6} +@item 5.6 +Fixed lint errors for previous release. + +@anchor{Release 5.5} +@item 5.5 +More 34.10 curve parameters aliases: +@verbatim +id-tc26-gost-3410-2012-256-paramSetA -> id-tc26-gost-3410-12-256-paramSetA +id-tc26-gost-3410-2012-256-paramSetB -> id-tc26-gost-3410-12-256-paramSetB +id-tc26-gost-3410-2012-256-paramSetC -> id-tc26-gost-3410-12-256-paramSetC +id-tc26-gost-3410-2012-256-paramSetD -> id-tc26-gost-3410-12-256-paramSetD +id-tc26-gost-3410-2012-512-paramSetTest -> id-tc26-gost-3410-12-512-paramSetTest +id-tc26-gost-3410-2012-512-paramSetA -> id-tc26-gost-3410-12-512-paramSetA +id-tc26-gost-3410-2012-512-paramSetB -> id-tc26-gost-3410-12-512-paramSetB +id-tc26-gost-3410-2012-512-paramSetC -> id-tc26-gost-3410-12-512-paramSetC +@end verbatim + +@anchor{Release 5.4} +@item 5.4 +@code{gost3410.prv_marshal} helper can make private keys that are +in curve's Q field, for better compatibility with some implementations. + +@anchor{Release 5.3} +@item 5.3 + @itemize + @item More than 4 times speed increase of @code{gost34112012}. + @item @command{asn1schemas/cert-selfsigned-example.py} optionally + can issue CA signed child certificate. + @end itemize + +@anchor{Release 5.2} +@item 5.2 + @itemize + @item @code{GOST3410Curve} has @code{.contains(point)} method for + checking if point is on the curve. + @item @code{gost3410_vko} functions check if remote peer's public + key is on the curve. + @item Small typing stubs fixes. + @end itemize + +@anchor{Release 5.1} +@item 5.1 +Small typing stubs fixes. + +@anchor{Release 5.0} +@item 5.0 + @itemize + @item Backward incompatible removing of misleading and excess + @option{mode} keyword argument from all @code{gost3410*} related + functions. Point/key sizes are determined by looking at curve's + parameters size. + @item @command{asn1schemas/cert-selfsigned-example.py} optionally + can create CA certificate. + @end itemize + +@anchor{Release 4.9} +@item 4.9 + @itemize + @item @strong{Fixed} nasty bug with Edwards curves using in + 34.10-VKO functions: curve's cofactor has not been used + @item CTR-ACPKM mode of operation + @item OMAC-ACPKM-Master moder of operation + @item KExp15/KImp15 key export/import functions + @item KDF_GOSTR3411_2012_256, KDF_TREE_GOSTR3411_2012_256 + @item KEG export key generation function + @end itemize + +@anchor{Release 4.8} +@item 4.8 +MGM AEAD mode for 64 and 128 bit ciphers. + +@anchor{Release 4.7} +@item 4.7 +Removed @code{gost28147.addmod} for simplicity. + +@anchor{Release 4.6} +@item 4.6 +Fix invalid @code{gost28147.addmod}'s behaviour with much bigger values +than the modulo. + +@anchor{Release 4.5} +@item 4.5 +Fixed digest endianness and more RFC4491bis conformance in +@command{asn1schemas/cert-selfsigned-example.py} certificate's. + +@anchor{Release 4.4} +@item 4.4 + @itemize + @item @code{id-tc26-gost-3410-2012-512-paramSetTest} curve + @item Simple FAQ + @item More test vectors for 34.10-2012 + @item More X.509, PKCS #10 and corresponding ASN.1 helper structures + @end itemize + +@anchor{Release 4.3} +@item 4.3 +Dummy release with fixed @code{pygost.__version__}. + +@anchor{Release 4.2} +@item 4.2 + @itemize + @item @code{pygost.gost3410.sign} accepts predefined random + data used for k/r generation + @item More test vectors for 34.10-2012 + @end itemize + +@anchor{Release 4.1} +@item 4.1 + @itemize + @item PEP-396 compatible module's @code{__version__} + @item Curve parameters aliases: +@verbatim +id-GostR3410-2001-CryptoPro-XchA-ParamSet -> id-GostR3410-2001-CryptoPro-A-ParamSet +id-GostR3410-2001-CryptoPro-XchB-ParamSet -> id-GostR3410-2001-CryptoPro-C-ParamSet +id-tc26-gost-3410-2012-256-paramSetB -> id-GostR3410-2001-CryptoPro-A-ParamSet +id-tc26-gost-3410-2012-256-paramSetC -> id-GostR3410-2001-CryptoPro-B-ParamSet +id-tc26-gost-3410-2012-256-paramSetD -> id-GostR3410-2001-CryptoPro-C-ParamSet +@end verbatim + @item Forbid any later GNU GPL version autousage (project's licence + now is GNU GPLv3 only) + @end itemize + @anchor{Release 4.0} @item 4.0 @itemize @item 34.10-2012 TC26 twisted Edwards curve related parameters + @item Coordinates conversion from twisted Edwards to Weierstrass + form and vice versa @item More test vectors @item Backward incompatible Sbox and curves parameters renaming, to comply with OIDs identifying them: @@ -31,6 +177,14 @@ GostR3410_2012_TC26_ParamSetA -> id-tc26-gost-3410-12-512-paramSetA GostR3410_2012_TC26_ParamSetB -> id-tc26-gost-3410-12-512-paramSetB GostR3410_2012_TC26_ParamSetC -> id-tc26-gost-3410-2012-512-paramSetC @end verbatim + @item Backward incompatible @code{GOST3410Curve} initialization: all + parameters are passed not as big-endian encoded binaries, but as + integers + @item Backward incompatible change: @code{gost3410.CURVE_PARAMS} is + disappeared. @code{gost3410.CURVES} dictionary holds already + initialized @code{GOST3410Curve}. Just use + @code{CURVES["id-tc26-gost-3410-12-512-paramSetA"]} instead of + @code{GOST3410Curve(*CURVE_PARAMS["id-tc26-gost-3410-12-512-paramSetA"])} @end itemize @anchor{Release 3.15} @@ -39,7 +193,7 @@ GostR3410_2012_TC26_ParamSetC -> id-tc26-gost-3410-2012-512-paramSetC @item Licence changed back to GNU GPLv3+. GNU LGPLv3+ licenced versions are not available anymore @item More ASN.1-based test vectors - (@url{http://pyderasn.cypherpunks.ru/, PyDERASN} dependency required) + (@url{http://www.pyderasn.cypherpunks.ru/, PyDERASN} dependency required) @end itemize @anchor{Release 3.14} @@ -151,7 +305,7 @@ Fixed 34.13 mypy stub. Typo and pylint fixes. @item 2.2 -GOST R 34.13-2015 padding methods +GOST R 34.13-2015 padding methods. @item 2.1 Documentation and supplementary files refactoring. @@ -163,14 +317,12 @@ PEP-0247 compatible hashers and MAC. @itemize @item Ability to specify curve in pygost.x509 module @item Ability to use 34.10-2012 in pygost.x509 functions - @end itemize - - Renamed classes and modules: - - @itemize - @item pygost.gost3410.SIZE_34100 -> pygost.gost3410.SIZE_3410_2001 - @item pygost.gost3410.SIZE_34112 -> pygost.gost3410.SIZE_3410_2012 - @item pygost.gost3411_12.GOST341112 -> pygost.gost3411_2012.GOST34112012 + @item Renamed classes and modules: +@verbatim +pygost.gost3410.SIZE_34100 -> pygost.gost3410.SIZE_3410_2001 +pygost.gost3410.SIZE_34112 -> pygost.gost3410.SIZE_3410_2012 +pygost.gost3411_12.GOST341112 -> pygost.gost3411_2012.GOST34112012 +@end verbatim @end itemize @item 0.16