1. 首页>>开发笔记

PHP关于openssl_encrypt加密模式AES-ECB中的hex和base64两种编码方式

1645175815217021.jpg

      最近做一个项目,其中接口传递参数对方要求AES-ECB加密,对方用的java开发,我用的是php,加密其实挺简单但是中间有个小坑折腾了很久,记录一下用于下回备查。

      以下是PHP openssl_encrypt 加密语句

      $new_data = openssl_encrypt($data, 'AES-128-ECB', $key,1);

      其中$data是需要加密的数据字符串;

      AES-128-ECB是加密模式;

      $key为加密密钥;

      1这里是编码方式,0是base64/1是hex;

      正常情况下编码方式0即base64加密正常无需过多解释,java一般默认为hex编码方式,说这里坑来了如果直接填1加密过后的数据为乱码需要进行以下处理才行

      $new_data = strtolower(bin2hex($new_data));

      另外要注意的是openssl_encrypt加密默认是pkcs7填充方式。

如无特别说明,文章均为本站原创。转载请注明出处:http://www.pddo.cn/phper/27.html

发表评论

点击我更换图片

评论列表

联系我们

在线咨询:点击这里给我发消息

微信号:cjpay01

工作日:9:30-18:30,节假日休息