函式名:sodium_crypto_secretstream_xchacha20poly1305_push()
適用版本:PHP 7.2.0及以上
函式用法:該函式用於將訊息資料加密並追加到一個密文流中。
語法:sodium_crypto_secretstream_xchacha20poly1305_push(resource $stream, string $msg [, string $ad = "" [, int $tag = SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_MESSAGE]]): string|false
引數:
- $stream:密文流,透過sodium_crypto_secretstream_xchacha20poly1305_init_push()函式建立。
- $msg:要加密的訊息資料。
- $ad(可選):額外的認證資料,預設為空字串。
- $tag(可選):指定訊息的型別,預設為SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_MESSAGE。
返回值:
- 成功時,返回加密後的密文資料。
- 失敗時,返回false。
示例:
// 建立密文流
$stream = sodium_crypto_secretstream_xchacha20poly1305_init_push($key);
// 要加密的訊息資料
$message = "Hello, World!";
// 加密訊息並追加到密文流中
$cipher = sodium_crypto_secretstream_xchacha20poly1305_push($stream, $message);
// 列印加密後的密文資料
echo bin2hex($cipher);
注意事項:
- 在使用該函式之前,需要先透過sodium_crypto_secretstream_xchacha20poly1305_init_push()函式建立密文流。
- 密文流需要與解密方共享,以確保訊息的安全性。
- 可以透過更改$tag引數來指定不同型別的訊息,例如SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_PUSH等。
- 額外的認證資料$ad可以用於提供附加的上下文資訊,以增加訊息的安全性。
- 在解密時,需要使用對應的解密函式sodium_crypto_secretstream_xchacha20poly1305_pull()來解密密文流中的資料。
熱門工具排行榜