#!/usr/bin/perl
use strict;
# Eingegebenes Passwort...
my $pass='geheim';
# Verschluesseltes Passwort z.B. aus Datei...
my $cpass='XPkzdnI74tF6E';
# **************************************************
# checken ob Eingegebenes Passwort mit dem Verschluesselten
# Passwort uebereinstimmt.
if (crypt($pass,encrypt($cpass)) eq $cpass) {
print "Passwort OK\n";
} else {
print "Passwort Falsch\n";
}
# **************************************************
# Verschluesslungskey (salt) vom verschluesselten
# Passwort ermitteln...
sub encrypt {
my $pass=shift;
return substr($pass,0,2);
}
# **************************************************
# Ein Verschluesseltes Passwort mit crypt() erzeugen.
# Als Argument wird ein Passwort erwartet.
sub decrypt {
my $pass=shift;
my $salt="";
my @signs=('A'..'Z','a'..'z',0..9);
for (1..10) {
$salt=join('',$signs[ rand(scalar(@signs)) ],$signs[ rand(scalar(@signs)) ]);
}
return crypt($pass,$salt);
}