PHP Conference Japan 2024

rnp_op_encrypt

(PECL rnp >= 0.1.1)

rnp_op_encrypt加密消息

描述

rnp_op_encrypt(
    RnpFFI $ffi,
    string $message,
    array $recipient_keys_fp,
    array $options = ?
): string|false

参数

ffi

由 rnp_ffi_create 返回的 FFI 对象。

message

要加密的消息。

recipient_keys_fp

包含接收者密钥指纹的数组。必须至少存在一个密钥。

options

一个包含选项的关联数组。

数据类型 描述
"compression_alg" string 压缩算法。为了启用数据压缩,必须同时设置"compression_alg""compression_level"
"compression_level" integer 压缩级别,0-9。0 表示禁用压缩。
"armor" boolean 启用 ASCII 加密输出。默认情况下禁用。
"add_signature" boolean 加密的消息也将被签名。
"hash" string 设置签名计算中使用的哈希算法。"add_signature" 选项应设置为 true
"creation_time" integer 设置签名创建时间(自 1970 年 1 月 1 日 0 时 0 分 0 秒 UTC 以来的秒数)。默认情况下使用当前时间。
"expiration_time" integer 设置签名过期时间(自创建时间以来的秒数)。0 值用于将签名标记为永不过期(默认值)。
"password" string 添加用于加密数据的密码。
"cipher" string 设置对称加密算法。可能的值为 "IDEA"、"TRIPLEDES"、"CAST5"、"BLOWFISH"、"AES128"、"AES192"、"AES256"、"TWOFISH"、"CAMELLIA128"、"CAMELLIA192"、"CAMELLIA256"、"SM4"。
"aead" string 设置 AEAD 模式算法。可能的值为 "None"(禁用 AEAD)、"EAX"、"OCB"。
"aead_bits" integer 通过块大小位数设置 AEAD 模式的块长度。必须在 0 到 56 之间。
"flags" integer 设置额外的加密标志。支持的标志:RNP_ENCRYPT_NOWRAP - 不要将数据包装在文字数据包中。这允许加密已签名的数 据。
"file_name" string 设置正在加密数据的内部存储文件名。特殊值 _CONSOLE 可用于将消息标记为“仅供您查看”,即它不应存储在任何地方,而只能显示给接收者。默认为空字符串。
"file_mtime" integer 设置输入文件的修改日期(自 1970 年 1 月 1 日 0 时 0 分 0 秒 UTC 以来的秒数)。

返回值

成功时返回加密数据,失败时返回 false

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top