我见过有人使用UUID进行身份验证 token 生成。但是,在RFC 4122中指出
我想知道在Java和.NET中使用哪种算法生成SessionId / AuthenticationToken。 UUID确实不适合具有超过平均安全需求的应用程序中的这些目的吗?
最佳答案
UUID
生成是随机的,但是带有不良熵的随机意味着您最终会容易猜出UUID
。如果您使用好的随机数生成器,则可以生成可用于 session 的UUID
。但是,要注意的是UUID
没有内置的防止重放,篡改,修复等操作,您必须自己处理(阅读:不应将UUID本身考虑在内有效的 session ID本身)。就是说,这是一个很好的代码片段,说明如何使用UUID
生成安全的python
:
Unique session id in python