Я ищу создание REST API в Symfony2 и их Custom Authentication Provider они показывают, как построить систему аутентификации WSSE, которая должна подходить для моих нужд. Я собираюсь начать с создания и тестирования API через cURL, поэтому мне нужно иметь возможность быстро генерировать заголовки. Я нашел генератор JS, который показал нужные мне заголовки.
Из того, что я читал, дайджест паролей должен представлять собой SHA1 в кодировке base64, состоящий из одноразового номера, метки времени и пароля пользователя, объединенных вместе в указанном порядке. Я начал со следующих данных:
$nonce = '4c5625ec7af5bdff';
$timestamp = '2013-04-03T04:46:19Z';
$password = 'mypass';
и сформировал дайджест:
$digest = base64_encode(sha1($nonce.$timestamp.$password));
Я не понимаю, что для переменной $digest
теперь установлено значение YTgxMDUzOWQzMDBiZmU1MmI2NWQ0YjYwNDc3ZmY5OWI3MmVlZTQyNA==
, но образец PasswordDigest из генератора JS отображается как qBBTnTAL/lK2XUtgR3/5m3Lu5CQ=
. Должно быть, я где-то пропустил шаг, но я не уверен, что это.