JWT( JSON Web Token)

参考  https://laravelacademy.org/post/9469.html

三部分组成,头部、载荷与签名

 

头部 把下面的基本信息base64 加密生成头部信息   

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

载荷 把下面的基本信息base64 加密生成载荷

{
    "sub": "1",       //该 JWT 的签发者
    "iss": "http://host/group/invite",
    "iat": 1451888119,    //在什么时候签发的 token
    "exp": 1454516119,    //token 什么时候过期
    "nbf": 1451888119,    //token 在此时间之前不能被接收处理
    "jti": "37c107e4609ddbcc9c096ea5ee76c667",  //token 在此时间之前不能被接收处理
    "group_id": 1,
    "invite_user": "A"
}
签名 头部.载荷 使用 . 进行拼接(头部在前), 得到用于签名的字符串,然后使用签名方法对用于签名的字符串进行签名.
最后把用于签名的字符串和签名使用 . 进行拼接(签名在后), 即可得到 一个完整的 token。但是,此时的 
token 没有带上签发者特有的标志,是可以被伪造的,至于如何解决这个问题我们下面 jwt 具体实现会讲。




posted @ 2019-03-18 15:27  圆明猿  阅读(258)  评论(0编辑  收藏  举报