ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
PasswordHasher.php
Go to the documentation of this file.
1 <?php
37 {
48  public static function hashPassword($pPassword = '') {
49  $password = 0x0000;
50  $charPos = 1; // char position
51 
52  // split the plain text password in its component characters
53  $chars = preg_split('//', $pPassword, -1, PREG_SPLIT_NO_EMPTY);
54  foreach ($chars as $char) {
55  $value = ord($char) << $charPos++; // shifted ASCII value
56  $rotated_bits = $value >> 15; // rotated bits beyond bit 15
57  $value &= 0x7fff; // first 15 bits
58  $password ^= ($value | $rotated_bits);
59  }
60 
61  $password ^= strlen($pPassword);
62  $password ^= 0xCE4B;
63 
64  return(strtoupper(dechex($password)));
65  }
66 }
static hashPassword($pPassword='')
Create a password hash from a given string.