Psy*_*gno 2 php authentication codeigniter token
我正在 CI3 中构建登录/注册系统,但我有疑问。而不是使用:
$key=md5(uniqid());
Run Code Online (Sandbox Code Playgroud)
用于发送电子邮件激活密钥...我可以使用其他方法吗?我不知道,使用数据库(mysql)?可能用SHA1散列?我不想要最安全的方式,只是一个不像 uniqid() 那样虚假的解决方案。因为我知道 uniqid() 生成的 id 并不是真正随机的,所以没有理由散列到 md5 只是......愚蠢。
先感谢您。
实际上电子邮件验证/密码生成应该是
这意味着如果你发送md5发生的事情,用户得到的字长为 32。这是非常糟糕的迹象。
MD5 例子
8b1a9953c4611296a827abf8c47804d7
Run Code Online (Sandbox Code Playgroud)
在 codeigniter 中有一个帮助调用String。用那个。
有5种不同的选择来挑选你
在控制器中加载助手
$this->load->helper('string');
Run Code Online (Sandbox Code Playgroud)
然后只需添加这个
random_string([$type [, $len]]) ;
Run Code Online (Sandbox Code Playgroud)
例子 :
random_string('alnum', 8);
Run Code Online (Sandbox Code Playgroud)
假设:在这些场景中长度为 8。
α
这将只打印带有大写示例的字符串
AKTHDOGK
名册
这将打印带有 UPPER 和 LOWER Case示例的字符串
JdKsPeeU
基本的
这将使用mt_rand()in php打印随机数。
例子 12756079
数字
这将打印数字字符串。
示例 01234567 (未使用。所以不确定)
没有零
这将打印和编号。但是没有零
示例 12345678 (未使用。所以不确定)
仅供参考:我从未使用过numeric和nozero。所以我不知道这个例子。但是我使用了所有其他功能。
| 归档时间: |
|
| 查看次数: |
5950 次 |
| 最近记录: |