(PHP 7 >= 7.2.0, PHP 8)
sodium_crypto_generichash_init — Inicializa un hachage para el streaming
$key
= "", int $length
= SODIUM_CRYPTO_GENERICHASH_BYTES
): stringEl método de inicialización para la API de hachage genérico en streaming.
key
La clave de hachage genérico.
length
El tamaño de la salida esperada de la función de hachage.
Devuelve un estado de hachage, serializado en forma de una string binaria bruta.
Ejemplo #1 Ejemplo de sodium_crypto_generichash_init()
<?php
$messages = [random_bytes(32), random_bytes(32), random_bytes(16)];
$state = sodium_crypto_generichash_init('', 32);
foreach ($messages as $message) {
sodium_crypto_generichash_update($state, $message);
}
$final = sodium_crypto_generichash_final($state, 32);
var_dump(sodium_bin2hex($final));
$allAtOnce = sodium_crypto_generichash(implode('', $messages));
var_dump(sodium_bin2hex($allAtOnce));
?>
El resultado del ejemplo sería algo similar a:
string(64) "a2939a9163cb7c796ec28e01028489e72475c136b2697ea59e3e760ab4a8ab20" string(64) "a2939a9163cb7c796ec28e01028489e72475c136b2697ea59e3e760ab4a8ab20"