]> Cypherpunks.ru repositories - pygost.git/commitdiff
Autogenerate INSTALL/NEWS
authorSergey Matveev <stargrave@stargrave.org>
Fri, 27 Dec 2019 10:43:32 +0000 (13:43 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Fri, 27 Dec 2019 11:19:40 +0000 (14:19 +0300)
.gitignore [new file with mode: 0644]
INSTALL [deleted file]
MANIFEST.in
NEWS [deleted file]
download.texi
install.texi [new file with mode: 0644]
maketxts.sh [new file with mode: 0755]
news.texi
www.texi

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..81eab7a
--- /dev/null
@@ -0,0 +1,3 @@
+dist
+INSTALL
+NEWS
diff --git a/INSTALL b/INSTALL
deleted file mode 100644 (file)
index 3965ef2..0000000
--- a/INSTALL
+++ /dev/null
@@ -1,31 +0,0 @@
-No additional dependencies except Python 2.7/3.x interpreter are required.
-
-Preferable way is to download tarball with the signature from official
-website:
-
-    $ wget http://pygost.cypherpunks.ru/pygost-3.7.tar.xz
-    $ wget http://pygost.cypherpunks.ru/pygost-3.7.tar.xz.sig
-    $ gpg --verify pygost-3.7.tar.xz.sig pygost-3.7.tar.xz
-    $ xz -d < pygost-3.7.tar.xz | tar xf -
-    $ cd pygost-3.7
-    $ python setup.py install
-
-But also you can use PIP (NO authentication is performed!):
-
-    $ pip install pygost==3.7
-
-You have to verify downloaded tarballs integrity and authenticity to be
-sure that you retrieved trusted and untampered software. GNU Privacy
-Guard is used for that purpose.
-
-For the very first time it is necessary to get signing public key and
-import it. It is provided below, but you should check alternative
-resources.
-
-    pub   rsa2048/0xE6FD1269CD0C009E 2016-09-13
-          F55A 7619 3A0C 323A A031  0E6B E6FD 1269 CD0C 009E
-    uid   PyGOST releases <pygost at cypherpunks dot ru>
-
-    Look in PUBKEY.asc file.
-    $ gpg --auto-key-locate dane --locate-keys pygost at cypherpunks dot ru
-    $ gpg --auto-key-locate wkd --locate-keys pygost at cypherpunks dot ru
index aeb63e4e767ec1e635ae99a812716073284a70d9..a0ed9cedace9613f6f9597c52b185f0a33e8cf74 100644 (file)
@@ -2,7 +2,6 @@ include AUTHORS
 include COPYING
 include INSTALL
 include NEWS
-include PUBKEY.asc
 include README
 include THANKS
 include VERSION
diff --git a/NEWS b/NEWS
deleted file mode 100644 (file)
index c0cf379..0000000
--- a/NEWS
+++ /dev/null
@@ -1,161 +0,0 @@
-4.1:
-    * PEP-396 compatible module's __version__
-    * Curve parameters aliases:
-
-      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
-
-    * Forbid any later GNU GPL version autousage (project's licence
-      now is GNU GPLv3 only)
-
-4.0:
-    * 34.10-2012 TC26 twisted Edwards curve related parameters
-    * Coordinates conversion from twisted Edwards to Weierstrass
-      form and vice versa
-    * More test vectors
-    * Backward incompatible Sbox and curves parameters renaming, to
-      comply with OIDs identifying them:
-
-      Gost2814789_TestParamSet       -> id-Gost28147-89-TestParamSet
-      Gost28147_CryptoProParamSetA   -> id-Gost28147-89-CryptoPro-A-ParamSet
-      Gost28147_CryptoProParamSetB   -> id-Gost28147-89-CryptoPro-B-ParamSet
-      Gost28147_CryptoProParamSetC   -> id-Gost28147-89-CryptoPro-C-ParamSet
-      Gost28147_CryptoProParamSetD   -> id-Gost28147-89-CryptoPro-D-ParamSet
-      Gost28147_tc26_ParamZ          -> id-tc26-gost-28147-param-Z
-      GostR3411_94_TestParamSet      -> id-GostR3411-94-TestParamSet
-      GostR3411_94_CryptoProParamSet -> id-GostR3411-94-CryptoProParamSet
-
-      GostR3410_2001_TestParamSet            -> id-GostR3410-2001-TestParamSet
-      GostR3410_2001_CryptoPro_A_ParamSet    -> id-GostR3410-2001-CryptoPro-A-ParamSet
-      GostR3410_2001_CryptoPro_B_ParamSet    -> id-GostR3410-2001-CryptoPro-B-ParamSet
-      GostR3410_2001_CryptoPro_C_ParamSet    -> id-GostR3410-2001-CryptoPro-C-ParamSet
-      GostR3410_2001_CryptoPro_XchA_ParamSet -> id-GostR3410-2001-CryptoPro-XchA-ParamSet
-      GostR3410_2001_CryptoPro_XchB_ParamSet -> id-GostR3410-2001-CryptoPro-XchB-ParamSet
-      GostR3410_2012_TC26_256_ParamSetA      -> id-tc26-gost-3410-2012-256-paramSetA
-      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
-
-    * Backward incompatible GOST3410Curve initialization: all parameters
-      are passed not as big-endian encoded binaries, but as integers
-    * Backward incompatible change: gost3410.CURVE_PARAMS is
-      disappeared. gost3410.CURVES dictionary holds already initialized
-      GOST3410Curve. Just use
-      CURVES["id-tc26-gost-3410-12-512-paramSetA"] instead of
-      GOST3410Curve(*CURVE_PARAMS["id-tc26-gost-3410-12-512-paramSetA"])
-
-3.15:
-    * Licence changed back to GNU GPLv3+.
-      GNU LGPLv3+ licenced versions are not available anymore
-    * More ASN.1-based test vectors (PyDERASN dependency required)
-
-3.14:
-    Add missing typing stubs related to previous release.
-
-3.13:
-    * Ability to explicitly specify used 28147-89 Sbox in
-      pygost.wrap.* functions
-    * Ability to use key meshing in 28147-89 CBC mode
-
-3.12:
-    * Added mode argument to pygost.gost3410_vko.kek_34102012256,
-      because 256-bit private keys can be used with that algorithm too
-    * Fix incorrect degree sanitizing in pygost.gost3410.GOST3410Curve.exp
-      preventing using of UKM=1 in @code{pygost.gost3410_vko.kek_*} functions
-
-3.11:
-    Fixed PEP247 typing stub with invalid hexdigest method.
-
-3.10:
-    Additional missing 34.11-* typing stubs.
-
-3.9:
-    Add missing 34.11-2012 PBKDF2 typing stub.
-
-3.8:
-    * 34.11-2012 based PBKDF2 function added
-    * 34.13-2015 does not require double blocksized IVs
-
-3.7:
-    Fixed 34.13-2015 OFB bug with IVs longer than 2 blocks.
-
-3.6:
-    Fixed source files installation during setup.py install invocation.
-
-3.5:
-    Dummy release: added long description in package metadata.
-
-3.4:
-    * Small mypy stubs related fixes
-    * Licence changed from GNU GPLv3+ to GNU LGPLv3+
-
-3.3:
-    * GOST3412Kuz renamed to GOST3412Kuznechik
-    * GOST3412Magma implements GOST R 34.12-2015 Magma 64-bit block cipher
-
-3.2:
-    34.13-2015 block cipher modes of operation implementations.
-
-3.1:
-    Fixed mypy stubs related to PEP247-successors.
-
-3.0:
-    * gost3411_94 renamed to gost341194
-    * gost3411_2012 renamed and split to gost34112012256, gost34112012512
-    * GOST34112012 split to GOST34112012256, GOST34112012512
-    * gost3410.kek moved to separate gost3410_vko.kek_34102001
-    * VKO GOST R 34.10-2012 appeared in gost3410_vko, with test vectors
-    * 34.11-94 digest is reversed, to be compatible with HMAC and
-      PBKDF2 test vectors describe in TC26 documents
-    * 34.11-94 PBKDF2 test vectors added
-    * gost3410.prv_unmarshal, gost3410.pub_marshal, gost3410.pub_unmarshal
-      helpers added, removing the need of x509 module at all
-    * gost3410.verify requires (pubX, pubY) tuple, instead of two separate
-      pubX, pubY arguments
-    * 34.11-94 based PBKDF2 function added
-
-2.4:
-    Fixed 34.13 mypy stub.
-
-2.3:
-    Typo and pylint fixes.
-
-2.2:
-    GOST R 34.13-2015 padding methods.
-
-2.1:
-    Documentation and supplementary files refactoring.
-
-2.0:
-    PEP-0247 compatible hashers and MAC.
-
-1.0:
-    * Ability to specify curve in pygost.x509 module
-    * Ability to use 34.10-2012 in pygost.x509 functions
-
-    Renamed classes and modules:
-
-    * 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
-
-0.16:
-    34.10-2012 TC26 curve parameters.
-
-0.15:
-    PEP-0484 static typing hints.
-
-0.14:
-    34.10-2012 workability fix.
-
-0.13:
-    Python3 compatibility.
-
-0.11:
-    GOST R 34.12-2015 Кузнечик (Kuznechik) implementation.
-
-0.10:
-    CryptoPro and GOST key wrapping, CryptoPro key meshing.
index 043e1fed4b0112f3eedc21395a62f00fdce72974..1e5c63514b3e923ae04aa8bfdce6652cd774037a 100644 (file)
@@ -1,21 +1,3 @@
-@node Download
-@unnumbered Download
-
-@set VERSION 4.2
-
-No additional dependencies except Python 2.7/3.x interpreter are required.
-
-Preferable way is to download tarball with the signature:
-
-@example
-$ [fetch|wget] http://pygost.cypherpunks.ru/pygost-@value{VERSION}.tar.xz
-$ [fetch|wget] http://pygost.cypherpunks.ru/pygost-@value{VERSION}.tar.xz.sig
-$ gpg --verify pygost-@value{VERSION}.tar.xz.sig pygost-@value{VERSION}.tar.xz
-$ xz --decompress --stdout pygost-@value{VERSION}.tar.xz | tar xf -
-$ cd pygost-@value{VERSION}
-$ python setup.py install
-@end example
-
 @multitable {XXXXX} {XXXX-XX-XX} {XXXX KiB} {link sign} {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx} {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}
 @headitem Version @tab Date @tab Size @tab Tarball @tab SHA256 checksum @tab Streebog-256 checksum
 
@@ -98,44 +80,3 @@ $ python setup.py install
 @tab @code{42cfd0cdf357997a909a9114ca14391b4c5e8b62e298675f899b80a8a26d690f}
 
 @end multitable
-
-But also you can use pip (@strong{no} OpenPGP authentication is
-performed!) with PyPI:
-
-@example
-$ echo pygost==@value{VERSION} --hash=sha256:9e8daad58a7fca0c3addd357268bff4c506074dd300887ebf96c0f1c21123835 > requirements.txt
-$ pip install --requirement requirements.txt
-@end example
-
-You @strong{have to} verify downloaded tarballs integrity and
-authenticity to be sure that you retrieved trusted and untampered
-software. @url{https://www.gnupg.org/, GNU Privacy Guard} is used
-for that purpose.
-
-For the very first time it is necessary to get signing public key and
-import it. It is provided below, but you should check alternative
-resources.
-
-@verbatim
-pub   rsa2048/0xE6FD1269CD0C009E 2016-09-13
-      F55A 7619 3A0C 323A A031  0E6B E6FD 1269 CD0C 009E
-uid   PyGOST releases <pygost at cypherpunks dot ru>
-@end verbatim
-
-@itemize
-
-@item @url{https://lists.cypherpunks.ru/mailman/listinfo/gost, gost} maillist
-
-@item
-@example
-$ gpg --auto-key-locate dane --locate-keys pygost at cypherpunks dot ru
-$ gpg --auto-key-locate wkd --locate-keys pygost at cypherpunks dot ru
-@end example
-
-@item
-@verbatiminclude PUBKEY.asc
-
-@end itemize
-
-You can obtain development source code with
-@command{git clone git://git.cypherpunks.ru/pygost.git}.
diff --git a/install.texi b/install.texi
new file mode 100644 (file)
index 0000000..e18ac8f
--- /dev/null
@@ -0,0 +1,60 @@
+@node Download
+@unnumbered Download
+
+@set VERSION 4.2
+
+No additional dependencies except Python 2.7/3.x interpreter are required.
+
+Preferable way is to download tarball with the signature:
+
+@example
+$ [fetch|wget] http://pygost.cypherpunks.ru/pygost-@value{VERSION}.tar.xz
+$ [fetch|wget] http://pygost.cypherpunks.ru/pygost-@value{VERSION}.tar.xz.sig
+$ gpg --verify pygost-@value{VERSION}.tar.xz.sig pygost-@value{VERSION}.tar.xz
+$ xz --decompress --stdout pygost-@value{VERSION}.tar.xz | tar xf -
+$ cd pygost-@value{VERSION}
+$ python setup.py install
+@end example
+
+@include download.texi
+
+But also you can use pip (@strong{no} OpenPGP authentication is
+performed!) with PyPI:
+
+@example
+$ echo pygost==@value{VERSION} --hash=sha256:9e8daad58a7fca0c3addd357268bff4c506074dd300887ebf96c0f1c21123835 > requirements.txt
+$ pip install --requirement requirements.txt
+@end example
+
+You @strong{have to} verify downloaded tarballs integrity and
+authenticity to be sure that you retrieved trusted and untampered
+software. @url{https://www.gnupg.org/, GNU Privacy Guard} is used
+for that purpose.
+
+For the very first time it is necessary to get signing public key and
+import it. It is provided below, but you should check alternative
+resources.
+
+@verbatim
+pub   rsa2048/0xE6FD1269CD0C009E 2016-09-13
+      F55A 7619 3A0C 323A A031  0E6B E6FD 1269 CD0C 009E
+uid   PyGOST releases <pygost at cypherpunks dot ru>
+@end verbatim
+
+@itemize
+
+@item @url{https://lists.cypherpunks.ru/mailman/listinfo/gost, gost} maillist
+
+@item
+@example
+$ gpg --auto-key-locate dane --locate-keys pygost at cypherpunks dot ru
+$ gpg --auto-key-locate wkd --locate-keys pygost at cypherpunks dot ru
+@end example
+
+@item
+@verbatiminclude PUBKEY.asc
+
+@end itemize
+
+You can obtain development source code with
+@command{git clone git://git.cypherpunks.ru/pygost.git}.
diff --git a/maketxts.sh b/maketxts.sh
new file mode 100755 (executable)
index 0000000..b55ce81
--- /dev/null
@@ -0,0 +1,34 @@
+#!/bin/sh -ex
+
+texi=$(mktemp)
+
+cat > $texi <<EOF
+\input texinfo
+@documentencoding UTF-8
+@settitle NEWS
+@node News
+@unnumbered News
+`sed -n '3,$p' < news.texi`
+@bye
+EOF
+makeinfo --plaintext -o NEWS $texi
+
+cat > download.texi <<EOF
+You can obtain releases source code prepared tarballs on
+@url{http://pygost.cypherpunks.ru/}.
+EOF
+
+perl -i -p -e 's/hash=sha256:\w+/hash=sha256:TARBALL-HASH/' install.texi
+
+cat > $texi <<EOF
+\input texinfo
+@documentencoding UTF-8
+@settitle INSTALL
+@include install.texi
+@bye
+EOF
+makeinfo --plaintext -o INSTALL $texi
+
+rm -f $texi
+
+git checkout download.texi install.texi
index a5775dbdeab3da8b7fb1455f60f33c883449f86c..ec3d2f2a0d84cf554245a98cee6e41b1b1c62371 100644 (file)
--- a/news.texi
+++ b/news.texi
@@ -185,7 +185,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.
index c2e0207b83391d9f725527577613957490f1f074..f1eb2f496a2b7cddacc8e0b4e654108b48e3eb41 100644 (file)
--- a/www.texi
+++ b/www.texi
@@ -89,6 +89,6 @@ mailing list. Announcements also go to this mailing list.
 @insertcopying
 
 @include news.texi
-@include download.texi
+@include install.texi
 
 @bye