AES128CBC与LUA、PYTHON和PHP的工作方式不同

2024-06-08 23:42:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个带Nodemcu的ESP8266和一个AM2320传感器。在

我将用JSON格式的纯文本格式将温度和湿度发送到我的HTTP服务器,用PHP和SQLITE3收集数据。在

这很有效。在

但我希望用AES-CBC对我的数据进行加密

我用加密加密()函数和“AES-CBC”方法,例如:

https://nodemcu-firmware.readthedocs.io/en/latest/en/modules/crypto/#cryptoencrypt

我用python3在我的电脑上进行同样的加密。在

结果字符串与ESP8266和Lua5.1上的结果相匹配

接下来,我在我的电脑上做同样的加密,但使用的是php7.1

唉,结果字符串与前面的结果不匹配。 我正在使用'AES-128-CBC'方法对openssl\u encrypt()函数。在

我把这三种语言的脚本放在一个要点上Github.com网站公司名称:

https://gist.github.com/bazooka07/bed368d313e218fcba332cb2127c70b1

这在PHP中是错误的?在

你能帮我吗?在


Tags: 数据方法函数字符串httpscom传感器en
2条回答

我尝试过用aes-256-cbc代替PHP中的aes-128-cbc编写代码,并且它给出了相同的输出。将PHP encrypt方法更改为aes-256-cbc应该可以解决这个问题。。在

当要加密的消息长度与16个字符的倍数不匹配时,我为我的工作要点添加了一些修正。在

相关问题 更多 >