asp.net — хэш пароля Sitefinity в переполнении стека

Я работаю над проектом, который требует использования клиентской базы данных Sitefinity для входа пользователей. Я могу встраивать только в PHP и пытаюсь хэшировать пароли в PHP и сравнивать их с хешированными паролями в базе данных Sitefinity.

Я сталкивался, этот вопрос, который объясняет, как Sitefinity выполняет хэширование, и это помогло начать работу, но я не совсем понимаю, как это, очевидно, написано в ASP. Мне нужно выяснить, есть ли эквивалент в PHP и как это будет работать.

Я искал в Интернете некоторые указания, но пока не повезло. Любая помощь будет оценена.

0

Решение

В PHP код для проверки хеша Sitefinity будет выглядеть так:

<?php
//clear password
$passwordInput = "password";

//from sf_users column [salt]
$userSalt = "2E1C1CEF99E6EF066E9C803974D17419";

//from sf_users column [passwd]
$userPassword = "G1MJiJw3zpBVdZBKViZUfEvTpZA=";

//from App_Data\Sitefinity\Configuration\SecurityConfig.config attribute "validationKey"$validationKey = "24152EC6E594970CBEA98B5C10D878D65EF73964AAF44F1CCD3E0FBE95A5F2EFC89C0124B9B025581D38ED6EC846453249FD998ABDAE9453302B8BAB97BA1D0C";

$str = $passwordInput.$userSalt;

$utfString  = mb_convert_encoding($str, "UTF-16LE");

echo $userPassword == base64_encode(hash_hmac('sha1', $utfString, hex2bin($validationKey), true))? 'true' : 'false';

?>
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]