unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Oleg Pykhalov <go.wigust@gmail.com>
To: Leo Famulari <leo@famulari.name>
Cc: 30211@debbugs.gnu.org
Subject: [bug#30211] [PATCH 3/4] gnu: Add python-pycryptodome.
Date: Tue, 23 Jan 2018 13:23:31 +0300	[thread overview]
Message-ID: <87wp08rhzw.fsf@gmail.com> (raw)
In-Reply-To: <20180122203302.GC31770@jasmine.lan> (Leo Famulari's message of "Mon, 22 Jan 2018 15:33:02 -0500")


[-- Attachment #1.1: Type: text/plain, Size: 3052 bytes --]

Hello Leo,

Thank you for review!  I applied all and attached a new patch.

Leo Famulari <leo@famulari.name> writes:

> On Mon, Jan 22, 2018 at 11:05:24PM +0300, Oleg Pykhalov wrote:
>> * gnu/packages/python-crypto.scm (python-pycryptodome): New public variable.
>
>> +(define-public python-pycryptodome
>> +  (package
>> +    ;; XXX: Skipping GMP tests which requires not packaged 'mpir' library.
>> +    (name "python-pycryptodome")
>
> I don't understand this comment.

This is a quote from a build log.  See:
--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: {}

----------------------------------------------------------------------
Ran 22598 tests in 75.857s

OK
phase `check' succeeded after 84.6 seconds
--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 Python.")
>
> 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 <https://www.pycryptodome.org/en/latest/src/introduction.html>:

    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’s 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



[-- Attachment #1.2: [PATCH 3/4] gnu: Add python-pycryptodome. --]
[-- Type: text/x-patch, Size: 2496 bytes --]

From 2318cf980af1b46ec4d3a57d1c8dde3a157b1a0e Mon Sep 17 00:00:00 2001
From: Oleg Pykhalov <go.wigust@gmail.com>
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.
---
 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
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -715,3 +715,47 @@ protocol (Javascript Object Signing and Encryption).")
 
 (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 version
+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’s Secret Sharing scheme
+@item Random numbers get sourced directly from the OS (and not from a CSPRNG
+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))
-- 
2.15.1


[-- Attachment #1.3: Type: text/plain, Size: 8 bytes --]



Oleg.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

  reply	other threads:[~2018-01-23 10:24 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-22 19:33 [bug#30211] gnu: Add streamlink (program to extract streams from various services) Oleg Pykhalov
2018-01-22 20:05 ` [bug#30211] [PATCH 2/4] gnu: Add python-iso3166 Oleg Pykhalov
2018-01-22 20:05   ` [bug#30211] [PATCH 3/4] gnu: Add python-pycryptodome Oleg Pykhalov
2018-01-22 20:33     ` Leo Famulari
2018-01-23 10:23       ` Oleg Pykhalov [this message]
2018-01-23 21:25         ` Leo Famulari
2018-01-24 21:48           ` Oleg Pykhalov
2018-01-22 20:05   ` [bug#30211] [PATCH 4/4] gnu: Add streamlink Oleg Pykhalov
2018-01-22 20:35     ` Leo Famulari
2018-01-23 10:40       ` Oleg Pykhalov
2018-01-23 11:05       ` Oleg Pykhalov
2018-01-23 21:36         ` Leo Famulari
2018-01-24 21:58           ` bug#30211: " Oleg Pykhalov
2018-01-22 20:29   ` [bug#30211] [PATCH 2/4] gnu: Add python-iso3166 Leo Famulari
2018-01-23 11:25     ` Oleg Pykhalov
2018-01-24 21:50       ` Oleg Pykhalov
2018-01-22 20:28 ` [bug#30211] gnu: Add streamlink (program to extract streams from various services) Leo Famulari
2018-01-23 10:47   ` Oleg Pykhalov
2018-01-23 21:20     ` Leo Famulari
2018-01-24 21:50       ` Oleg Pykhalov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87wp08rhzw.fsf@gmail.com \
    --to=go.wigust@gmail.com \
    --cc=30211@debbugs.gnu.org \
    --cc=leo@famulari.name \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).