首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为10天后过期的php文件生成密钥。密钥过期后,其他用户无法执行该api

如何为10天后过期的php文件生成密钥。密钥过期后,其他用户无法执行该api
EN

Stack Overflow用户
提问于 2019-05-16 17:17:21
回答 1查看 226关注 0票数 0

我想生成一个密钥,从生成之日起10天内有效。这样任何拥有密钥的人都可以运行api 10天。我希望这是纯粹的php,没有会话或cookie应该使用。

我已尝试将密钥和日期存储在以制表符分隔的文件中。但我想要的东西,它不需要文件也用于存储。所有这些都可以只使用php来完成。

我希望任何拥有这个密钥的人都可以将它作为URI参数传递,比如http:www.example.com/ key =abcdqwerty,这个密钥的有效期应该只有10天。

EN

回答 1

Stack Overflow用户

发布于 2019-05-16 17:29:30

一种便宜的方法是md5日期,并将其用作密钥。

然后验证过去10天的循环,并将它们设置为md5,看看它们是否匹配。

这意味着您不需要保存密钥,并且对大多数用户来说都是安全的。

只有最书呆子的书呆子才会试着找出关键是什么,以及它是否能被破解。

代码语言:javascript
复制
// Create key
$key = md5("2019-05-16");
//$key = "5b6ed05ac59c0cae26957e39aceaa204";

//Validate
for($i=0; $i <= 10; $i++){
    if($key == md5(date("Y-m-d", strtotime("-" . $i . " days")))){
        echo "valid";
    }
}

一个有效而另一个无效的工作代码,请参见只有一个有效字符串的输出。

https://3v4l.org/Is4oT

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56165032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档