首页 > Web开发 > 详细

JSON Web Tokens简单学习

时间:2018-08-21 14:40:33      阅读:172      评论:0      收藏:0      [点我收藏+]

 

 

JWT用于加密生成安全认证的令牌,存储登录验证成功的部分用户信息

  一、安装JWT

    技术分享图片

 

  二、加密 解密 代码

  

 /*存储在加密字符串的信息*/
            var payload = new Dictionary<string, object> {
                { "UserName","Test"},
                { "Sex","Boy"}
            };

            //密钥
            var secretKey = new byte[] { 164, 60, 194, 0, 161, 41, 38, 130, 89, 141, 164, 45, 170, 159, 209, 69, 137, 243, 216, 191, 131, 47, 250, 32, 107, 231, 117, 37, 158, 225, 234 };
            
            string token = Jose.JWT.Encode(payload, secretKey, JwsAlgorithm.HS256);

            Console.WriteLine("加密得到的Token:"+token);

            string json = JWT.Decode(token, secretKey);
            Console.WriteLine("解密得到的字符串:" + json);
            Console.ReadLine();

运行结果:

技术分享图片

加密后的Token分为三部分 :Header 头部、Payload 负载、Signature 签名

  1、头部存储的token 类型和采用的加密算法,使用的是Base64Url 编码

  技术分享图片

  2、负载存储的是用户信息、标识,使用的是Base64Url 编码。

  3、签名使用header中指定签名算法进行签名,签名用于消息的发送者以及消息没有经过篡改。

 

总结:JWT的加密个人认为不够安全,头部和负载使用的是Base64Url 编码。

  

 

JSON Web Tokens简单学习

原文:https://www.cnblogs.com/tangchun/p/9510933.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!