MACVerifier verifier = new MACVerifier((OctetSequenceKey) jwk); verifiers.put(id, verifier);
public LemonJwsService(String secret) throws JOSEException { byte[] secretKey = secret.getBytes(); signer = new MACSigner(secret); verifier = new MACVerifier(secret); }
private static MACVerifier createMACVerifier(String sharedSecret) { try { return new MACVerifier(sharedSecret); } catch (JOSEException e) { throw new JwtMalformedSharedSecretException("Failed to create MAC verifier with the provided secret key", e); } } }
public JwtReader(String sharedSecret) { try { this.verifier = new MACVerifier(sharedSecret); } catch (JOSEException e) { throw new InvalidKeyException(e); } }
public static boolean verify(JWSObject jwsObject) throws JOSEException { JWSVerifier verifier = new MACVerifier(JWT.SHARED_SECRET); return jwsObject.verify(verifier); }
private MACVerifier buildJWSVerifier() { try { return new MACVerifier(JWTSecrets.DEFAULT_SECRET); } catch (JOSEException e) { e.printStackTrace(); return null; } }
@Override public boolean verify(final SignedJWT jwt) throws JOSEException { init(); final JWSVerifier verifier = new MACVerifier(this.secret); return jwt.verify(verifier); }
private JWSVerifier getVerifier() throws JOSEException, KrbException { if (verifyKey instanceof RSAPublicKey) { return new RSASSAVerifier((RSAPublicKey) verifyKey); } else if (verifyKey instanceof ECPublicKey) { ECPublicKey ecPublicKey = (ECPublicKey) verifyKey; return new ECDSAVerifier(ecPublicKey); } else if (verifyKey instanceof byte[]) { return new MACVerifier((byte[]) verifyKey); } throw new KrbException("An unknown verify key was specified"); }
/** * Validates a JWT token. * @param secret secret used for generating the token * @param jwt token to validate * @return true if token is valid */ public static boolean isValidJWToken(String secret, SignedJWT jwt) { try { if (secret != null && jwt != null) { JWSVerifier verifier = new MACVerifier(secret); if (jwt.verify(verifier)) { Date referenceTime = new Date(); JWTClaimsSet claims = jwt.getJWTClaimsSet(); Date expirationTime = claims.getExpirationTime(); Date notBeforeTime = claims.getNotBeforeTime(); boolean expired = expirationTime == null || expirationTime.before(referenceTime); boolean notYetValid = notBeforeTime == null || notBeforeTime.after(referenceTime); return !(expired || notYetValid); } } } catch (JOSEException e) { logger.warn(null, e); } catch (ParseException ex) { logger.warn(null, ex); } return false; }
private JWSVerifier getVerifier() throws JOSEException, KrbException { if (verifyKey instanceof RSAPublicKey) { return new RSASSAVerifier((RSAPublicKey) verifyKey); } else if (verifyKey instanceof ECPublicKey) { ECPublicKey ecPublicKey = (ECPublicKey) verifyKey; return new ECDSAVerifier(ecPublicKey); } else if (verifyKey instanceof byte[]) { return new MACVerifier((byte[]) verifyKey); } throw new KrbException("An unknown verify key was specified"); }
/** * Validates a JWT token. * @param secret secret used for generating the token * @param jwt token to validate * @return true if token is valid */ public static boolean isValidJWToken(String secret, SignedJWT jwt) { try { if (secret != null && jwt != null) { JWSVerifier verifier = new MACVerifier(secret); if (jwt.verify(verifier)) { Date referenceTime = new Date(); JWTClaimsSet claims = jwt.getJWTClaimsSet(); Date expirationTime = claims.getExpirationTime(); Date notBeforeTime = claims.getNotBeforeTime(); boolean expired = expirationTime == null || expirationTime.before(referenceTime); boolean notYetValid = notBeforeTime == null || notBeforeTime.after(referenceTime); return !(expired || notYetValid); } } } catch (JOSEException e) { logger.warn(null, e); } catch (ParseException ex) { logger.warn(null, ex); } return false; }
public IdentityReference deserialize(String token) throws Exception { String sToken = new String(Base64.getDecoder().decode(token)); // Parse the JWE string JWEObject jweObject = JWEObject.parse(sToken); // Decrypt with shared key jweObject.decrypt(new DirectDecrypter(secretKey.getEncoded())); // Extract payload SignedJWT signedJWT = jweObject.getPayload().toSignedJWT(); // Check the HMAC signedJWT.verify(new MACVerifier(secretKey.getEncoded())); // Retrieve the JWT claims return new IdentityReference(signedJWT.getJWTClaimsSet().getIssuer(), signedJWT.getJWTClaimsSet().getSubject()); } }
public static JWTClaimsSet deserialize(String serializedToken, byte[] key) { try { JWEObject jweObject = JWEObject.parse(serializedToken); jweObject.decrypt(new DirectDecrypter(key)); SignedJWT signedJWT = jweObject.getPayload().toSignedJWT(); signedJWT.verify(new MACVerifier(key)); JWTClaimsSet jwtClaimsSet = signedJWT.getJWTClaimsSet(); return jwtClaimsSet; } catch (ParseException e) { throw new IllegalStateException(e); } catch (JOSEException e) { throw new IllegalStateException(e); } } }
public IdentityReference deserialize(String token) throws Exception { String sToken = new String(Base64.getDecoder().decode(token)); // Parse the JWE string JWEObject jweObject = JWEObject.parse(sToken); // Decrypt with shared key jweObject.decrypt(new DirectDecrypter(secretKey.getEncoded())); // Extract payload SignedJWT signedJWT = jweObject.getPayload().toSignedJWT(); // Check the HMAC signedJWT.verify(new MACVerifier(secretKey.getEncoded())); // Retrieve the JWT claims return new IdentityReference(signedJWT.getJWTClaimsSet().getIssuer(), signedJWT.getJWTClaimsSet().getSubject()); } }
verifier = new MACVerifier(publicKey.getEncoded());
verifier = new MACVerifier(macKey);