字符串一样,MD5后结果不匹配

如图
加密前明文比对
img

img
md5后进行比对

img

img
各位这个是什么情况,由于新学的PHP所以不太懂这个到底是怎么回事,js的md5方式没有问题,其他能跑通的接口是一模一样的。

你上面那$unsign与$_REQUEST['str']比
这里拿$newsign和$_REQUEST['sign']比
$newsign是$unsign在strtolower以后md5
具体要看$sign,也就是$_REQUEST['sign']是传来的什么
从$_REQUEST['str']到$_REQUEST['sign']有什么转变

可以都echo一下这些参数看一下具体的问题或与前端交流具体的传值

前后端都做了去空格处理,还是得到不相等的结果

你注释掉的那段代码中不是用的$_REQUEST['str']吗?

  1. js端的md5也是 tolower后的md5?
  2. echo $sign 看看前端是传的16位md5字符串,还是binary + base64?
    (debug 你的‘签名验证失败’那里,把 $sign, $newsign 分别看看值是啥,或者echo 出来)

md5次数不一样