From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33865) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1edvkM-0000ns-Dy for guix-patches@gnu.org; Tue, 23 Jan 2018 05:24:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1edvkJ-0003ub-3K for guix-patches@gnu.org; Tue, 23 Jan 2018 05:24:06 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:59393) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1edvkI-0003u6-SG for guix-patches@gnu.org; Tue, 23 Jan 2018 05:24:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1edvkI-0006zk-Hm for guix-patches@gnu.org; Tue, 23 Jan 2018 05:24:02 -0500 Subject: [bug#30211] [PATCH 3/4] gnu: Add python-pycryptodome. Resent-Message-ID: From: Oleg Pykhalov References: <20180122200525.561-1-go.wigust@gmail.com> <20180122200525.561-2-go.wigust@gmail.com> <20180122203302.GC31770@jasmine.lan> Date: Tue, 23 Jan 2018 13:23:31 +0300 In-Reply-To: <20180122203302.GC31770@jasmine.lan> (Leo Famulari's message of "Mon, 22 Jan 2018 15:33:02 -0500") Message-ID: <87wp08rhzw.fsf@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Leo Famulari Cc: 30211@debbugs.gnu.org --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello Leo, Thank you for review! I applied all and attached a new patch. Leo Famulari writes: > On Mon, Jan 22, 2018 at 11:05:24PM +0300, Oleg Pykhalov wrote: >> * gnu/packages/python-crypto.scm (python-pycryptodome): New public varia= ble. > >> +(define-public python-pycryptodome >> + (package >> + ;; XXX: Skipping GMP tests which requires not packaged 'mpir' libra= ry. >> + (name "python-pycryptodome") > > I don't understand this comment. This is a quote from a build log. See: =2D-8<---------------cut here---------------start------------->8--- starting phase `check' running "python setup.py" with command "test" and parameters () running test running build running build_py running build_ext Skipping GMP tests (Cannot load library 'mpir') Compiling support for Intel AES instructions Crypto.Math implementation: {} =2D--------------------------------------------------------------------- Ran 22598 tests in 75.857s OK phase `check' succeeded after 84.6 seconds =2D-8<---------------cut here---------------end--------------->8--- Do you have an idea how to make it more clear? >> + (home-page "http://www.pycryptodome.org") > > Please use HTTPS here. Oh, sure. Thanks. >> + (synopsis "Cryptographic library for Python") >> + (description "This package provides a cryptographic library for Pyt= hon.") > > If possible, please give a little more information in the description. > I'm specifically interested in how this library differs from the Python > 'cryptography' library. Dunno about 'pycryptodome' Vs Python 'cryptography', but 'pycryptodome' is a fork of PyCrypto. From=20: PyCryptodome is a fork of PyCrypto. It brings the following enhancements with respect to the last official version of PyCrypto (2.6.1): - Authenticated encryption modes (GCM, CCM, EAX, SIV, OCB) - Accelerated AES on Intel platforms via AES-NI - First class support for PyPy - Elliptic curves cryptography (NIST P-256 curve only) - Better and more compact API (nonce and iv attributes for ciphers, automatic generation of random nonces and IVs, simplified CTR cipher mode, and more) - SHA-3 (including SHAKE XOFs) and BLAKE2 hash algorithms - Salsa20 and ChaCha20 stream ciphers - scrypt and HKDF - Deterministic (EC)DSA - Password-protected PKCS#8 key containers - Shamir=E2=80=99s Secret Sharing scheme - Random numbers get sourced directly from the OS (and not from a CSPRNG in userspace) - Simplified install process, including better support for Windows - Cleaner RSA and DSA key generation (largely based on FIPS 186-4) - Major clean ups and simplification of the code base I pasted this into the description except: - Simplified install process, including better support for Windows --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: attachment; filename=0001-gnu-Add-python-pycryptodome.patch Content-Transfer-Encoding: quoted-printable Content-Description: [PATCH 3/4] gnu: Add python-pycryptodome. From=202318cf980af1b46ec4d3a57d1c8dde3a157b1a0e Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Fri, 19 Jan 2018 22:58:50 +0300 Subject: [PATCH] gnu: Add python-pycryptodome. * gnu/packages/python-crypto.scm (python-pycryptodome): New public variable. =2D-- gnu/packages/python-crypto.scm | 44 ++++++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index a545f0ddc..213ff69a9 100644 =2D-- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -715,3 +715,47 @@ protocol (Javascript Object Signing and Encryption).") =20 (define-public python2-josepy (package-with-python2 python-josepy)) + +(define-public python-pycryptodome + (package + ;; XXX: Skipping GMP tests which requires not packaged 'mpir' library. + (name "python-pycryptodome") + (version "3.4.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pycryptodome" version)) + (sha256 + (base32 + "1xrsd6ql4w0ypkxnsg3fivs3r3z6dd93x44lhvam7jzh3gixzn0q")))) + (build-system python-build-system) + (home-page "https://www.pycryptodome.org") + (synopsis "Cryptographic library for Python") + (description "This package provides a cryptographic library for Python. + +It brings the following enhancements with respect to the last official ver= sion +of PyCrypto: + +@itemize +@item Authenticated encryption modes (GCM, CCM, EAX, SIV, OCB) +@item Accelerated AES on Intel platforms via AES-NI +@item First class support for PyPy +@item Elliptic curves cryptography (NIST P-256 curve only) +@item Better and more compact API (nonce and iv attributes for ciphers, +automatic generation of random nonces and IVs, simplified CTR cipher mode,= and +more) +@item SHA-3 (including SHAKE XOFs) and BLAKE2 hash algorithms +@item Salsa20 and ChaCha20 stream ciphers +@item scrypt and HKDF +@item Deterministic (EC)DSA +@item Password-protected PKCS#8 key containers +@item Shamir=E2=80=99s Secret Sharing scheme +@item Random numbers get sourced directly from the OS (and not from a CSPR= NG +in userspace) +@item Cleaner RSA and DSA key generation (largely based on FIPS 186-4) +@item Major clean ups and simplification of the code base +@end itemize\n") + (license license:bsd-2))) + +(define-public python2-pycryptodome + (package-with-python2 python-pycryptodome)) =2D-=20 2.15.1 --=-=-= Content-Type: text/plain Oleg. --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEc+OyAXw1EaDPCmAPckbhHGm3lWkFAlpnDSMACgkQckbhHGm3 lWm5rRAAsr9/ZcP1OxGi0xHrUCb8UFy1sgfpCUmUpywU3ayuBu8TraU1pvx2Sd2q FLXgVTWmoyFN8UzGe+oAjo80c5J+MF/MkvSC4psPfFoCPgCbcEZ0CNxOvW/1v5CY BO6eUDW/83e1jhj+RnkzTgjw27KCGQfp6b72enkS3eF9dNf61i/7v+vFzvKhA37K LtcSr0/x5m7SUqy/46KesWpPhG+B64y0j3fwJy4DFPvSvOzxAxBxTnm6ilHfLcdN h4Gn2DMzGYpIwQc/whRU0Cpinkg4uguRQx0k503BxsghMlAKlXl0VFErCFVMbCuw 2dqbzpC43xchyVD5FWmg0FpCsxF08UFNPc+Lg1BC6/A5Y/xgPK7kZCW6X47ZLYqC xaHqvZpiASKhEmPIjGDnSRvUkUC8KNN6BjahcsmFLRGhFvK5PaoY6ajo3BjtUKXJ Zdw362pPtUhoqhERFIQDJhr8iNuShZPxIi483ZChZuDyIx291hZenPbQpt97oJRU iFMgtmQAPrnjqlMkLrheKS4R8Z7qiTPNV6l4gyrDIN2yGUp0Pot9qmkeBzFAM4YM dEiTmJCPnZ+07kw9D2Yd5hRVSsx185PA4ScJaI605m7V/Gtk4sz749ht5/JwS1AV geWhEEIIe4r71EUnnvE1qd6uSvts1bQ951CH2oYpH/PkqvlOj70= =l22/ -----END PGP SIGNATURE----- --==-=-=--