我正在研究基于JDK 1.4的遗留IBM WCS电子商务应用程序
我要求通过调用外部JSON Web密钥集(JWKS)(/。well-known / jwks.json)端点来验证JWT令牌,以检索公钥并使用验证令牌签名并检索声明。
下面是使用Java 8的代码,它根据JSON Web Key中的'n'和'e'值提供RSA公钥。
public PublicKey getPublicKey() throws InvalidPublicKeyException {
try {
KeyFactory kf = KeyFactory.getInstance("RSA");
BigInteger modulus = new BigInteger(1,Base64.decodeBase64(stringValue("n")));
BigInteger exponent = new BigInteger(1,
Base64.decodeBase64(stringValue("e")));
return kf.generatePublic(new RSAPublicKeySpec(modulus, exponent));
} catch (InvalidKeySpecException e) {
......
} catch (NoSuchAlgorithmException e) {
......
}
}
后来我用这个KEY来验证签名,
Claims claims = Jwts.parser()
.setSigningKey(getPublicKey(decodeToken(token)))
.parseClaimsJws(token)
.getBody();
是否有可能使用Java 1.4(或)至少使用Java 5来实现相同的上述2个功能?
发布于 2018-09-27 14:43:02
我也在寻找答案,找到解决办法了吗?
https://stackoverflow.com/questions/-100006163
复制相似问题