Acme-Indigest-Crypt

 view release on metacpan or  search on metacpan

lib/Acme/Indigest/Crypt.pm  view on Meta::CPAN

    elsif   ( $salt_string eq '$' ) { $salt_string = '' }
    defined and $_ = eval "$_" for $rounds;

    return ( $salt_string, $rounds );
}

sub digest_multiple {
    my $self = shift;
    my $input = shift;
    my $output = "";
    for ( split m/\n+/, $input ) {
        chomp;
        next if m/^\s*#/;
        next unless m/\S/;
        my ( $identifier, $salt_string, $rounds, $passphrase ) = split ':', $_, 4;
        ( $salt_string, $rounds ) = Acme::Indigest::Crypt->parse_salt_string_rounds( $salt_string, $rounds );
        my $ciphertext = Acme::Indigest::Crypt->digest( $passphrase, $salt_string, $rounds );
        $output .= "$identifier => $ciphertext\n";
    }
    return $output;
}

t/01-basic.t  view on Meta::CPAN

#!/usr/bin/env perl

use strict;
use warnings;

use Test::Most;

use Acme::Indigest::Crypt;

for (split m/\n/, <<'_END_' ) {
Xyzzy::10_000_000:$6$rounds=10000000$$vbg2CkLih12Hc7QAeDIzsv9p5aGr5QQO4KChuO7Xqkgo/kbNmJ4sG/QIFokzHdu.e8Fu6qqqE7LxVPsPwy/t61
Xyzzy:::$6$rounds=10000000$$vbg2CkLih12Hc7QAeDIzsv9p5aGr5QQO4KChuO7Xqkgo/kbNmJ4sG/QIFokzHdu.e8Fu6qqqE7LxVPsPwy/t61
Xyzzy:salt0::$6$rounds=10000000$salt0$bbPNeFPkDu/yMaLov8n8.qot6BDjMSIaPrVS9GdzTL8O3zH7XfAGAXBKisNBk3UwSJMPXbrg49GlYqn7FfHpw/
Xyzzy:salt0:10_000_000:$6$rounds=10000000$salt0$bbPNeFPkDu/yMaLov8n8.qot6BDjMSIaPrVS9GdzTL8O3zH7XfAGAXBKisNBk3UwSJMPXbrg49GlYqn7FfHpw/
Xyzzy:salt1:10_000_000:$6$rounds=10000000$salt1$3OK9/QOqkthvPkqc43CfU2Qyouip3r1yggVCsOHGaTE3uRWYKw40ZiJNFQrt2xNuZTb4u6oMGJNgF8wZQ2fZY.
Xyzzy:salt0:10_000_001:$6$rounds=10000001$salt0$5xNyTzFf1zCLBvcOm/Q/4Ar0hix8Yox5BW0rlGg7V.EcR6ZEGfuORK.jvgCsv.5lDWvdsrcCI/u536OcrHrn61
Xyzzy::10_000_100:$6$rounds=10000100$$0Y6k4t/gpWM8JKvzPXTVPKwm63hOeIdQ4mlG2RaRdYr.T4A4rSrTTB.3XhymhSzDAp6QqwF9X8TErafphUWqi0
Xyzzy::10_100_100:$6$rounds=10100100$$new0U2ntlEZPVUPLP3vD/PByGAVVnpnrJ2g9rs28rOmhNQgAah6k5yE/MUj44X5jlyPQ56FoJNIMVQp515vmI/
Xyzzy:salt0:10_100_100:$6$rounds=10100100$salt0$uaUll/x38DR2VZigveBmmuFbKG4ZBYfkt8x1r8pPSyTNQFsUv4/VJOUIgVUqRS5Xj2YlObxBUel.ILD6.zMm50
Alice:::$6$rounds=10000000$$9Ah5580mxlAGTrjHLMSWeoMmMsQwsGdBLzrjISOHj.t6Io6rXFGSzSnNfj6aB.T6JKDbV1sLSbWFeGfVx4jXf0



( run in 1.080 second using v1.01-cache-2.11-cpan-39bf76dae61 )