I am trying move my JWT Auth from secret phrase to RS256
here is example code:
import fs from 'fs'
import jwt from 'jsonwebtoken'
const private_key = fs.readFileSync('private.key')
const public_key = fs.readFileSync('public.pem')
const token = jwt.sign({
some: 'payload'
}, private_key, { algorithm: 'RS256' })
const verified = jwt.verify(token, public_key)
Here is format of my public key:
-----BEGIN RSA PUBLIC KEY-----
MIIBCgKCAQEAyLVWMJHRJ0VRPiyhjvPJTwpgNkMd4jjvUxEfy54COanbrL+GeOVd
NB2YooopYzgJJZyVhHSD+GwyH7WTvsItwNkfMiZKmjUIEA9dIfcbmHNXtfXraiSh
aTSO7NIREGzGQjBfzRGNeWpR83P+ffE5H0gfi9FFJlvV8QSLSSXJNMXVFAga//fb
uT/CYLg29bzEBtNSdgTHNrbwSvYzGFDOHNChDelX6fp34JMhtb6UNh6cIqhURclK
reQHz2oDcBaXnCAHjvC8p/IoG8xV2Ws5gK6bVW7h0EP5XoaUVHVpjPv5TDFz+veR
/lkKdowQU74E5oyei1WzDXSTusCR9gKIcQIDAQAB
-----END RSA PUBLIC KEY-----
And I am getting following error:
JsonWebTokenError: invalid algorithm
When I try to verify on jwt.io token is successfully signed.