php会话ID有多独特?我从各种各样的事情中得到了印象,我不应该依赖两个用户永远不会得到相同的sessionid。这不是GUID吗?
3 回答
杨__羊羊
TA贡献1943条经验 获得超7个赞
Session_id确实可以复制,但概率非常低。如果您的网站流量公平,可能会在您的网站生活中发生一次,并且只会让一个用户厌倦一个会话。
除非您希望为银行业建立一个非常高流量的网站或服务,否则不值得关注。
心有法竹
TA贡献1866条经验 获得超5个赞
它出货时并不是很独特。在默认配置中,它是各种事物的散列的结果,包括gettimeofday的结果(这不是非常独特),但是如果你担心,你应该将它配置为从/ dev / urandom中绘制一些熵,就像这样
ini_set("session.entropy_file", "/dev/urandom");
ini_set("session.entropy_length", "512");
在他们正在使用的实际算法的代码中搜索“php_session_create_id” 。
编辑添加:有一个由pid播种的DFA随机数生成器,与usecs中的时间混合。从安全角度来看,这不是一个坚定的唯一性条件。使用上面的熵配置。
更新:
从PHP 5.4.0开始,session.entropy_file默认为/ dev / urandom或/ dev / arandom(如果可用)。在PHP 5.3.0中,该指令默认为空。
- 3 回答
- 0 关注
- 391 浏览
添加回答
举报
0/150
提交
取消