最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

php的token怎么生成的

来源:懂视网 责编:小采 时间:2020-11-27 14:42:17
文档

php的token怎么生成的

php的token怎么生成的:前后端分离或者为了支持多个web应用,那么原来的cookies或者session在使用上就会有很大的问题cookie和session认证需要在同一主域名下才可以进行认证(目前可以把session存储在redis内进行解决)。解决方案oauth2 和 jwt (推荐学习:PHP视频教程)
推荐度:
导读php的token怎么生成的:前后端分离或者为了支持多个web应用,那么原来的cookies或者session在使用上就会有很大的问题cookie和session认证需要在同一主域名下才可以进行认证(目前可以把session存储在redis内进行解决)。解决方案oauth2 和 jwt (推荐学习:PHP视频教程)
前后端分离或者为了支持多个web应用,那么原来的cookies或者session在使用上就会有很大的问题

cookie和session认证需要在同一主域名下才可以进行认证(目前可以把session存储在redis内进行解决)。

解决方案

oauth2 和 jwt (推荐学习:PHP视频教程)

jwt :是一种安全标准。基本思路就是用户提供用户名和密码给认证服务器,服务器验证用户提交信息信息的合法性;如果验证成功,会产生并返回一个token(令牌)

OAuth2 :是一个安全的授权框架。它详细描述了系统中不同角色、用户、服务前端应用(比如API),以及客户端(比如网站或移动APP)之间怎么实现相互认证。(这里采用jwt,这种JSON Web Token 这种方式进行认证)

生成方法

头部:加密类型

说明:消息内容

key:一个随机码用来加密

上面三部分使用,连接起来,然后使用hs256进行加密,生成tokent

详细生成方法

1). 头部通常由两部分组成:令牌的类型(即JWT)和所使用的加密算法(如:SHA256或者RSA)

{
 "alg": "HS256",
 "typ": "JWT"
}

然后,这个json被Base64Url编码,成为第一部分

2). 有效载荷是声明。声明是关于实体的部分。

{
 "exp": "1525785339",
 "sub": "1234567890",
 "name": "John Doe",
 "admin": true
}

然后将有效载荷Base64Url进行编码,成为第二部分
(PS:此信息尽管受到篡改保护,但是任何人都可以阅读。除非加密,否则不要将重要信息放在里面)

3). 使用一个加密key

4). 签名,需要使用编码后的第一部分,编码后的第二部分,然后一个关键的key。采用第一部分里的加密算法进行签名

HMACSHA256(
 base64UrlEncode(header) + "." + base64UrlEncode(payload),
 key
)

该签名用于验证消息是否有篡改。
(PHP使用crypt方法进行加密。注意:SHA-256用于防篡改,AES-256用于加密两个概念不一样)

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

php的token怎么生成的

php的token怎么生成的:前后端分离或者为了支持多个web应用,那么原来的cookies或者session在使用上就会有很大的问题cookie和session认证需要在同一主域名下才可以进行认证(目前可以把session存储在redis内进行解决)。解决方案oauth2 和 jwt (推荐学习:PHP视频教程)
推荐度:
标签: 生成 php 生成的
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top