Aes

使用高性能 mcrypt 库实现的 AES-128、AES-192 和 AES-256 加密的简单实现。

1.0

Joomla CMS

方法

__construct

初始化 AES 加密对象。

__construct( key,  strength = 128,  mode = 'cbc',  priority = 'openssl') : 
已弃用

注意:如果密钥不是 16 字节,此类出于遗留原因将进行愚蠢的密钥扩展(生成密钥字符串的 SHA-256 并丢弃一半)。

已弃用

4.3 $strength 将在 6.0 中删除

参数

key

string加密密钥(密码)。它可以是原始密钥(16 字节)或密码短语。

strength

int位强度(128、192 或 256) - 始终使用 128 位。此参数已弃用。

mode

string加密模式。可以是 ebc 或 cbc。我们建议使用 cbc。

priority

string我们应该首先尝试的适配器优先级

响应

混合

decryptString

使用 AES 将密文解密为明文字符串

decryptString( stringToDecrypt,  base64encoded = true) : 

参数

stringToDecrypt

string要解密的密文。原始字符串的前 16 个字节必须包含 IV(初始化向量)。

base64encoded

bool在解密之前是否应该对数据进行 Base64 解码?

响应

string纯文本字符串

encryptString

使用 AES 加密字符串

encryptString( stringToEncrypt,  base64encoded = true) : 

参数

stringToEncrypt

string要加密的明文

base64encoded

bool是否应该对结果进行 Base64 编码?

响应

string密文。请注意,原始字符串的前 16 个字节是 IV(初始化向量),它对于解码字符串是必需的。

getExpandedKey

获取扩展密钥

getExpandedKey( blockSize,  iv) : 

参数

blockSize

int要处理的块大小

iv

stringIV

响应

string

isSupported

此 PHP 安装是否支持 AES 加密?

isSupported() : 
静态

响应

bool

setPassword

设置此实例的密码。

setPassword( password,  legacyMode = false) : 

警告:不要使用遗留模式,它不安全

4.0.0

参数

password

string要使用的密码(用户提供的密码或二进制加密密钥)

legacyMode

bool是否使用遗留密钥扩展。我们建议不要使用它。

响应

void

属性

key

密码密钥。

类型

string

adapter

正在使用的 AES 加密适配器。

类型

AesInterface