boa框架开发手册v5.2

crypt类
版本 1.0+
命名空间 boa
文件 boa/crypt.php
说明 加密解密类,继承base类,配置:'CRYPT' => [],
配置
配置项 默认值 类型 说明
cipher aes-128-cbc string 密码学方式,openssl_get_cipher_methods()值之一
key string 加解密key
options 0 int 以下标记的按位或:OPENSSL_RAW_DATA,OPENSSL_ZERO_PADDING
iv null string 初始化向量
tag string 使用AEAD密码模式(GCM或CCM)时传引用的验证标签
aad string 附加的验证数据
以上6个配置用于对称加解密enc()和dec()
public_key BS_VAR .'crypt/rsa_public.pem' string 公钥证书,用于公钥加解密public_enc()和public_dec()
private_key BS_VAR .'crypt/rsa_private.pem' string 私钥证书,用于私钥加解密private_enc()和private_dec()
private_pass string 私钥证书密码
sign_alg sha1 string 签名算法,openssl_get_md_methods()值之一,用于签名sign()和验签verify()
目录
方法 说明
__construct() 初始化
enc() 对称加密
dec() 对称解密
public_enc() 公钥加密
private_dec() 私钥解密
private_enc() 私钥加密
public_dec() 公钥解密
sign() 私钥签名
verify() 公钥验签
方法

__construct()

说明
初始化
参数 必须 默认值 类型 说明
$cfg [] array 配置数据

enc()

说明
对称加密
参数 必须 默认值 类型 说明
$data Y string 明文
$cipher null string 加密方式,默认为配置cipher
返回值
返回密文(string),出错则报错

dec()

说明
对称解密
参数 必须 默认值 类型 说明
$data Y string 密文
$cipher null string 加密方式,默认为配置cipher
返回值
返回明文(string),出错则报错

public_enc()

说明
公钥加密
参数 必须 默认值 类型 说明
$data Y string 明文
$padding OPENSSL_PKCS1_PADDING int 可选值:OPENSSL_PKCS1_PADDING, OPENSSL_SSLV23_PADDING, OPENSSL_PKCS1_OAEP_PADDING, OPENSSL_NO_PADDING
返回值
返回密文(string),出错则报错

private_dec()

说明
私钥解密
参数 必须 默认值 类型 说明
$data Y string 密文
$padding OPENSSL_PKCS1_PADDING int 可选值:OPENSSL_PKCS1_PADDING, OPENSSL_SSLV23_PADDING, OPENSSL_PKCS1_OAEP_PADDING, OPENSSL_NO_PADDING
返回值
返回明文(string),出错则报错

private_enc()

说明
私钥加密
参数 必须 默认值 类型 说明
$data Y string 明文
$padding OPENSSL_PKCS1_PADDING int 可选值:OPENSSL_PKCS1_PADDING, OPENSSL_NO_PADDING
返回值
返回密文(string),出错则报错

public_dec()

说明
公钥解密
参数 必须 默认值 类型 说明
$data Y string 密文
$padding OPENSSL_PKCS1_PADDING int 可选值:OPENSSL_PKCS1_PADDING, OPENSSL_NO_PADDING
返回值
返回明文(string),出错则报错

sign()

说明
私钥签名
参数 必须 默认值 类型 说明
$data Y string 数据
$sign_alg null string 签名算法,默认为配置sign_alg
返回值
返回签名(string),出错则报错

verify()

说明
公钥验签
参数 必须 默认值 类型 说明
$data Y string 数据
$sign Y string 签名
$sign_alg null string 签名算法,默认为配置sign_alg
返回值
签名正确返回1(int),签名错误返回0(int),内部出错则报错