写一个 base64_encode + salt 加密,解密的时候多了几个字符,求教问题在哪

2019-06-06 14:46:03 +08:00
 zorichen
<?php

function md5_salt($key)
{
$salt = 'em9yaWNoZW4=';
return base64_encode($key.$salt);
}


function demd5_salt($key)
{
$salt = 'em9yaWNoZW4=';

$key = substr($key,0,strlen($key)-strlen($salt));
return base64_decode($key);
}


$str = '123456';

$str1 = md5_salt($str);
$str2 = demd5_salt($str1);

echo $str1 . "</br>";
echo $str2;
?>


输出是

MTIzNDU2ZW05eWFXTm9aVzQ9
123456em9
4023 次点击
所在节点    PHP
5 条回复
zorichen
2019-06-06 14:47:57 +08:00
问了一个蠢问题。 不好意思。 找到原因了。
j0hnj
2019-06-06 16:08:24 +08:00
base64 只是编码,不是加密,你这加盐也没有任何意义
king2014
2019-06-06 16:19:17 +08:00
解密的时候先 base64_decode 再截取返回吧
还有你这加密意义是啥
jiejiss
2019-06-06 18:10:40 +08:00
这盐一点都不咸啊
Evilk
2019-06-10 18:09:32 +08:00
base64 不是加密

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/571515

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX