# # spec file for package perl-Crypt-Rijndael # # Copyright (c) 2021 SUSE LLC # # 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 https://bugs.opensuse.org/ # %define cpan_name Crypt-Rijndael Name: perl-Crypt-Rijndael Version: 1.16 Release: 1.15 #Upstream: SUSE-Public-Domain Summary: Crypt::CBC compliant Rijndael encryption module License: LGPL-3.0-only URL: https://metacpan.org/release/%{cpan_name} Source0: https://cpan.metacpan.org/authors/id/L/LE/LEONT/%{cpan_name}-%{version}.tar.gz Source1: cpanspec.yml BuildRequires: perl BuildRequires: perl-macros %{perl_requires} %description This module implements the Rijndael cipher, which has just been selected as the Advanced Encryption Standard. * keysize Returns the keysize, which is 32 (bytes). The Rijndael cipher actually supports keylengths of 16, 24 or 32 bytes, but there is no way to communicate this to 'Crypt::CBC'. * blocksize The blocksize for Rijndael is 16 bytes (128 bits), although the algorithm actually supports any blocksize that is any multiple of our bytes. 128 bits, is however, the AES-specified block size, so this is all we support. * $cipher = Crypt::Rijndael->new( $key [, $mode] ) Create a new 'Crypt::Rijndael' cipher object with the given key (which must be 128, 192 or 256 bits long). The additional '$mode' argument is the encryption mode, either 'MODE_ECB' (electronic codebook mode, the default), 'MODE_CBC' (cipher block chaining, the same that 'Crypt::CBC' does), 'MODE_CFB' (128-bit cipher feedback), 'MODE_OFB' (128-bit output feedback), or 'MODE_CTR' (counter mode). ECB mode is very insecure (read a book on cryptography if you don't know why!), so you should probably use CBC mode. * $cipher->set_iv($iv) This allows you to change the initial value vector used by the chaining modes. It is not relevant for ECB mode. * $cipher->encrypt($data) Encrypt data. The size of '$data' must be a multiple of 'blocksize' (16 bytes), otherwise this function will croak. Apart from that, it can be of (almost) any length. * $cipher->decrypt($data) Decrypts '$data'. %prep %autosetup -n %{cpan_name}-%{version} %build perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" %make_build %check make test %install %perl_make_install %perl_process_packlist %perl_gen_filelist %files -f %{name}.files %doc Changes NEWS README %license COPYING LICENSE %changelog * Fri Apr 2 2021 Tina Müller - updated to 1.16 see /usr/share/doc/packages/perl-Crypt-Rijndael/Changes 1.16 - 2021-04-01 * Add non-blocksized encoding support to streaming modes * Explicitly use downgraded strings * Sun Oct 11 2020 Tina Müller - updated to 1.15 see /usr/share/doc/packages/perl-Crypt-Rijndael/Changes 1.15 - 2020-10-10 * Use standard uint8_t and uint32_t from stdint.h * Sat Jun 15 2019 Stephan Kulow - updated to 1.14 see /usr/share/doc/packages/perl-Crypt-Rijndael/Changes * Mon Jun 15 2015 i@marguerite.su - use cpanspec.yml to correct license automatically * Tue Jun 9 2015 i@marguerite.su - automatic update wasn't right, license should be LGPL * Thu Jun 4 2015 coolo@suse.com - updated to 1.13 see /usr/share/doc/packages/perl-Crypt-Rijndael/Changes Revision history for Perl module Crypt::Rijndael * Wed Feb 12 2014 i@marguerite.su - update version 1.12 * Get rid of MYMETA * Mon Jun 3 2013 coolo@suse.com - updated to 1.11 * Clarify the license as LGPL v3 (29 June 2007) (RT 78629) * Add MirBSD support. It's the same options as Sun stuff. * Fri Nov 18 2011 coolo@suse.com - use original .tar.gz * Wed Dec 1 2010 coolo@novell.com - switch to perl_requires macro * Tue Jul 27 2010 chris@computersalat.de - initial package 1.09 * created by cpanspec 1.78