Viewing file: pwgen.php (1.05 KB) -rwxrwxr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#!/usr/bin/env php <?php /* * $Id$ * Interactive script to generate password hashes. * */
/* This is the base directory of the simpleSAMLphp installation. */ $baseDir = dirname(dirname(__FILE__));
/* Add library autoloader. */ require_once($baseDir . '/lib/_autoload.php');
echo "Enter password: "; $password = trim(fgets(STDIN));
if(empty($password)) { echo "Need at least one character for a password\n"; exit(1); }
$table = ''; foreach (array_chunk(hash_algos(), 6) as $chunk) { foreach($chunk as $algo) { $table .= sprintf('%-13s', $algo); } $table .= "\n"; }
echo "The following hashing algorithms are available:\n" . $table . "\n"; echo "Which one do you want? [sha256] "; $algo = trim(fgets(STDIN)); if(empty($algo)) { $algo = 'sha256'; }
if(!in_array(strtolower($algo), hash_algos())) { echo "Hashing algorithm '$algo' is not supported\n"; exit(1); }
echo "Do you want to use a salt? (yes/no) [yes] "; $s = (trim(fgets(STDIN)) == 'no') ? '' : 'S';
echo "\n " . SimpleSAML_Utils_Crypto::pwHash($password, strtoupper( $s . $algo ) ). "\n\n";
|