Я планирую использовать код, похожий на Примеры Amazon AWS , для аутентификации подписанных запросов API. Таким образом, пользователи будут иметь что-то вроде:
use Digest::SHA qw(hmac_sha256_base64);
my $digest = hmac_sha256_base64 ($request, $self->{SecretKey});
и присоедините $digest
в качестве параметра к их URI запроса. На стороне сервера будет использоваться тот же алгоритм для создания дайджеста из URI клиента и сравнения его со значением, отправленным клиентом.
Что я не могу найти, так это Perl поддержка генерации SecretKey правильной длины для использования при генерации дайджеста HMAC SHA256.
Для моей учетной записи Amazon AWS мне дают строку в кодировке 4064 символа ASCII.
Как создать правильный секретный ключ для моих клиентов?