(PHP 7 >= 7.2.0, PHP 8)
sodium_crypto_generichash_init — Inicializa un hash para el streaming
$key = "", int $length = SODIUM_CRYPTO_GENERICHASH_BYTES): stringEl método de inicialización para la API de hash genérico en streaming.
keyLa clave de hash genérico.
lengthEl tamaño de la salida esperada de la función de hash.
Devuelve un estado de hash, 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));
?>Resultado del ejemplo anterior es similar a:
string(64) "a2939a9163cb7c796ec28e01028489e72475c136b2697ea59e3e760ab4a8ab20" string(64) "a2939a9163cb7c796ec28e01028489e72475c136b2697ea59e3e760ab4a8ab20"