Perl Mongers :: deutschsprachig - German.pm

A wiki for German-speaking Perl & Raku programming language(s) user groups.

Wie erstelle ich ein Crypt-Passwort?

Zum Beispiel mit diesem Code-Snippet:

#!/usr/bin/perl -w
use strict;

my ( $pw, $salt );
my @salty = ( 'A' .. 'Z', 'a' .. 'z', '/' );
my $salty_re = join '', @salty;

while ( ! $pw ) {
        print 'Neues Passwort                : '; chomp( my $pw1 = <> );
        print "\n" x 150;
        print 'Bitte wiederholen oder "Enter": '; chomp( my $pw2 = <> );
        print "\n" x 150;

        if ( $pw2 and $pw1 ne $pw2 ) {
                print "Passwörter stimmen nicht überein.\n"
        }
        else { $pw = $pw1; }
}
while ( ! $salt ) {
        print 'Salt eingeben     oder "Enter": '; chomp( $salt = <> );
        if ( $salt and $salt =~ /[^$salty_re]/ ) {
                print qq("$salt" ist kein gültiger Salt.\n);
                $salt = '';
        }
        else {
                $salt .= $salty[rand( @salty )] for ( 1 .. 2 );
        }
}

print crypt( $pw,$salt ), "\n";
Username: