码迷,mamicode.com
首页 > 其他好文 > 详细

[JWT] JWT Signature With RS256 - Learn The Advantages Compared to HS256

时间:2017-09-22 19:14:47      阅读:348      评论:0      收藏:0      [点我收藏+]

标签:ati   const   and   cli   name   create   ack   cci   compare   

The advantage of RS256 over HS256 is RS256 no longer need to share the secret key between client and server side.

To create a token, we need to private key, which should be kept safe. We can use third-party server such as Auth0 to generate private-public key paris. 

The public key is used only to validate JWT token on the server, and cannot use public key to create a JWT token, so even the server is hacked, hacker still cannot use the information create a token to access the data.

 

Create a token:

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


var privateKey = fs.readFileSync(‘./demos/private.key‘);

var payload = {
  name: ‘Alice‘
};


var token = jwt.sign(payload, privateKey, {
    algorithm: ‘RS256‘,
    expiresIn: 120,
    subject: "1"
});


console.log(‘RSA 256 JWT‘, token);

 

Validate a token:

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


// verify an existing JWT
var existingToken = ‘eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiQWxpY2UiLCJpYXQiOjE1MDI5MDMxNTcsImV4cCI6MTUwMjkwMzI3Nywic3ViIjoiMSJ9.KQJ-f3r4TNCLVrox1JaL5pxQAM6vSw4CNKj1lCf3HDWXGdIHW5rgD5odKpNBjrkbl1smjEL_ClLnFwG_iGDPKvu2bqktcrbXwi1-XUrY-jDKLkpoEHL2C9tGYnyDRl6Pg1SP97Hl-VWkGNyekYMerL8vh0RwgcK7y8UsuA33WgnP1DtfhKIghwcd493ARN4nBvmMJ11Zk35c7FBIN2w4Xl4ny8RU4l0_xy5DBF3JAKV1jilTHOKEvsrY8Ry3qRKaxxR6-QE_pfGOte3BRlt6544BUul1yI662tVAn1R28KXKnwCGAwo_HZ1kC-OrxmsjoXI4HDuHG2k5eRX-QC_W4Q‘;


var publicKey = fs.readFileSync(‘./demos/public.key‘);


console.log("verifying");

const verify = jwt.verify(existingToken, publicKey);



console.log("Decoded JWT:", verify);

 

[JWT] JWT Signature With RS256 - Learn The Advantages Compared to HS256

标签:ati   const   and   cli   name   create   ack   cci   compare   

原文地址:http://www.cnblogs.com/Answer1215/p/7576202.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!