但是,另一个java库jjwt库声称支持该功能.但是,文档没有说明如何在jjwt中使用自己的公钥/私钥对.
我创建了私钥/公钥对,并在node-jsonwebtoken节点中成功使用了它:
var key = fs.readFileSync('private.key');
var pem = fs.readFileSync('public.pem');
var header = {...};
var payload = {...};
header.algorithm = "RS256";
var message = jsonwebtoken.sign(payload, key, header);
var decoded = jsonwebtoken.verify(message, pem, {algorithm: "RS256"});
但我发现用jjwt在Java中没有办法做同样的事情.
任何人都有一个工作示例,说明如何在jjwt中使用Java中的JWT私钥/公钥?
最佳答案 这是我所遵循的
创建密钥库
keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks
-storepass password -validity 360 -keysize 2048
您可以从现有私钥和公钥创建密钥库.谷歌它如何做到这一点.
加载密钥库
KeyStore ks = KeyStore.getInstance("JKS");
InputStream readStream = // Use file stream to load from fi