首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用Java1.4验证JWT签名?

如何使用Java1.4验证JWT签名?
EN

Stack Overflow用户
提问于 2018-09-27 05:09:53
回答 1查看 0关注 0票数 0

我正在研究基于JDK 1.4的遗留IBM WCS电子商务应用程序

我要求通过调用外部JSON Web密钥集(JWKS)(/。well-known / jwks.json)端点来验证JWT令牌,以检索公钥并使用验证令牌签名并检索声明。

下面是使用Java 8的代码,它根据JSON Web Key中的'n'和'e'值提供RSA公钥。

代码语言:javascript
复制
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来验证签名,

代码语言:javascript
复制
Claims claims = Jwts.parser()
                .setSigningKey(getPublicKey(decodeToken(token)))
                .parseClaimsJws(token)
                .getBody();

是否有可能使用Java 1.4(或)至少使用Java 5来实现相同的上述2个功能?

EN

回答 1

Stack Overflow用户

发布于 2018-09-27 14:43:02

我也在寻找答案,找到解决办法了吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100006163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档