· 9 years ago · Jan 22, 2017, 03:30 PM
1try {
2 JsonObject header = new JsonObject();
3 header.addProperty("alg", "HS256");
4 header.addProperty("typ", "JWT");
5
6 JsonObject playload = new JsonObject();
7 playload.addProperty("iss", "pond");
8 playload.addProperty("sub", "pond");
9
10 String headerEncode = Base64.encodeToString(header.toString().getBytes(), Base64.URL_SAFE);
11 String playloadEncode = Base64.encodeToString(playload.toString().getBytes(), Base64.URL_SAFE);
12
13 String message = headerEncode + "." + playloadEncode;
14
15 Mac sha256_HMAC = Mac.getInstance("HmacSHA256");
16 SecretKeySpec secret_key = new SecretKeySpec("secret".getBytes(), "HmacSHA256");
17 sha256_HMAC.init(secret_key);
18
19 String hash = Base64.encodeToString(sha256_HMAC.doFinal(message.getBytes()), Base64.URL_SAFE);
20
21 String token = message + "." + hash;
22
23 System.out.println(token.replaceAll("\n", ""));
24 return token.replaceAll("\n", "");
25 } catch (Exception e) {
26 e.printStackTrace();
27 }