Я заметил, что вывод HMAC SHA512 для заданных данных и ключа меняется каждый раз, когда я запускаю скрипт.
во-первых, я беру пример скрипта, где вывод не меняется:
#! /usr/bin/perl
use Digest::SHA qw(hmac_sha512_hex);
use warnings;
$data="test";
$key="20202020";
print hmac_sha512_hex($data,$key),"\n";
Я запускаю этот скрипт два раза и получаю тот же результат:
perl test.pl
457a1ff378f11880defaa91675de4633d1f1e69712b5dccd2f86612224b825b4461a9215a37cce53
8e7f5de43a6900867667b9361af38df32fc58e54d7ce9a02
perl test.pl
457a1ff378f11880defaa91675de4633d1f1e69712b5dccd2f86612224b825b4461a9215a37cce53
8e7f5de43a6900867667b9361af38df32fc58e54d7ce9a02
теперь я изменяю переменную данных в скрипте следующим образом:
#! /usr/bin/perl
use Digest::SHA qw(hmac_sha512_hex);
use warnings;
$data={'method' => 'test', 'value' => 21};
$key="20202020";
print hmac_sha512_hex($data,$key),"\n";
теперь вывод отличается каждый раз, когда я запускаю скрипт:
perl test.pl
cb1a40ba7a7f52da39dc0a3f130399dfbecb5249946057fd19887b72a58701f28452f6e663153bb6
85a4b86f9d427de4af5904801e11cb6fcbc272344605c2a9
perl test.pl
73dd1678a4e7f29f8032a65cbe979248b3e41cd6ed7aa81e5b214b8b6232af1e7a6683412b8532b7
187313d2c2a96c7e5009a9362690f355028b56ca319825e4
как мне это исправить?