PHP - Função Hash hkdf ()
Definição e Uso
o hash_hkdf() função retorna a derivação da chave HKDF para a chave de entrada fornecida.
O HKDF é uma chave simples derivada do algoritmo HMAC como md5, sha256, uma chave de entrada e uma chave salt.
Sintaxe
hash_hkdf ( string $algo , string $ikm [, int $length = 0 [, string $info = '' [, string $salt = '' ]]] ) : string
Parâmetros
Sr. Não | Parâmetro e Descrição |
---|---|
1 | algo Nome do algoritmo de hash. Há uma grande lista de algoritmos disponíveis com hash, alguns importantes são md5, sha256, etc. Para obter a lista completa de algoritmos suportados, verifique por hash_hmac_algos () |
2 | ikm Chave de entrada. |
3 | length O comprimento que você deseja em bytes. O comprimento não pode ser maior que 255 vezes o tamanho da função hash escolhida. Se o comprimento for 0, então o comprimento será de acordo com o tamanho da função hash escolhida. |
4 | info String de informação específica do aplicativo / contexto. |
5 | salt A chave secreta de sal é necessária para derivação. É opcional, mas o uso de sal aumentará a força da derivação de HDKF. |
Valores Retornados
o hash_hkdf() função retorna uma string de dados binários brutos e false se falhar.
Versão PHP
Esta função funcionará na versão do PHP superior a 7.1.2.
Exemplo 1
Usando hash_hkdf () -
<?php
$inputKey = random_bytes(32);
$salt = 'testingkey';
$HKFD_derivation = hash_hkdf('md5', $inputKey, 32, 'aes-256-encryption', $salt);
echo $HKFD_derivation;
?>
Resultado
Isso produzirá o seguinte resultado -
����E���X�eBU�\"�ڨ��ՈWu��
Exemplo 2
Usando hash_hkdf () com comprimento 0 -
<?php
$inputKey = random_bytes(32);
$salt = 'testingkey';
$HKFD_derivation = hash_hkdf('md5', $inputKey, 0, 'aes-256-encryption', $salt);
echo $HKFD_derivation;
?>
Resultado
Isso produzirá o seguinte resultado -
8�hrx����5�����