Я пытаюсь выполнить проверку подлинности с помощью restful_authentication из приложения php, однако я понимаю, что он использует SHA1 (дайджест - соль - пароль - RESTFUL_AUTH_KEY). Проблема заключается в том, насколько я стараюсь, я не могу получить хэш, чтобы соответствовать. Читая документацию, я вижу, что дайджест - это всего лишь успокоительный ключ авторизации, но я смущаюсь. Кто-нибудь еще смог найти способ сопоставить хэшированный пароль за пределами использования ruby, и если да, то как?Проверка аутентификации Resftul через приложение без Ruby
1
A
ответ
1
Вот пример использования PHP:
<?php
$password = 'SomePassword';
$salt = 'saltHashFromDB';
$sitekey = 'siteKeyFromConfig';
function pwcrypt($password, $salt, $sitekey) {
$digest = $sitekey;
$i = 0;
while ($i < 10) {
$digest = sha1($digest.'--'.$salt.'--'.$password.'--'.$sitekey);
$i++;
}
return $digest;
}
echo pwcrypt($password,$salt,$sitekey);
?>
Это довольно простой пример, вы должны быть в состоянии интегрировать его в приложение на основе этого. Я знаю, что в коде ruby есть около 4 или 5 функций, которые он вызывает один за другим, чтобы сделать то же самое, имея в одном месте, чтобы было легче понять.
Сообщите мне, если вам нужно какое-либо разъяснение.
Спасибо,
C4colo