sodium_crypto_aead_xchacha20poly1305_ietf_decrypt

(PHP 7 >= 7.2.0, PHP 8)

sodium_crypto_aead_xchacha20poly1305_ietf_decryptXChaCha20-Poly1305 を用いてメッセージを検証し、復号する(AEADモードのうちもっとも好ましい)

説明

sodium_crypto_aead_xchacha20poly1305_ietf_decrypt(
    string $ciphertext,
    string $additional_data,
    string $nonce,
    string $key
): string|false

ChaCha20-Poly1305 (eXtended-nonce バリアント) を用いてメッセージを検証し、復号します。

一般的には、提供されている AEADモードの中で、 XChaCha20-Poly1305 を使うのがもっとも好ましいです。

パラメータ

ciphertext

sodium_crypto_aead_chacha20poly1305_ietf_encrypt() が生成したフォーマット (暗号化されたテキスト、タグを連結したもの) でなければなりません。

additional_data

追加の認証データ。 これは、 暗号化されたテキストに追加された認証タグを検証するのに用いられますが、 このデータは暗号化されていませんし、 暗号化されたテキストにも保存されていません。

nonce

メッセージごとに一度だけ使われる数値。 長さは24バイトです。 これは、 (たとえば、random_bytes()を使って) ランダムな値を生成するのに十分大きな長さです。

key

暗号化キー(256ビット)

戻り値

成功時にプレーンテキストを返します。 失敗した場合に false を返します

関連キーワード:  sodium, poly, crypto, aead, string, Poly, 暗号, 検証, メッセージ, xchacha