我有以下PHP脚本:
<?php
$chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV0123456789~`!@#$%^&*()_+=-[]{}:;/.,<>?";
$salt = str_shuffle($chars);
$salt = substr($salt, 0, 64);s
echo $salt;
?>
有人能告诉我它有多安全吗?它不应该是安全的,因为它会生成一个完全随机的64个字符串?然而,当我测试它时,95%的时间它会生成一个64个字符串,但有时它不会。例如,它生成zk;~+1`9t4s7mg[e!JRPI(ob
,该字符串仅为24个字符。另一次,它生成了一个11个字符串。有人能告诉我这是为什么吗?
转移到它的安全性,它到底有多安全?如果它不够安全,请告诉我有什么选择。
提前感谢
发布于 2014-07-19 16:51:45
例如,它生成了zk;~+1`9t4s7mg[e!JRPI(ob,它只是一个24个字符串)。另一次,它生成了一个11个字符串。有人能告诉我这是为什么吗?
可能不会。这仅仅是因为使用<
字符和浏览器认为这是标签的开始。例如,如果生成了字符串
!KyR<I)/$NPjfd-U*+vpmA9zh2;7#_}JSr(@tH4kFa:[?`l6TD~&w,8LOE5.3Qqc
它将在浏览器中显示为!KyR
,但在源代码中,您将看到整个字符串。(如果要显示它,请使用htmlspecialchars()
函数)
有人能告诉我它有多安全吗?
我的问题是,为什么不使用哈希为给定的密码自动创建salt呢?
https://stackoverflow.com/questions/24842332
复制相似问题