生成唯一键

use*_*855 22 php

生成一个无法轻易猜到的唯一密钥的最佳方法是什么?

我想为帐户激活和引用目的创建一个唯一的密钥,其中包括一个校验和,以帮助防止用户轻易猜测其他用户激活或引用密钥.

另外,在PHP中是否可以创建自己的会话密钥?如果是这样,你会如何使这个独特?

任何帮助是极大的赞赏.

Ali*_*guy 50

不要过度复杂化:

$key = md5(microtime().rand());
Run Code Online (Sandbox Code Playgroud)

  • 欢迎来到多线程Web服务器环境和多核处理器的世界. (16认同)
  • 这将使同时开始的会话/注册将获得相同的密钥。在难以调试的情况下可能会使事情变得过于复杂。 (2认同)

Dan*_*man 12

您可以使用uniqid生成唯一ID.查看UUID(通用唯一标识符)生成的PHP实现的注释.


Ami*_*shk 7

这是我在php中用于uniq键的内容:

$activation = md5(uniqid(rand(), true));
Run Code Online (Sandbox Code Playgroud)