Php 正确的解密返回空字符串
我正在尝试解密我存储在数据库中的一些数据 有人能告诉我我做错了什么吗 我已经检查并重新检查了我传递的所有值,这些值似乎与我用于加密的值相同 此外,每当我传入一个不正确的键时,它都会产生输出,但每当我传入正确的键时,它都会返回一个空字符串 有趣的是,尽管firebug将其显示为空字符串,但javascript并不将其视为空字符串 我的加密代码:Php 正确的解密返回空字符串,php,encryption,mcrypt,Php,Encryption,Mcrypt,我正在尝试解密我存储在数据库中的一些数据 有人能告诉我我做错了什么吗 我已经检查并重新检查了我传递的所有值,这些值似乎与我用于加密的值相同 此外,每当我传入一个不正确的键时,它都会产生输出,但每当我传入正确的键时,它都会返回一个空字符串 有趣的是,尽管firebug将其显示为空字符串,但javascript并不将其视为空字符串 我的加密代码: $iv = hash('sha256',$_POST['ben'].$_POST['assetName'],true); $secretKeyFromAn
$iv = hash('sha256',$_POST['ben'].$_POST['assetName'],true);
$secretKeyFromAnswer = hash('sha256',$_POST['answer'],true);
$encedUsername = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $secretKeyFromAnswer , $_POST['username'], MCRYPT_MODE_CBC, $iv));
我的解密代码:
$hashKey = hash('sha256',$_POST['key'],true);
$iv = hash('sha256',$_POST['ben'].$_POST['assetName'],true);
$theData = base64_decode($userToDec);
$decUsername = rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $hashKey, $theData , MCRYPT_MODE_CBC, $iv),'\0');
“您确定没有在空字符串上运行加密吗?”--
你就是那个人!在我的jquery代码中有一个输入错误,实际上在加密之前读取了一个空字符串!如果你愿意,请给出答案,这样我就可以接受,你就可以得到你的代表!干杯
你确定你不是在空字符串上运行加密吗?你就是那个人!在我的jquery代码中有一个输入错误,实际上在加密之前读取了一个空字符串!如果你愿意,请给出答案,这样我就可以接受,你就可以得到你的代表!CheersI将@AtkinsSJ left的评论变成了一个社区维基答案,这样这个问题就不会永远停留在“未回答”和/或“没有被接受的答案”的状态。