JWT的rs256算法使用openssl生成rsa的密钥和公钥

原因

如果想让jwt使用rs256算法来验证token,那么我们必须要生成一个rsa密钥对。签发token时使用私钥,验证token时使用公钥。

1.生成私钥

openssl genrsa -out private.key

2.根据私钥生成公钥

openssl rsa -in private.key -pubout -outform PEM -out public.pem

3.nodejs中使用实例

nodejs读入私钥和公钥

const fs = require('fs')
const privateKey = fs.readFileSync('./private.key')
const publicKey = fs.readFileSync('./public.pem')

签发token

jwt.sign(payload, privateKey, { algorithm: 'RS256' })

验证token

try {
  var decoded = jwt.verify(token, publicKey);
} catch(err) {
  // err
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容