JWT(json web token原理介绍) 1. JWT构成 JWT(json web token)由三段分别用base64 URL算法加密构成,用.分割。 JWT头 (Header) + js // 表示加密协议和类型,以下为默认值 { "alg": "HS256", "typ": "JWT" } 有效载荷 (Payload) + js //JWT 规定了7个官方字段,供选用,也可以包含自定义内容 { iss (issuer):签发人 exp (expiration time):过期时间 sub (subject):主题 aud (audience):受众 nbf (Not Before):生效时间 iat (Issued At):签发时间 jti (JWT ID):编号 } // 默认情况下JWT是未加密的,任何人都可以解读其内容,因此不要构建隐私信息字段,存放保密信息,以防止信息泄露。 3. **签名哈希** HMACSHA256(base64UrlEncode(header) + "."+base64UrlEncode(payload),secret) // secret即盐值 ​ 2. JWT使用及验证 使用流程:前端请求后端获取令牌并保存在cookie或 localStorage,需要时在请求中附带,后端获取并验证。 前端一般使用如下协议头: 'Authorization': 'Bearer ' + token 后端验证流程:获取jwt按照生成方式重新生成并对比。 jwt = request.……

Continue reading