免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7029 | 回复: 1

[请教]mcrypt_encrypt AES 256加密问题 [复制链接]

论坛徽章:
1
申猴
日期:2014-12-23 16:52:51
发表于 2013-10-16 22:08 |显示全部楼层
应用需要由服务器生成一段加密过的信息给客户端。
客户端为嵌入式设备。

打算使用AES-256 CEB/CBC

使用AES 256时得到的密文在PC上面使用其它工具解密得不到正确的原文。
  1. $privateKey = "1234567890abcdef1234567890abcdef";
  2. $encrypted = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $privateKey, $data, MCRYPT_MODE_ECB);
复制代码
后来使用AES 128时,PC上面的工具可以正确解密原文。
  1. $privateKey = "1234567890abcdef";
  2. $encrypted = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $privateKey, $data, MCRYPT_MODE_ECB);
复制代码
请有做过的朋友指点一下。

论坛徽章:
1
申猴
日期:2014-12-23 16:52:51
发表于 2013-10-24 10:40 |显示全部楼层
查到以下文章,问题解决了。
http://stackoverflow.com/questio ... 6-encryption-in-php

AES-128/AES-192/AES-256都使用16字节的块大小,所以都使用 MCRYPT_RIJNDAEL_128 算法,
仅是密钥长度不一样。

MCRYPT_RIJNDAEL_256 与 AES-256 并不是一回事。
  1. <?php

  2.     $data = "Sometime it is needed to use 2 way encryption for storing data.";

  3.     //$privateKey = "0123456789abcdef"; // AES-128
  4.     //$privateKey = "0123456789abcdef01234567"; // AES-192
  5.     $privateKey = "0123456789abcdef0123456789abcdef"; // AES-256

  6.     $encrypted = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $privateKey, $data, MCRYPT_MODE_ECB, '');

  7.     header("Content-Encoding: none");
  8.     header("Content-type: application/x-msdownload");
  9.     header("Cache-Control: private");
  10.     header("Accept-Ranges: bytes");
  11.     header("Accept-Length: ".strlen($encrypted));
  12.     header("Content-Disposition: attachment; filename=test.bin");
  13.     header('Pragma: no-cache');
  14.     header('Expires: 0');
  15.    
  16.     echo $encrypted;

  17. ?>
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会

【架构革新 高效可控】2020年12月21日-23日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP