Eine Funktion des Paketes ist es, verständliche Passwörter zu erzeugen mit der create()-Methode. Über createMultiple() erzeugen Sie mehrere auf einmal.
Ein verständliches Passwort erzeugen:
<?php
require_once "Text/Password.php";
echo "Ein verständliches Passwort mit 10 Zeichen....: ";
echo Text_Password::create() . "\n\n";
echo "Drei verschiedene verständliche Passwörter...: ";
print_r(Text_Password::createMultiple(3));
?>
Neben den verständlichen Passwörter kann Text_Password auch unverständliche Passwörter erzeugen, d.h. mit zufälliger Anordnung von Zeichen.
Ein zufälliges Passwort erzeugen:
<?php
require_once "Text/Password.php";
echo "\nEin zufälliges Passwort mit 8 Zeichen mit a,b,c als mögliche Zeichen....:\t";
echo Text_Password::create(8, 'unpronounceable', 'a,b,c') . "\n\n";
echo "\n4 verschiedene zufällige Passwörter erzeugen...:\n";
print_r(Text_Password::createMultiple(4, 10, 'unpronounceable'));
echo "\nEin zufälliges Passwort nur mit Nummern erzeugen:\t";
echo Text_Password::create(8, 'unpronounceable', 'numeric') . "\n\n";
echo "\nEin zufälliges Passwort mit alpha-numerischen Zeichen erzeugen:\t";
echo Text_Password::create(8, 'unpronounceable', 'alphanumeric') . "\n\n";
?>
Text_Password bietet die Möglichkeit Passwörter zu erzeugen, die auf einer festgelegten Zeichenkette basieren. Häufig handelt es sich bei der Zeichenkette um einen Benutzernamen für eine Authentifizierung.
Ein Passwort erzeugen, das auf einer Zeichenkette basiert:
<?php
require_once "Text/Password.php";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'reverse':\t";
echo Text_Password::createFromLogin('olivier', 'reverse') . "\n\n";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'rot13':\t";
echo Text_Password::createFromLogin('olivier', 'rot13') . "\n\n";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'rotx':\t";
echo Text_Password::createFromLogin('olivier', 'rotx', 13) . "\n\n";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'rotx++':\t";
echo Text_Password::createFromLogin('olivier', 'rotx++', 13) . "\n\n";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'rotx--':\t";
echo Text_Password::createFromLogin('olivier', 'rotx--', 13) . "\n\n";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'xor':\t";
echo Text_Password::createFromLogin('olivier', 'xor', 5) . "\n\n";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'ascii_rotx':\t";
echo Text_Password::createFromLogin('olivier', 'ascii_rotx', 5) . "\n\n";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'ascii_rotx++':\t";
echo Text_Password::createFromLogin('olivier', 'ascii_rotx++', 5) . "\n\n";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'ascii_rotx--':\t";
echo Text_Password::createFromLogin('olivier', 'ascii_rotx--', 5) . "\n\n";
echo "\nEin Passwort das auf dem Login-Namen 'olivier' basiert, der Typ ist 'shuffle':\t";
echo Text_Password::createFromLogin('olivier', 'shuffle', 1) . "\n\n";
echo "\nPasswörter erzeugen, die auf einen Array mit Login-Namen basieren, der Typ ist 'reverse':\n";
$logins = array('olivier', 'martin', 'vanhoucke', 'jansen');
print_r(Text_Password::createMultipleFromLogin($logins, 'reverse'));
?>
Derzeit werden die folgenden Obfuscation-Algorithmen unterstützt:
xor
rotx
rotx++
rotx--
ascii_rotx
ascii_rotx++
ascii_rotx--
shuffle
reverse