Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP密码进行加密_Php - Fatal编程技术网

使用PHP密码进行加密

使用PHP密码进行加密,php,Php,我在使用PHP加密时遇到了一个问题 以下是我的代码: echo $ret = crypt('Dave@123','$2y$10$XLLl50bLyTWfjcvCAxwGRu/px2Q.LXN0fHpD1KN2CQCMx/tpL1V62'); 1) 在PHP版本5.4.22中使用crypt时 结果是: $2y$10$XLLl50bLyTWfjcvCAxwGRu/px2Q.LXN0fHpD1KN2CQCMx/tpL1V62 2) 当与PHP版本5.2.17一起使用时,结果 $25nFTQHt

我在使用PHP加密时遇到了一个问题

以下是我的代码:

echo $ret = crypt('Dave@123','$2y$10$XLLl50bLyTWfjcvCAxwGRu/px2Q.LXN0fHpD1KN2CQCMx/tpL1V62');
1) 在PHP版本5.4.22中使用crypt时 结果是:

 $2y$10$XLLl50bLyTWfjcvCAxwGRu/px2Q.LXN0fHpD1KN2CQCMx/tpL1V62
2) 当与PHP版本5.2.17一起使用时,结果

 $25nFTQHtfjVg

我想要与1相同的结果。

问题是
2y
河豚前缀。它是在PHP5.3.7中出现安全问题之后引入的,因此PHP5.2不知道它,看到一个无效的
$salt
,并生成一个无效的散列


PHP5.2中的等价物是
2a
,但它可能会受到上述安全问题的影响(我没有检查)。我知道他们在5.3.7上引入了更新$2y$河豚模式。因此,在PHP5.2.17中,您可能会得到DES。散列的类型由您提供的salt决定。

您是否知道1)的第一个结果显示了crypt函数的第二个输入?我不想将输入作为输出返回。@Samuel您知道这是预期行为吗?PHP5.2是live的结束。你其实不想那样-1:只想要某样东西不符合编程问题的条件。编辑:你真丢脸(:):比存在数月并有答案的重复票还要多(!)。可能是重复票