Authen-Passphrase
view release on metacpan or search on metacpan
"MIME::Base64" => "2.21",
"Module::Build" => 0,
"Test::More" => 0,
"perl" => "5.006",
"strict" => 0,
"warnings" => 0,
},
requires => {
"Authen::DecHpwd" => "2.003",
"Carp" => 0,
"Crypt::DES" => 0,
"Crypt::Eksblowfish::Bcrypt" => "0.008",
"Crypt::Eksblowfish::Uklblowfish" => "0.008",
"Crypt::MySQL" => "0.03",
"Crypt::PasswdMD5" => "1.0",
"Crypt::SysRandom" => 0,
"Crypt::UnixCrypt_XS" => "0.08",
"Digest" => "1.00",
"Digest::MD4" => "1.2",
"Digest::MD5" => "1.9953",
"Digest::SHA" => 0,
"Module::Build" : "0",
"perl" : "5.006",
"strict" : "0",
"warnings" : "0"
}
},
"runtime" : {
"requires" : {
"Authen::DecHpwd" : "2.003",
"Carp" : "0",
"Crypt::DES" : "0",
"Crypt::Eksblowfish::Bcrypt" : "0.008",
"Crypt::Eksblowfish::Uklblowfish" : "0.008",
"Crypt::MySQL" : "0.03",
"Crypt::PasswdMD5" : "1.0",
"Crypt::SysRandom" : "0",
"Crypt::UnixCrypt_XS" : "0.08",
"Digest" : "1.00",
"Digest::MD4" : "1.2",
"Digest::MD5" : "1.9953",
"Digest::SHA" : "0",
version: '0.009'
Authen::Passphrase::SaltedDigest:
file: lib/Authen/Passphrase/SaltedDigest.pm
version: '0.009'
Authen::Passphrase::VMSPurdy:
file: lib/Authen/Passphrase/VMSPurdy.pm
version: '0.009'
requires:
Authen::DecHpwd: '2.003'
Carp: '0'
Crypt::DES: '0'
Crypt::Eksblowfish::Bcrypt: '0.008'
Crypt::Eksblowfish::Uklblowfish: '0.008'
Crypt::MySQL: '0.03'
Crypt::PasswdMD5: '1.0'
Crypt::SysRandom: '0'
Crypt::UnixCrypt_XS: '0.08'
Digest: '1.00'
Digest::MD4: '1.2'
Digest::MD5: '1.9953'
Digest::SHA: '0'
lib/Authen/Passphrase/LANManager.pm view on Meta::CPAN
my($self) = @_;
return "{LANMAN}".$self->hash_hex;
}
=back
=head1 SEE ALSO
L<Authen::Passphrase>,
L<Authen::Passphrase::LANManagerHalf>,
L<Crypt::DES>
=head1 AUTHOR
Andrew Main (Zefram) <zefram@fysh.org>
=head1 COPYRIGHT
Copyright (C) 2006, 2007, 2009, 2010, 2012
Andrew Main (Zefram) <zefram@fysh.org>
lib/Authen/Passphrase/LANManagerHalf.pm view on Meta::CPAN
=cut
package Authen::Passphrase::LANManagerHalf;
{ use 5.006; }
use warnings;
use strict;
use Authen::Passphrase 0.003;
use Carp qw(croak);
use Crypt::DES;
our $VERSION = "0.009";
use parent "Authen::Passphrase";
=head1 CONSTRUCTORS
=over
=item Authen::Passphrase::LANManagerHalf->new(ATTR => VALUE, ...)
lib/Authen/Passphrase/LANManagerHalf.pm view on Meta::CPAN
sub _hash_of {
my($self, $passphrase) = @_;
$passphrase = uc($passphrase);
$passphrase = "\0".$passphrase."\0\0\0\0\0\0\0\0";
my $key = "";
for(my $i = 0; $i != 8; $i++) {
my $a = ord(substr($passphrase, $i, 1));
my $b = ord(substr($passphrase, $i+1, 1));
$key .= chr((($b >> $i) | ($a << (8-$i))) & 0xfe);
}
return Crypt::DES->new($key)->encrypt("KGS!\@#\$%");
}
sub match {
my($self, $passphrase) = @_;
return $self->_passphrase_acceptable($passphrase) &&
$self->_hash_of($passphrase) eq $self->{hash};
}
sub as_crypt {
my($self) = @_;
return "\$LM\$".$self->hash_hex;
}
=back
=head1 SEE ALSO
L<Authen::Passphrase>,
L<Authen::Passphrase::LANManager>,
L<Crypt::DES>
=head1 AUTHOR
Andrew Main (Zefram) <zefram@fysh.org>
=head1 COPYRIGHT
Copyright (C) 2006, 2007, 2009, 2010, 2012
Andrew Main (Zefram) <zefram@fysh.org>
( run in 2.426 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )