【PHP8.x】sodium_crypto_generichash_update関数の使い方

作成日: 更新日:

sodium_crypto_generichash_update関数は、PHP 8で利用可能なSodium拡張機能の一部として提供される、暗号学的に強力なジェネリックハッシュの計算プロセスを更新するために使用される関数です。この関数は、sodium_crypto_generichash_init()関数によって事前に初期化されたハッシュコンテキストに、さらなるデータ(メッセージ)を供給し、ハッシュ値の計算を段階的に進める役割を担います。

特に、非常に大きなファイルや、ストリーミングデータなど、一度にすべてのデータをメモリに読み込むことが難しい場合にその真価を発揮します。データを小さな塊(チャンク)に分割し、この関数に繰り返し渡すことで、メモリ使用量を抑えながら効率的にハッシュ計算を実行できます。

sodium_crypto_generichash_update()を呼び出すたびに、提供されたデータが現在のハッシュコンテキストに追加され、内部的なハッシュ状態が更新されます。この関数は、ハッシュコンテキストの内容を直接変更することで計算を継続させ、特定の値を直接返すことはありません。最終的なハッシュ値を取得するには、すべてのデータが処理された後にsodium_crypto_generichash_final()関数を呼び出す必要があります。データの完全性検証やセキュリティ関連の処理において、柔軟かつ安全なハッシュ生成フローを実現するための重要な構成要素です。

基本的な使い方

構文(syntax)

1<?php
2$hashContext = sodium_crypto_generichash_init();
3sodium_crypto_generichash_update($hashContext, 'Data part one.');
4sodium_crypto_generichash_update($hashContext, 'Data part two.');
5?>

引数(parameters)

string &$state, string $message

  • string &$state: ハッシュ状態を保持する可変参照。sodium_crypto_generichash_init() の戻り値を使用します。
  • string $message: ハッシュ計算に追加するメッセージデータ。

戻り値(return)

戻り値なし

戻り値はありません

【PHP8.x】sodium_crypto_generichash_update関数の使い方 | いっしー@Webエンジニア