美文网首页
Json web token

Json web token

作者: CAICAI0 | 来源:发表于2018-04-27 15:11 被阅读27次

用户登录后的凭证大多都用JWT(Json Web Token)下面用Node.js实现签名和验签。

var jwt = require('jsonwebtoken');
var fs = require('fs');

var cert = fs.readFileSync('rsa_private_key.pem');
var token = jwt.sign({userId:'123123',date:12313123},cert,{algorithm:'RS256'});

console.log(token);

var pubCert = fs.readFileSync('rsa_public_key.pem');
jwt.verify(token,pubCert,{algorithms:['RS256']},function (err,payload){
    console.log(err,payload);
});

生成pem 类型的秘钥对命令如下

#先生成私钥
openssl genrsa -out rsa_private_key.pem 4096
#格式换成pkcs8
openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt
#生成对应的公钥
openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

最主要的就是私钥签名,公钥验签的基本思想。
脚本运行结果

null { userId: '123123', date: 12313123, iat: 1524814012 }

其中iat 是签名的时间戳,所以如果没有其他特殊必要不用在验证信息里面显式添加签名时间。

相关文章

  • JSON Web Token

    JSON Web Token (JWT)是一种基于 token 的认证方案。 JSON Web Token 的结构...

  • JSON Web Token

    What is JSON Web Token? JSON Web Token (JWT)是一个开放标准(RFC 7...

  • OAuth2和JWT学习资源记录

    八幅漫画理解使用JSON Web Token设计单点登录系统JSON Web Token - 在Web应用间安全地...

  • JWT 概述与代码实现

    一、什么是JSON Web Token? JSON Web Token(JWT)是一个开放标准(RFC7519),...

  • golang之JWT

    什么是JSON Web Token? JSON Web Token(JWT)是一个开放标准(RFC 7519[ht...

  • JWT简介

    JSON Web Token (JWT) 参考资料:Introduction to JSON Web Tokens...

  • 认识JWT[转载]

    1. JSON Web Token是什么 JSON Web Token (JWT)是一个开放标准(RFC 7519...

  • 认识JWT(转)

    1. JSON Web Token是什么 JSON Web Token (JWT)是一个开放标准(RFC 7519...

  • 认识JWT

    1. JSON Web Token是什么 JSON Web Token (JWT)是一个开放标准(RFC 7519...

  • 浅析JWT

    1.JWT(JSON Web Token) JSON Web Token (缩写JWT) 是目前最流行的跨域认证解...

网友评论

      本文标题:Json web token

      本文链接:https://www.haomeiwen.com/subject/btnblftx.html