16 package org.openkilda.floodlight.utils;
21 import com.auth0.jwt.JWT;
22 import com.auth0.jwt.JWTCreator;
23 import com.auth0.jwt.JWTVerifier;
24 import com.auth0.jwt.algorithms.Algorithm;
25 import com.auth0.jwt.exceptions.JWTVerificationException;
26 import com.auth0.jwt.interfaces.DecodedJWT;
28 import java.io.UnsupportedEncodingException;
29 import java.nio.charset.Charset;
32 private final Algorithm signAlgorithm;
33 private final JWTVerifier signVerification;
37 signAlgorithm = Algorithm.HMAC256(secret);
38 signVerification = JWT.require(signAlgorithm).build();
39 }
catch (UnsupportedEncodingException e) {
44 public byte[]
sign(JWTCreator.Builder token) {
45 String payload = token.sign(signAlgorithm);
46 return payload.getBytes(Charset.forName(
"UTF-8"));
53 String payloadStr =
new String(payload, Charset.forName(
"UTF-8"));
56 token = signVerification.verify(payloadStr);
57 }
catch (JWTVerificationException e) {
byte [] sign(JWTCreator.Builder token)
DataSignature(String secret)
DecodedJWT verify(byte[] payload)