« sodium_crypto_secretstream_xchacha20poly1305_pull
sodium_crypto_secretstream_xchacha20poly1305_rekey »

sodium_crypto_secretstream_xchacha20poly1305_push

(PHP 7 >= 7.2.0, PHP 8)

sodium_crypto_secretstream_xchacha20poly1305_push — ストリーミングAPI で安全に復号できるように、データのチャンクを暗号化する

説明

function sodium_crypto_secretstream_xchacha20poly1305_push(
    string &$state,
    #[\SensitiveParameter] string $message,
    string $additional_data = "",
    int $tag = SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_MESSAGE
): string

ストリーミングAPIで安全に復号できるように、 データのチャンクを暗号化します。

パラメータ

state

sodium_crypto_secretstream_xchacha20poly1305_init_pull() と sodium_crypto_secretstream_xchacha20poly1305_init_push() を参照ください。

message

additional_data

tag

オプション。 復号の振る舞いを指示するために使えます。 (たとえば、鍵の再生成や、ストリームの最後のチャンクを示すなど)

  • SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_MESSAGE: もっとも一般的なタグ。 メッセージの性質についての情報を全く追加しません。
  • SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_FINAL: メッセージがストリームの終端であるとマークされており、 これより前のシーケンスで使われていた暗号化の鍵が削除されています。
  • SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_PUSH: このメッセージが、メッセージの集合の終端としてマークされていますが、 ストリームの終端ではありません。 たとえば、複数のチャンクとして送信された巨大なJSON文字列は、 アプリケーションに文字列の終端を示し、 デコードできると指示することができます。 しかし、ストリームそのものは閉じられておらず、 さらにデータが続く可能性があります。
  • SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_REKEY: このメッセージを暗号化するために、 これまでに使われてきた鍵を"忘れ"ます。 そして、新しい秘密鍵を生成します。

戻り値

暗号化されたテキストを返します。

関連キーワード:
暗号化   sodium   crypto   secretstream   xchacha   poly   チャンク   復号   メッセージ   ストリーミング   安全   push   ストリーム   終端   pull   state   message   init   指示   マーク   rekey   Sodium   SensitiveParameter   最後   一般的
関連する関数・ページ:
function.sodium-crypto-secretstream-xchacha20poly1305-pull   function.sodium-crypto-secretstream-xchacha20poly1305-init-push   function.sodium-crypto-secretstream-xchacha20poly1305-init-pull   function.sodium-crypto-secretstream-xchacha20poly1305-keygen   function.sodium-crypto-secretstream-xchacha20poly1305-rekey   function.sodium-crypto-stream-xchacha20-xor