openssl_encrypt 加密数据 &reftitle.description; stringfalseopenssl_encrypt #[\SensitiveParameter]stringdata stringcipher_algo #[\SensitiveParameter]stringpassphrase intoptions0 stringiv"" stringtag&null; stringaad"" inttag_length16 以指定的方式和 key 加密数据,返回原始或 base64 编码后的字符串。 &reftitle.parameters; data 待加密的明文信息数据。 cipher_algo 密码学方式。openssl_get_cipher_methods 可获取有效密码方式列表。 passphrase 口令(passphrase)。 若 passphrase 比预期长度短,将静默用 NUL 填充; 若比预期长度更长,将静默截断。 options options 是以下标记的按位或: OPENSSL_RAW_DATAOPENSSL_ZERO_PADDINGOPENSSL_DONT_ZERO_PAD_KEY iv 非 NULL 的初始化向量。 tag 使用 AEAD 密码模式(GCM 或 CCM)时传引用的验证标签。 aad 附加的验证数据。 tag_length 验证 tag 的长度。GCM 模式时,它的范围是 4 到 16。 &reftitle.returnvalues; 成功时返回加密后的字符串,&return.falseforfailure;。 &reftitle.errors; cipher_algo 传入未知算法时,产生 E_WARNING 级别的错误。 iv 传入空字符串时产生 E_WARNING 级别的错误。 &reftitle.changelog; &Version; &Description; 7.1.0 增加了 tagaadtag_length 参数 &reftitle.examples; PHP 7.1 之前的 GCM 模式的 AES 认证加密示例 ]]> PHP 5.6+ 的 AES 认证加密例子 ]]> &reftitle.seealso; openssl_decrypt