java jwt token 使用_基于Java验证jwt token代码实例

这篇文章主要介绍了基于Java验证jwt token代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

How to load public certificate from pem file..?地址

1.HS256对称加密

package jwt;

import java.io.FileInputStream;

import java.io.IOException;

import java.security.KeyFactory;

import java.security.PrivateKey;

import java.security.PublicKey;

import java.security.interfaces.RSAPrivateKey;

import java.security.interfaces.RSAPublicKey;

import java.security.spec.PKCS8EncodedKeySpec;

import java.security.spec.X509EncodedKeySpec;

import java.util.Base64;

import java.util.Date;

import java.util.Vector;

import java.util.Map;

import sun.misc.BASE64Decoder;

import com.auth0.jwt.JWT;

import com.auth0.jwt.algorithms.Algorithm;

import com.auth0.jwt.exceptions.JWTVerificationException;

import com.auth0.jwt.interfaces.Claim;

import com.auth0.jwt.interfaces.DecodedJWT;

public class JWTValidator {

private static String JWT_Type = "JWT";

protected boolean validated;

protected Object[] claims;

public JWTValidator() {

setValidated(false);

setClaims(null);

}

public String Generate(String secret, String issuer, String audience, String subject){

try {

Algorithm algorithm = Algorithm.HMAC256(secret); // HS256

String token = JWT.create()

.withIssuer(issuer)

.withAudience(audience)

.withSubject(subject)

.sign(algorithm);

System.out.println(token);

return token;

} catch (Exception exception){

//UTF-8 encoding not supported

return "";

}

}

public void Validate(String token, String secret, String issuer, String audience, String subject) {

DecodedJWT jwt = null;

setValidated(false);

if (token == null || secret == null || issuer == null || audience == null || subject == null)

return;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值