New Upstream Snapshot - libmath-random-secure-perl
Ready changes
Summary
Merged new upstream version: 0.080001+git20170312.1.6bf570b (was: 0.080001).
Resulting package
Built on 2023-01-19T03:11 (took 7m48s)
The resulting binary packages can be installed (if you have the apt repository enabled) by running one of:
apt install -t fresh-snapshots libmath-random-secure-perl
Lintian Result
- libmath-random-secure-perl_0.080001+git20170312.1.6bf570b-1~jan+nus2.dsc
- libmath-random-secure-perl_0.080001+git20170312.1.6bf570b-1~jan+nus2_all.deb
- libmath-random-secure-perl_0.080001+git20170312.1.6bf570b-1~jan+nus2_amd64.buildinfo
- libmath-random-secure-perl_0.080001+git20170312.1.6bf570b-1~jan+nus2_amd64.changes
Diff
diff --git a/Changes b/Changes
index d2da866..e4df04b 100644
--- a/Changes
+++ b/Changes
@@ -1,5 +1,7 @@
Revision history for Math-Random-Secure
+0.080001 2023-01-19 03:08:47+00:00 UTC
+
0.080001 2017-03-12 15:45:36-07:00 America/Los_Angeles
- Fix out of date docs
diff --git a/MANIFEST b/MANIFEST
index ec68b7d..33978b2 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.008.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.029.
Changes
LICENSE
MANIFEST
diff --git a/META.json b/META.json
index 22252d5..f5bcfac 100644
--- a/META.json
+++ b/META.json
@@ -5,7 +5,7 @@
"Arthur Axel \"fREW\" Schmidt <math-random-secure@afoolishmanifesto.com>"
],
"dynamic_config" : 1,
- "generated_by" : "Dist::Zilla version 6.008, CPAN::Meta::Converter version 2.150005",
+ "generated_by" : "Dist::Zilla version 6.029, CPAN::Meta::Converter version 2.150010",
"license" : [
"artistic_2"
],
@@ -49,18 +49,9 @@
}
},
"release_status" : "stable",
- "resources" : {
- "bugtracker" : {
- "web" : "https://github.com/frioux/Math-Random-Secure/issues"
- },
- "homepage" : "https://github.com/frioux/Math-Random-Secure",
- "repository" : {
- "type" : "git",
- "url" : "https://github.com/frioux/Math-Random-Secure.git",
- "web" : "https://github.com/frioux/Math-Random-Secure"
- }
- },
"version" : "0.080001",
- "x_serialization_backend" : "Cpanel::JSON::XS version 3.0213"
+ "x_generated_by_perl" : "v5.36.0",
+ "x_serialization_backend" : "Cpanel::JSON::XS version 4.32",
+ "x_spdx_expression" : "Artistic-2.0"
}
diff --git a/META.yml b/META.yml
index d363bbe..5525152 100644
--- a/META.yml
+++ b/META.yml
@@ -11,7 +11,7 @@ build_requires:
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 1
-generated_by: 'Dist::Zilla version 6.008, CPAN::Meta::Converter version 2.150005'
+generated_by: 'Dist::Zilla version 6.029, CPAN::Meta::Converter version 2.150010'
license: artistic_2
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -23,9 +23,7 @@ requires:
Crypt::Random::Source: '0.07'
Math::Random::ISAAC: '1.001'
Moo: '2'
-resources:
- bugtracker: https://github.com/frioux/Math-Random-Secure/issues
- homepage: https://github.com/frioux/Math-Random-Secure
- repository: https://github.com/frioux/Math-Random-Secure.git
version: '0.080001'
-x_serialization_backend: 'YAML::Tiny version 1.69'
+x_generated_by_perl: v5.36.0
+x_serialization_backend: 'YAML::Tiny version 1.73'
+x_spdx_expression: Artistic-2.0
diff --git a/Makefile.PL b/Makefile.PL
index f935ee5..786f98a 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.008.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.029.
use strict;
use warnings;
@@ -54,7 +54,7 @@ delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
unless eval { ExtUtils::MakeMaker->VERSION(6.52) };
if ( $^O eq 'MSWin32' ) {
- $WriteMakefileArgs{PREREQ_PM}{'Crypt::Random::Source::Strong::Win32'} = '0';
+ $WriteMakefileArgs{PREREQ_PM}{'Crypt::Random::Source::Strong::Win32'} = $FallbackPrereqs{'Crypt::Random::Source::Strong::Win32'} = '0';
}
WriteMakefile(%WriteMakefileArgs);
diff --git a/README b/README
index 5eaec35..b2b5637 100644
--- a/README
+++ b/README
@@ -1,63 +1,65 @@
-SYNOPSIS
+NAME
+ Math::Random::Secure - Cryptographically-secure, cross-platform
+ replacement for rand()
+
+VERSION
+ version 0.080001
+SYNOPSIS
# Replace rand().
use Math::Random::Secure qw(rand);
-
+
# Get a random number between 0 and 1
my $float = rand();
-
+
# Get a random integer (faster than int(rand))
use Math::Random::Secure qw(irand);
my $int = irand();
-
+
# Random integer between 0 and 9 inclusive.
$int = irand(10);
-
+
# Random floating-point number greater than or equal to 0.0 and
# less than 10.0.
$float = rand(10);
DESCRIPTION
-
This module is intended to provide a cryptographically-secure
- replacement for Perl's built-in rand function. "Crytographically
+ replacement for Perl's built-in "rand" function. "Crytographically
secure", in this case, means:
- * 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.
+ * 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.
- * There are so many possible seeds that it would take decades,
- centuries, or millenia for an attacker to try them all.
+ * There are so many possible seeds that it would take decades,
+ centuries, or millenia for an attacker to try them all.
- * 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.
+ * 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.
- See "IMPLEMENTATION DETAILS" for more information about the
- underlying systems used to implement all of these guarantees, and
- some important caveats if you're going to use this module for some
- very-high-security purpose.
+ See "IMPLEMENTATION DETAILS" for more information about the
+ underlying systems used to implement all of these guarantees, and
+ some important caveats if you're going to use this module for some
+ very-high-security purpose.
METHODS
-
- rand
-
- Should work exactly like Perl's built-in rand. Will automatically call
- srand if srand has never been called in this process or thread.
+ rand
+ Should work exactly like Perl's built-in "rand". Will automatically call
+ "srand" if "srand" has never been called in this process or thread.
There is one limitation--Math::Random::Secure is backed by a 32-bit
random number generator. So if you are on a 64-bit platform and you
specify a limit that is greater than 2^32, you are likely to get
less-random data.
- srand
-
+ srand
Note: Under normal circumstances, you should not call this function, as
- rand and irand will automatically call it for you the first time they
- are used in a thread or process.
+ "rand" and "irand" will automatically call it for you the first time
+ they are used in a thread or process.
- Seeds the random number generator, much like Perl's built-in srand,
+ Seeds the random number generator, much like Perl's built-in "srand",
except that it uses a much larger and more secure seed. The seed should
be passed as a string of bytes, at least 8 bytes in length, and more
ideally between 32 and 64 bytes. (See "seed" in
@@ -69,122 +71,121 @@ METHODS
This function returns the seed that generated (or the seed that was
passed in, if you passed one in).
- irand
-
+ irand
Works somewhat like "rand", except that it returns a 32-bit integer
- between 0 and 2^32. Should be faster than doing int(rand).
+ between 0 and 2^32. Should be faster than doing "int(rand)".
- Note that because it returns 32-bit integers, specifying a limit
- greater than 2^32 will have no effect.
+ Note that because it returns 32-bit integers, specifying a limit greater
+ than 2^32 will have no effect.
IMPLEMENTATION DETAILS
-
Currently, Math::Random::Secure is backed by Math::Random::ISAAC, a
cryptographically-strong random number generator with no known serious
weaknesses. If there are significant weaknesses found in ISAAC, we will
- change our backend to a more-secure random number generator. The goal
- is for Math::Random::Secure to be cryptographically strong, not to
+ change our backend to a more-secure random number generator. The goal is
+ for Math::Random::Secure to be cryptographically strong, not to
represent some specific random number generator.
Math::Random::Secure seeds itself using Crypt::Random::Source. The
underlying implementation uses /dev/urandom on Unix-like platforms, and
- the RtlGenRandom or CryptGenRandom functions on Windows 2000 and above.
- (There is no support for versions of Windows before Windows 2000.) If
- any of these seeding sources are not available and you have other
- Crypt::Random::Source modules installed, Math::Random::Secure will use
- those other sources to seed itself.
-
- Making Math::Random::Secure Even More Secure
+ the "RtlGenRandom" or "CryptGenRandom" functions on Windows 2000 and
+ above. (There is no support for versions of Windows before Windows
+ 2000.) If any of these seeding sources are not available and you have
+ other Crypt::Random::Source modules installed, Math::Random::Secure will
+ use those other sources to seed itself.
+ Making Math::Random::Secure Even More Secure
We use /dev/urandom on Unix-like systems, because one of the
- requirements of duplicating rand is that we never block waiting for
+ requirements of duplicating "rand" is that we never block waiting for
seed data, and /dev/random could do that. However, it's possible that
/dev/urandom could run out of "truly random" data and start to use its
built-in pseudo-random number generator to generate data. On most
- systems, this should still provide a very good seed for nearly all
- uses, but it may not be suitable for very high-security cryptographic
+ systems, this should still provide a very good seed for nearly all uses,
+ but it may not be suitable for very high-security cryptographic
circumstances.
- For Windows, there are known issues with CryptGenRandom on Windows 2000
- and versions of Windows XP before Service Pack 3. However, there is no
- other built-in method of getting secure random data on Windows, and I
+ For Windows, there are known issues with "CryptGenRandom" on Windows
+ 2000 and versions of Windows XP before Service Pack 3. However, there is
+ no other built-in method of getting secure random data on Windows, and I
suspect that these issues will not be significant for most applications
of Math::Random::Secure.
- If either of these situations are a problem for your use, you can
- create your own Math::Random::Secure::RNG object with a different
- "seeder" argument, and set $Math::Random::Secure::RNG to your own
- instance of Math::Random::Secure::RNG. The "seeder" is an instance of
+ If either of these situations are a problem for your use, you can create
+ your own Math::Random::Secure::RNG object with a different "seeder"
+ argument, and set $Math::Random::Secure::RNG to your own instance of
+ Math::Random::Secure::RNG. The "seeder" is an instance of
Crypt::Random::Source::Base, which should allow you to use most
random-data sources in existence for your seeder, should you wish.
- Seed Exhaustion
-
- Perl's built-in srand reads 32 bits from /dev/urandom. By default, we
+ Seed Exhaustion
+ Perl's built-in "srand" reads 32 bits from /dev/urandom. By default, we
read 512 bits. This means that we are more likely to exhaust available
- truly-random data than the built-in srand is, and cause /dev/urandom to
- fall back on its psuedo-random number generator. Normally this is not a
- problem, since "srand" is only called once per Perl process or thread,
+ truly-random data than the built-in "srand" is, and cause /dev/urandom
+ to fall back on its psuedo-random number generator. Normally this is not
+ a problem, since "srand" is only called once per Perl process or thread,
but it is something that you should be aware of if you are going to be
- in a situation where you have many new Perl processes or threads and
- you have very high security requirements (on the order of generating
- private SSH or GPG keypairs, SSL private keys, etc.).
+ in a situation where you have many new Perl processes or threads and you
+ have very high security requirements (on the order of generating private
+ SSH or GPG keypairs, SSL private keys, etc.).
SEE ALSO
+ <http://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_numb
+ er_generator>
+ Describes the requirements and nature of a cryptographically-secure
+ random number generator.
- http://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_number_generator
-
- Describes the requirements and nature of a cryptographically-secure
- random number generator.
+ <http://en.wikipedia.org/wiki/CryptGenRandom>,
+ More information about the Windows functions we use to seed
+ ourselves. The article also has some information about the
+ weaknesses in Windows 2000's "CryptGenRandom" implementation.
- http://en.wikipedia.org/wiki/CryptGenRandom,
+ <http://www.computerworld.com/s/article/9048438/Microsoft_confirms_that_
+ XP_contains_random_number_generator_bug>
+ A news article about the Windows 2000/XP CryptGenRandom weakness,
+ fixed in Vista and XP Service Pack 3.
- More information about the Windows functions we use to seed
- ourselves. The article also has some information about the weaknesses
- in Windows 2000's CryptGenRandom implementation.
-
- http://www.computerworld.com/s/article/9048438/Microsoft_confirms_that_XP_contains_random_number_generator_bug
-
- A news article about the Windows 2000/XP CryptGenRandom weakness,
- fixed in Vista and XP Service Pack 3.
-
- http://en.wikipedia.org/wiki/Random_number_generator_attack
-
- A description of ways to attack a random number generator, which can
- help in understanding why such a generator needs to be secure.
+ <http://en.wikipedia.org/wiki/Random_number_generator_attack>
+ A description of ways to attack a random number generator, which can
+ help in understanding why such a generator needs to be secure.
Math::Random::Secure::RNG
-
- The underlying random-number generator and seeding code for
- Math::Random::Secure.
+ The underlying random-number generator and seeding code for
+ Math::Random::Secure.
Crypt::Source::Random
-
Crypt::Random
-
Math::TrulyRandom
-
- All of these modules contain generators for "truly random" data, but
- they don't contain a simple rand replacement and they can be very
- slow.
+ All of these modules contain generators for "truly random" data, but
+ they don't contain a simple "rand" replacement and they can be very
+ slow.
SUPPORT
-
Right now, the best way to get support for Math::Random::Secure is to
- email the author using the email address in the "AUTHORS" section
- below.
+ email the author using the email address in the "AUTHORS" section below.
BUGS
-
Math::Random::Secure is relatively new, as of December 2010, but the
modules that underlie it are very well-tested and have a long history.
However, the author still welcomes all feedback and bug reports,
- particularly those having to do with the security assurances provided
- by this module.
+ particularly those having to do with the security assurances provided by
+ this module.
- You can report a bug by emailing bug-Math-Random-Secure@rt.cpan.org or
+ You can report a bug by emailing "bug-Math-Random-Secure@rt.cpan.org" or
by using the RT web interface at
- https://rt.cpan.org/Ticket/Display.html?Queue=Math-Random-Secure. If
- your bug report is security-sensitive, you may also email it directly
- to the author using the email address in the "AUTHORS" section below.
+ <https://rt.cpan.org/Ticket/Display.html?Queue=Math-Random-Secure>. If
+ your bug report is security-sensitive, you may also email it directly to
+ the author using the email address in the "AUTHORS" section below.
+
+AUTHORS
+ * Max Kanat-Alexander <mkanat@cpan.org>
+
+ * Arthur Axel "fREW" Schmidt
+ <math-random-secure@afoolishmanifesto.com>
+
+COPYRIGHT AND LICENSE
+ This software is Copyright (c) 2010 by BugzillaSource, Inc.
+
+ This is free software, licensed under:
+
+ The Artistic License 2.0 (GPL Compatible)
diff --git a/debian/changelog b/debian/changelog
index 60cc17c..b196c81 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-libmath-random-secure-perl (0.080001-2) UNRELEASED; urgency=medium
+libmath-random-secure-perl (0.080001+git20170312.1.6bf570b-1) UNRELEASED; urgency=medium
[ Xavier Guimard ]
* Email change: Xavier Guimard -> yadd@debian.org
@@ -19,8 +19,9 @@ libmath-random-secure-perl (0.080001-2) UNRELEASED; urgency=medium
+ libmath-random-secure-perl: Drop versioned constraint on libmoo-perl in
Depends.
* Bump debhelper from old 12 to 13.
+ * New upstream snapshot.
- -- Xavier Guimard <yadd@debian.org> Sun, 02 Sep 2018 21:36:41 +0200
+ -- Xavier Guimard <yadd@debian.org> Thu, 19 Jan 2023 03:08:52 -0000
libmath-random-secure-perl (0.080001-1.1) unstable; urgency=medium
diff --git a/dist.ini b/dist.ini
index 648cdd0..932de4e 100644
--- a/dist.ini
+++ b/dist.ini
@@ -8,14 +8,17 @@ copyright_year = 2010
[NextRelease]
[@Git]
-[@Basic]
+[@Filter]
+-bundle = @Basic
+-remove = Readme
+
[GithubMeta]
issues = 1
[MetaJSON]
[PodWeaver]
[PkgVersion]
-[ReadmeFromPod]
+[Pod2Readme]
[PodSyntaxTests]
[Prereqs::FromCPANfile]
diff --git a/t/release-changes_has_content.t b/t/release-changes_has_content.t
index 0703a16..e0cf8b3 100644
--- a/t/release-changes_has_content.t
+++ b/t/release-changes_has_content.t
@@ -1,4 +1,3 @@
-#!perl
BEGIN {
unless ($ENV{RELEASE_TESTING}) {
@@ -7,13 +6,13 @@ BEGIN {
}
}
-
use Test::More tests => 2;
note 'Checking Changes';
my $changes_file = 'Changes';
my $newver = '0.080001';
my $trial_token = '-TRIAL';
+my $encoding = 'UTF-8';
SKIP: {
ok(-e $changes_file, "$changes_file file exists")
@@ -24,8 +23,6 @@ SKIP: {
done_testing;
-# _get_changes copied and adapted from Dist::Zilla::Plugin::Git::Commit
-# by Jerome Quelin
sub _get_changes
{
my $newver = shift;
@@ -33,6 +30,10 @@ sub _get_changes
# parse changelog to find commit message
open(my $fh, '<', $changes_file) or die "cannot open $changes_file: $!";
my $changelog = join('', <$fh>);
+ if ($encoding) {
+ require Encode;
+ $changelog = Encode::decode($encoding, $changelog, Encode::FB_CROAK());
+ }
close $fh;
my @content =
Debdiff
File lists identical (after any substitutions)
No differences were encountered in the control files