From d96e162aa96df3af93655781b7d7259314394684 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:00:30 +0200 Subject: gnu: Add perl-math-random-isaac-xs. * gnu/packages/crypto.scm (perl-math-random-isaac-xs): New variable. --- gnu/packages/crypto.scm | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) (limited to 'gnu/packages/crypto.scm') diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index d02bc20f20..fa07f9d34f 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 David Thompson -;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015, 2017 Ricardo Wurmus ;;; Copyright © 2016, 2017 Leo Famulari ;;; Copyright © 2016 Lukas Gradl ;;; Copyright © 2016 Tobias Geerinckx-Rice @@ -52,6 +52,7 @@ (define-module (gnu packages crypto) #:use-module (guix git-download) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) + #:use-module (guix build-system perl) #:use-module (guix build-system python)) (define-public libsodium @@ -437,3 +438,30 @@ (define-public python-asn1crypto (define-public python2-asn1crypto (package-with-python2 python-asn1crypto)) + +(define-public perl-math-random-isaac-xs + (package + (name "perl-math-random-isaac-xs") + (version "1.004") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/J/JA/JAWNSY/" + "Math-Random-ISAAC-XS-" version ".tar.gz")) + (sha256 + (base32 + "0yxqqcqvj51fn7b7j5xqhz65v74arzgainn66c6k7inijbmr1xws")))) + (build-system perl-build-system) + (native-inputs + `(("perl-module-build" ,perl-module-build) + ("perl-test-nowarnings" ,perl-test-nowarnings))) + (home-page "http://search.cpan.org/dist/Math-Random-ISAAC-XS") + (synopsis "C implementation of the ISAAC PRNG algorithm") + (description "ISAAC (Indirection, Shift, Accumulate, Add, and Count) is a +fast pseudo-random number generator. It is suitable for applications where a +significant amount of random data needs to be produced quickly, such as +solving using the Monte Carlo method or for games. The results are uniformly +distributed, unbiased, and unpredictable unless you know the seed. + +This package implements the same interface as @code{Math::Random::ISAAC}.") + (license license:public-domain))) -- cgit v1.2.3 From 649238cbc75968e0c093deef88ab3ca31161d258 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 11:44:55 +0200 Subject: gnu: Add perl-math-random-isaac. * gnu/packages/crypto.scm (perl-math-random-isaac): New variable. --- gnu/packages/crypto.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'gnu/packages/crypto.scm') diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index fa07f9d34f..8df3095518 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -465,3 +465,32 @@ (define-public perl-math-random-isaac-xs This package implements the same interface as @code{Math::Random::ISAAC}.") (license license:public-domain))) + +(define-public perl-math-random-isaac + (package + (name "perl-math-random-isaac") + (version "1.004") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/J/JA/JAWNSY/" + "Math-Random-ISAAC-" version ".tar.gz")) + (sha256 + (base32 + "0z1b3xbb3xz71h25fg6jgsccra7migq7s0vawx2rfzi0pwpz0wr7")))) + (build-system perl-build-system) + (native-inputs + `(("perl-test-nowarnings" ,perl-test-nowarnings))) + (propagated-inputs + `(("perl-math-random-isaac-xs" ,perl-math-random-isaac-xs))) + (home-page "http://search.cpan.org/dist/Math-Random-ISAAC") + (synopsis "Perl interface to the ISAAC PRNG algorithm") + (description "ISAAC (Indirection, Shift, Accumulate, Add, and Count) is a +fast pseudo-random number generator. It is suitable for applications where a +significant amount of random data needs to be produced quickly, such as +solving using the Monte Carlo method or for games. The results are uniformly +distributed, unbiased, and unpredictable unless you know the seed. + +This package provides a Perl interface to the ISAAC pseudo random number +generator.") + (license license:public-domain))) -- cgit v1.2.3 From 2023b79f59b1f0624bf6825669b342dc8cff696e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:00:36 +0200 Subject: gnu: Add perl-crypt-random-source. * gnu/packages/crypto.scm (perl-crypt-random-source): New variable. --- gnu/packages/crypto.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu/packages/crypto.scm') diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 8df3095518..3ddeefed84 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -494,3 +494,33 @@ (define-public perl-math-random-isaac This package provides a Perl interface to the ISAAC pseudo random number generator.") (license license:public-domain))) + +(define-public perl-crypt-random-source + (package + (name "perl-crypt-random-source") + (version "0.12") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" + "Crypt-Random-Source-" version ".tar.gz")) + (sha256 + (base32 + "00mw5m52sbz9nqp3f6axyrgcrihqxn7k8gv0vi1kvm1j1nc9g29h")))) + (build-system perl-build-system) + (native-inputs + `(("perl-module-build-tiny" ,perl-module-build-tiny) + ("perl-test-exception" ,perl-test-exception))) + (propagated-inputs + `(("perl-capture-tiny" ,perl-capture-tiny) + ("perl-module-find" ,perl-module-find) + ("perl-module-runtime" ,perl-module-runtime) + ("perl-moo" ,perl-moo) + ("perl-namespace-clean" ,perl-namespace-clean) + ("perl-sub-exporter" ,perl-sub-exporter) + ("perl-type-tiny" ,perl-type-tiny))) + (home-page "http://search.cpan.org/dist/Crypt-Random-Source") + (synopsis "Get weak or strong random data from pluggable sources") + (description "This module provides implementations for a number of +byte-oriented sources of random data.") + (license (package-license perl)))) -- cgit v1.2.3 From 233f4f43bfe851d9b7a3dee7e881dcd017a2c1a3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 11:50:42 +0200 Subject: gnu: Add perl-math-random-secure. * gnu/packages/crypto.scm (perl-math-random-secure): New variable. --- gnu/packages/crypto.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'gnu/packages/crypto.scm') diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 3ddeefed84..62fe5fe081 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -524,3 +524,42 @@ (define-public perl-crypt-random-source (description "This module provides implementations for a number of byte-oriented sources of random data.") (license (package-license perl)))) + +(define-public perl-math-random-secure + (package + (name "perl-math-random-secure") + (version "0.080001") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/F/FR/FREW/" + "Math-Random-Secure-" version ".tar.gz")) + (sha256 + (base32 + "0dgbf4ncll4kmgkyb9fsaxn0vf2smc9dmwqzgh3259zc2zla995z")))) + (build-system perl-build-system) + (native-inputs + `(("perl-list-moreutils" ,perl-list-moreutils) + ("perl-test-leaktrace" ,perl-test-leaktrace) + ("perl-test-sharedfork" ,perl-test-sharedfork) + ("perl-test-warn" ,perl-test-warn))) + (inputs + `(("perl-crypt-random-source" ,perl-crypt-random-source) + ("perl-math-random-isaac" ,perl-math-random-isaac) + ("perl-math-random-isaac-xs" ,perl-math-random-isaac-xs) + ("perl-moo" ,perl-moo))) + (home-page "http://search.cpan.org/dist/Math-Random-Secure") + (synopsis "Cryptographically secure replacement for rand()") + (description "This module is intended to provide a +cryptographically-secure replacement for Perl's built-in @code{rand} function. +\"Crytographically secure\", in this case, means: + +@enumerate +@item No matter how many numbers you see generated by the random number +generator, you cannot guess the future numbers, and you cannot guess the seed. +@item There are so many possible seeds that it would take decades, centuries, +or millenia for an attacker to try them all. +@item The seed comes from a source that generates relatively strong random +data on your platform, so the seed itself will be as random as possible. +@end enumerate\n") + (license license:artistic2.0))) -- cgit v1.2.3