Как реализовать sha-512 с Crypt::PBKDF2 в Perl?

Поэтому я собираюсь использовать SHA-512 с PBKDF2 для реализации BIP биткойна. -039. Мне удалось выяснить, что SHA-512 подпадает под SHA2, но когда я указываю это как функцию хеширования, даже с 64-байтовым выходом, он все равно сообщает об использовании SHA-256. Я что-то упускаю? Я попытался добавить +512 к hash_class, но это не сработало.

#!/usr/bin/perl
#
use Crypt::PBKDF2;
my $sentence="Hellothere";
my $salt="mnemonic";
my $pbkdf2 = Crypt::PBKDF2->new(
  hash_class => 'HMACSHA2', # 
  iterations => 2048,      # 
  output_len => 64,        # 
);
my $hash = $pbkdf2->generate($sentence,$salt);
print "$hash\n";

Дает

{X-PBKDF2}HMACSHA2+256:AAAIAA:bW5lbW9uaWM=:NLw67sZbhQYsPhrEYm9e5ruslS6/ivK1vDfICtCN07rb7RuBkQxAoZIyTG7sTmsob30JwoP64Fvzpjx6Cqc+KQ==

person Richard Thomas    schedule 28.08.2017    source источник


Ответы (1)


Передача этого вызову new() работает.

  hash_args=>{sha_size => 512}
{X-PBKDF2}HMACSHA2+512:AAAIAA:bW5lbW9uaWM=:WG00S/OSlPeYJ/HWeIPkVdQHpSXnpzG0Ixb+j70pbgDgdCAemPBLbjYBbcUtnfSS2dzMJng73eAlGSSnDi+dDQ==
person Richard Thomas    schedule 29.08.2017