首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >随机字符串: php str_shuffle是否增加了熵

随机字符串: php str_shuffle是否增加了熵
EN

Stack Overflow用户
提问于 2014-02-14 17:35:39
回答 2查看 520关注 0票数 3

我使用以下命令生成随机字符串:

代码语言:javascript
运行
复制
 $characters = '0123456789QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm';  
$cl = strlen($characters) -1;
$id = '';
for ($p = 0; $p < $le; $p++) {N
    $id .= $characters[mt_rand(0, $cl)];
}

现在,如果我做str_shuffle($id),它会增加熵,也就是让字符串更随机吗?

EN

回答 2

Stack Overflow用户

发布于 2014-02-14 17:45:28

不是的。事实并非如此。

str_shuffle只是得到字符串的随机结果,所以它会给你另一个随机字符串,但不会更熵。

如果你正在寻找一个熵更大的字符串,你可以在$characters变量中添加特殊字符,或者得到比实际更大的$le。

票数 1
EN

Stack Overflow用户

发布于 2014-02-18 03:41:12

如果你想要密码熵,我可以推荐openssl_random_pseudo_bytes($length)或mcrypt_create_iv($length)吗?

对于自定义字符集,可以在base_convert()的PHP手册注释中查找binhex()和convBase()。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21775621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档