php – 从/ dev / urandom转换随机值
发布时间:2020-12-13 17:40:01 所属栏目:PHP教程 来源:网络整理
导读:正如 comments of mt_rand() 中提到的那样,安全性很弱,我们应该使用/ dev / urandom.我的问题是,从urandom我得到一个二进制字符串. 如何将此二进制字符串转换为0-9a-zA-Z? 看起来像base_convert()在这里不起作用. 解决方法 仅供记录全功能: function rando
正如
comments of
mt_rand() 中提到的那样,安全性很弱,我们应该使用/ dev / urandom.我的问题是,从urandom我得到一个二进制字符串.
如何将此二进制字符串转换为0-9a-zA-Z? 看起来像base_convert()在这里不起作用. 解决方法
仅供记录全功能:
function randomFromDev($len) { $fp = @fopen('/dev/urandom','rb'); $result = ''; if ($fp !== FALSE) { $result .= @fread($fp,$len); @fclose($fp); } else { trigger_error('Can not open /dev/urandom.'); } // convert from binary to string $result = base64_encode($result); // remove none url chars $result = strtr($result,'+/','-_'); // Remove = from the end $result = str_replace('=',' ',$result); return $result; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |