PHPのお勉強!

PHP TOP

sodium_crypto_aead_chacha20poly1305_ietf_decrypt

(PHP 7 >= 7.2.0, PHP 8)

sodium_crypto_aead_chacha20poly1305_ietf_decrypt暗号化されたテキストが、有効なタグを持っているかを調べる

説明

sodium_crypto_aead_chacha20poly1305_ietf_decrypt(
    string $ciphertext,
    string $additional_data,
    string $nonce,
    #[\SensitiveParameter] string $key
): string|false

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

IETF バリアントは、96ビットの nonce と 32ビットの内部カウンタを持ちます。 標準では、nonce, 内部カウンタともに64ビットです。

パラメータ

ciphertext

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

additional_data

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

nonce

メッセージごとに一度だけ使われる数値。 長さは12バイトです。

key

暗号化キー(256ビット)

戻り値

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

add a note

User Contributed Notes 1 note

up
0
joy at codilar dot com
5 years ago
sodium_crypto_aead_chacha20poly1305_ietf_decrypt function mentions in its documentation that it'll always return a string. But when passed a malformed input as argument, it returns a boolean