略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: sodium_crypto_secretstream_xchacha20poly1305_push

2024-11-14

sodium_crypto_secretstream_xchacha20poly1305_push

(PHP 7 >= 7.2.0, PHP 8)

sodium_crypto_secretstream_xchacha20poly1305_pushEncrypt a chunk of data so that it can safely be decrypted in a streaming API

说明

sodium_crypto_secretstream_xchacha20poly1305_push(
    string &$state,
    string $message,
    string $additional_data = "",
    int $tag = SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_MESSAGE
): string

Encrypt a chunk of data so that it can safely be decrypted in a streaming API.

参数

state

See sodium_crypto_secretstream_xchacha20poly1305_init_pull() and sodium_crypto_secretstream_xchacha20poly1305_init_push()

message

additional_data

tag

Optional. Can be used to assert decryption behavior (i.e. re-keying or indicating the final chunk in a stream).

  • SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_MESSAGE: the most common tag, that doesn't add any information about the nature of the message.
  • SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_FINAL: indicates that the message marks the end of the stream, and erases the secret key used to encrypt the previous sequence.
  • SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_PUSH: indicates that the message marks the end of a set of messages, but not the end of the stream. For example, a huge JSON string sent as multiple chunks can use this tag to indicate to the application that the string is complete and that it can be decoded. But the stream itself is not closed, and more data may follow.
  • SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_REKEY: "forget" the key used to encrypt this message and the previous ones, and derive a new secret key.

返回值

Returns the encrypted ciphertext.

add a noteadd a note

User Contributed Notes

There are no user contributed notes for this page.

官方地址:https://www.php.net/manual/en/function.sodium-crypto-secretstream-xchacha20poly1305-push.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3