[Bug 1939427] perl-Dancer-Session-Cookie-0.30-11.fc35 FTBFS: WARNING: The key derivation method "opensslv1" is deprecated. Using -pbkdf=>'pbkdf2' would be better.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.redhat.com/show_bug.cgi?id=1939427

Petr Pisar <ppisar@xxxxxxxxxx> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jplesnik@xxxxxxxxxx
          Component|perl-Dancer-Session-Cookie  |perl-Session-Storage-Secure



--- Comment #1 from Petr Pisar <ppisar@xxxxxxxxxx> ---
This is triggered by a change in Crypt-CBC-3.01:

  Revision history for Perl extension Crypt::CBC.
  3.01
    - Warn when the deprecated opensslv1 PBKDF (key derivation function) is
used
      for encryption. Turn off with -nodeprecate=>1 or by choosing a different
      PBKDF, such as -pbkdf=>'pbkdf2'.

and caused by Session::Storage::Secure->encode() which does not override the
default Crypt::CBC->new() -pbkdf argument:

    my $cbc = Crypt::CBC->new( -key => $key, -cipher => 'Rijndael' );
    my ( $ciphertext, $mac );
    eval {
        $ciphertext = $self->transport_encoder->( $cbc->encrypt(
$self->_freeze($data) ) );
        $mac = $self->transport_encoder->( hmac_sha256(
"$expires$sep$ciphertext", $key ) );
    };

Reproducer:

$ perl -MSession::Storage::Secure -e
'Session::Storage::Secure->new(secret_key=>1)->encode()'
WARNING: The key derivation method "opensslv1" is deprecated. Using
-pbkdf=>'pbkdf2' would be better.
Pass -nodeprecate=>1 to inhibit this message.
 at /usr/share/perl5/vendor_perl/Session/Storage/Secure.pm line 213.

The new CBC::Encrypt defaults to -pbkdf => 'opensslv1' to preserve
compatibility and warns about that at the same time.
Session::Storage::Secure can either pass -nodeprecate=>1 to silent the warning,
or pass -pbkdf => 'pbkdf2' to use stronger encryption key.
pbkdf2.

Since changing -pkbkdf makes the encrypted data nondecryptable,
Session::Storage::Secure should come up with a transition plan how to move to
the stronger PBKDF (e.g with using an old_secrets-like argument). Please note
that -pbkdf => 'opensslv1' uses MD5 underneath and that could become
unavailable in the future because of the system-wide crypto-policy enforced by
Fedora or OpenSSL upstream decision.

I know that Session::Storage::Secure uses Digest::SHA::hmac_sha256() to
populate the -key argument. And that is currently strong enough. Thus I
recommend patching Fedora with -nodeprecate=>1 until upstream resolves it.


-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
perl-devel mailing list -- perl-devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to perl-devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/perl-devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Legacy Announce]     [Fedora PHP Devel]     [Kernel Devel]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Big List of Linux Books]     [Gimp]     [Yosemite Information]

  Powered by Linux