PHP AES-128-ECB模式加密解密方法函数封装

本文详细介绍了如何在PHP中使用AES(高级加密标准)进行128位ECB模式加密和解密,特别关注了PKCS5填充方法,适合对称加密需求,并提供了相关函数实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

高级加密标准(AES,Advanced Encryption Standard)为最常见的对称加密算法(微信小程序加密传输就是用这个加密算法的)。对称加密算法也就是加密和解密用相同的密钥。

要想进行php的AES加解密,首先得了解双方用的加解密模式是什么,如,ECB、CBC、CFB、OFB、CTR、PCBC及GCM等。
其次是填充方式(Padding):由于密钥只能对确定长度的数据块进行处理,而数据的长度通常是可变的,因此需要对最后一块做额外处理,在加密前进行数据填充。常用的模式有PKCS5, PKCS7, NOPADDING。

下面的加解密函数适用于 aes-128-ecb 模式,填充方式(Padding)为 PKCS5 的加解密,且php版本低于7.2的,因为 mcrypt_decrypt()等函数在php高版本中已经被废弃了。

PHP AES加密方法*

/**
 * 加密方法
 * @param  array  $input 数据
 * @param  string $key   秘钥
 */

function encrypt($input, $key) {
   
   
    $size = mcrypt_get_block_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB);
    $input = pkcs5_pad($input, $size);
    $td 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值