AES(Advanced Encryption Standard)是美国NIST制作的数据密码规则代替DES标准使用。AES的加密化方式有ECB和CBC两个方式。
下面是ECB方式的加密/解密方法的说明。
AES是初始化引擎的函数。加密/解密时返还要使用的context。
参数 | 说明 |
---|---|
enc/dec | enc - 加密 dec - 解密 |
$ecb_key | 在ECB 加密/解密中使用的128/192/256字节 密钥 |
根据之前实行的初始化的设定执行加密/解密。返还加密/解密化的密文和明文。
参数 | 说明 |
---|---|
$aes | 初始化时接收的返还context |
$text | 要进行加密/解密的明文或是密文 |
下面是CBC方式的加密/解密化函数。
AES是初始化引擎的函数。加密/解密时返还要使用的context。
参数 | 说明 |
---|---|
$enc/dec | enc - 加密 / dec - 解密 |
$cbc_key | 在CBC加密/解密中使用的128/192/256字节密钥 |
$iv | 128字节初始化向量(initialization vector) |
根据之前实行的初始化的设定执行加密/解密。返还加密/解密化的密文和明文。
参数 | 说明 |
---|---|
$aes | 初始化时接收的返还context |
$text | 要进行加密/解密的明文或是密文 |
下面是CBC方式的AES加密/解密化示例。
// encryption
$aes = system("aes init cbc enc %1 %2", $cbc_key, $cbc_iv);
$out = system("aes crypt %1 %2", $aes, $cbc_pt16);
// decryption
$aes = system("aes init cbc dec %1 %2", $cbc_key, $cbc_iv);
$out = system("aes crypt %1 %2", $aes, $cbc_ct16);