Class JwtUtil

java.lang.Object
org.summerboot.jexpress.security.JwtUtil

public class JwtUtil extends Object
Author:
Changski Tie Zheng Zhang 张铁铮, 魏泽北, 杜旺财, 杜富贵
  • Constructor Details

    • JwtUtil

      public JwtUtil()
  • Method Details

    • buildSigningKey

      public static String buildSigningKey(io.jsonwebtoken.security.MacAlgorithm signatureAlgorithm)
    • parseSigningKey

      public static Key parseSigningKey(String encodedKey)
    • buildSigningParsingKeyPair

      public static KeyPair buildSigningParsingKeyPair(io.jsonwebtoken.security.SignatureAlgorithm signatureAlgorithm)
      1. generate keypair: openssl genrsa -des3 -out keypair.pem 4096 2. export public key: openssl rsa -in keypair.pem -outform PEM -pubout -out public.pem 3. export private key: openssl rsa -in keypair.pem -out private_unencrypted.pem -outform PEM 4. encrypt and convert private key from PKCS#1 to PKCS#8: openssl pkcs8 -topk8 -inform PEM -outform PEM -in private_unencrypted.pem -out private.pem
      Parameters:
      signatureAlgorithm -
      Returns:
    • createJWT

      public static String createJWT(String keyAlgorithm, String jwtSigningKey, int ttlSeconds, String id, String issuer, String subject, Collection<String> audience)
    • createJWT

      public static String createJWT(String keyAlgorithm, String jwtSigningKey, io.jsonwebtoken.JwtBuilder builder, Duration ttl)
    • createJWT

      public static String createJWT(String keyAlgorithm, byte[] jwtSigningKey, int ttlSeconds, String id, String issuer, String subject, Collection<String> audience)
    • createJWT

      public static String createJWT(String keyAlgorithm, byte[] jwtSigningKey, io.jsonwebtoken.JwtBuilder builder, Duration ttl)
    • setJwtExpireTime

      public static void setJwtExpireTime(io.jsonwebtoken.JwtBuilder builder, Duration ttl)
    • createJWT

      public static String createJWT(Key privateKey, int ttlSeconds, String id, String issuer, String subject, Collection<String> audience)
    • createJWT

      public static String createJWT(Key privateKey, io.jsonwebtoken.JwtBuilder builder, Duration ttl)
    • parseJWT

      public static io.jsonwebtoken.Jws<io.jsonwebtoken.Claims> parseJWT(Key verifyKey, String token)
    • parseJWT

      public static io.jsonwebtoken.Jws<io.jsonwebtoken.Claims> parseJWT(SecretKey jwtRootSigningKey, String token)
    • parseJWT

      public static io.jsonwebtoken.Jws<io.jsonwebtoken.Claims> parseJWT(PublicKey publicKey, String token)
    • parseJWT

      public static io.jsonwebtoken.Jws<io.jsonwebtoken.Claims> parseJWT(io.jsonwebtoken.JwtParser parser, String token)