iniital package
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-Digest-SHA-PurePerl?expand=0&rev=1
This commit is contained in:
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.osc
|
3
Digest-SHA-PurePerl-5.50.tar.bz2
Normal file
3
Digest-SHA-PurePerl-5.50.tar.bz2
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:cfa0f3685f8b19bf3743faa4516e5affd328e8d124bfda84bfb469ade2b3a6e9
|
||||
size 30189
|
6
perl-Digest-SHA-PurePerl.changes
Normal file
6
perl-Digest-SHA-PurePerl.changes
Normal file
@@ -0,0 +1,6 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Jan 21 19:49:16 UTC 2011 - coolo@novell.com
|
||||
|
||||
- initial package 5.50
|
||||
* created by cpanspec 1.78.03
|
||||
|
123
perl-Digest-SHA-PurePerl.spec
Normal file
123
perl-Digest-SHA-PurePerl.spec
Normal file
@@ -0,0 +1,123 @@
|
||||
#
|
||||
# spec file for package perl-Digest-SHA-PurePerl (Version 5.50)
|
||||
#
|
||||
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
Name: perl-Digest-SHA-PurePerl
|
||||
Version: 5.50
|
||||
Release: 1
|
||||
License: GPL+ or Artistic
|
||||
%define cpan_name Digest-SHA-PurePerl
|
||||
Summary: Perl implementation of SHA-1/224/256/384/512
|
||||
Url: http://search.cpan.org/dist/Digest-SHA-PurePerl/
|
||||
Group: Development/Libraries/Perl
|
||||
#Source: http://www.cpan.org/authors/id/M/MS/MSHELOR/Digest-SHA-PurePerl-%{version}.tar.gz
|
||||
Source: %{cpan_name}-%{version}.tar.bz2
|
||||
BuildRequires: perl(FileHandle)
|
||||
BuildRequires: perl
|
||||
BuildRequires: perl-macros
|
||||
Requires: perl(FileHandle)
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildArch: noarch
|
||||
%{perl_requires}
|
||||
|
||||
%description
|
||||
Digest::SHA::PurePerl is written entirely in Perl. If your platform has a C
|
||||
compiler, you should install the functionally equivalent (but much faster)
|
||||
the Digest::SHA manpage module.
|
||||
|
||||
The programming interface is easy to use: it's the same one found in CPAN's
|
||||
the Digest manpage module. So, if your applications currently use the
|
||||
Digest::MD5 manpage and you'd prefer the stronger security of SHA, it's a
|
||||
simple matter to convert them.
|
||||
|
||||
The interface provides two ways to calculate digests: all-at-once, or in
|
||||
stages. To illustrate, the following short program computes the SHA-256
|
||||
digest of "hello world" using each approach:
|
||||
|
||||
use Digest::SHA::PurePerl qw(sha256_hex);
|
||||
|
||||
$data = "hello world";
|
||||
@frags = split(//, $data);
|
||||
|
||||
# all-at-once (Functional style)
|
||||
$digest1 = sha256_hex($data);
|
||||
|
||||
# in-stages (OOP style)
|
||||
$state = Digest::SHA::PurePerl->new(256);
|
||||
for (@frags) { $state->add($_) }
|
||||
$digest2 = $state->hexdigest;
|
||||
|
||||
print $digest1 eq $digest2 ?
|
||||
"whew!\n" : "oops!\n";
|
||||
|
||||
To calculate the digest of an n-bit message where _n_ is not a multiple of
|
||||
8, use the _add_bits()_ method. For example, consider the 446-bit message
|
||||
consisting of the bit-string "110" repeated 148 times, followed by "11".
|
||||
Here's how to display its SHA-1 digest:
|
||||
|
||||
use Digest::SHA::PurePerl;
|
||||
$bits = "110" x 148 . "11";
|
||||
$sha = Digest::SHA::PurePerl->new(1)->add_bits($bits);
|
||||
print $sha->hexdigest, "\n";
|
||||
|
||||
Note that for larger bit-strings, it's more efficient to use the
|
||||
two-argument version _add_bits($data, $nbits)_, where _$data_ is in the
|
||||
customary packed binary format used for Perl strings.
|
||||
|
||||
The module also lets you save intermediate SHA states to disk, or display
|
||||
them on standard output. The _dump()_ method generates portable,
|
||||
human-readable text describing the current state of computation. You can
|
||||
subsequently retrieve the file with _load()_ to resume where the
|
||||
calculation left off.
|
||||
|
||||
To see what a state description looks like, just run the following:
|
||||
|
||||
use Digest::SHA::PurePerl;
|
||||
Digest::SHA::PurePerl->new->add("Shaw" x 1962)->dump;
|
||||
|
||||
As an added convenience, the Digest::SHA::PurePerl module offers routines
|
||||
to calculate keyed hashes using the HMAC-SHA-1/224/256/384/512 algorithms.
|
||||
These services exist in functional form only, and mimic the style and
|
||||
behavior of the _sha()_, _sha_hex()_, and _sha_base64()_ functions.
|
||||
|
||||
# Test vector from draft-ietf-ipsec-ciph-sha-256-01.txt
|
||||
|
||||
use Digest::SHA::PurePerl qw(hmac_sha256_hex);
|
||||
print hmac_sha256_hex("Hi There", chr(0x0b) x 32), "\n";
|
||||
|
||||
%prep
|
||||
%setup -q -n %{cpan_name}-%{version}
|
||||
|
||||
%build
|
||||
%{__perl} Makefile.PL INSTALLDIRS=vendor
|
||||
%{__make} %{?_smp_mflags}
|
||||
|
||||
%check
|
||||
%{__make} test
|
||||
|
||||
%install
|
||||
%perl_make_install
|
||||
%perl_process_packlist
|
||||
%perl_gen_filelist
|
||||
|
||||
%clean
|
||||
%{__rm} -rf %{buildroot}
|
||||
|
||||
%files -f %{name}.files
|
||||
%defattr(644,root,root,755)
|
||||
%doc Changes README shasum
|
||||
|
||||
%changelog
|
Reference in New Issue
Block a user