public static function PHPExcel_Shared_PasswordHasher::hashPassword in Loft Data Grids 7.2
Same name and namespace in other branches
- 6.2 vendor/phpoffice/phpexcel/Classes/PHPExcel/Shared/PasswordHasher.php \PHPExcel_Shared_PasswordHasher::hashPassword()
* Create a password hash from a given string. * * This method is based on the algorithm provided by * Daniel Rentz of OpenOffice and the PEAR package * Spreadsheet_Excel_Writer by Xavier Noguer <xnoguer@rezebra.com>. * *
Parameters
string $pPassword Password to hash: * @return string Hashed password
4 calls to PHPExcel_Shared_PasswordHasher::hashPassword()
- PHPExcel_DocumentSecurity::setRevisionsPassword in vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ DocumentSecurity.php - Set RevisionsPassword
- PHPExcel_DocumentSecurity::setWorkbookPassword in vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ DocumentSecurity.php - Set WorkbookPassword
- PHPExcel_Worksheet::protectCells in vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Worksheet.php - Set protection on a cell range
- PHPExcel_Worksheet_Protection::setPassword in vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Worksheet/ Protection.php - Set Password
File
- vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Shared/ PasswordHasher.php, line 48
Class
- PHPExcel_Shared_PasswordHasher
- PHPExcel_Shared_PasswordHasher
Code
public static function hashPassword($pPassword = '') {
$password = 0x0;
$charPos = 1;
// char position
// split the plain text password in its component characters
$chars = preg_split('//', $pPassword, -1, PREG_SPLIT_NO_EMPTY);
foreach ($chars as $char) {
$value = ord($char) << $charPos++;
// shifted ASCII value
$rotated_bits = $value >> 15;
// rotated bits beyond bit 15
$value &= 0x7fff;
// first 15 bits
$password ^= $value | $rotated_bits;
}
$password ^= strlen($pPassword);
$password ^= 0xce4b;
return strtoupper(dechex($password));
}