diff options
author | makefu <github@syntax-fehler.de> | 2017-09-18 13:59:56 +0200 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2017-09-18 13:59:56 +0200 |
commit | 3afff20e1645afaac02817b719d55e344370a979 (patch) | |
tree | 6ab499cf825f9778e1630ae3fab40bfd866bec8d |
init of gentoken
-rw-r--r-- | GenToken.java | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/GenToken.java b/GenToken.java new file mode 100644 index 0000000..bca41e6 --- /dev/null +++ b/GenToken.java @@ -0,0 +1,54 @@ +import java.util.Calendar; +import java.util.Date; + +import java.nio.charset.Charset; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.TimeZone; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; + +public class GenToken +{ + public static final Charset DEFAULT_CHARSET = Charset.forName("UTF-8"); + public static final String HMAC_SHA256 = "HmacSHA256"; + public static final String UTF_8 = "UTF-8"; + + public static String bytesToHex(byte[] paramArrayOfByte) + { + StringBuilder localStringBuilder = new StringBuilder(); + int j = paramArrayOfByte.length; + int i = 0; + while (i < j) + { + localStringBuilder.append(String.format("%02x", new Object[] { Byte.valueOf(paramArrayOfByte[i]) }).toUpperCase()); + i += 1; + } + return localStringBuilder.toString(); + } + public static void main(String[] args) { + System.out.print(getToken( ) ); + } + public static String getToken() + { + Object localObject = new SimpleDateFormat("yyyyMMddHH"); + ((DateFormat)localObject).setTimeZone(TimeZone.getTimeZone("UTC")); + String text = ((DateFormat)localObject).format(Calendar.getInstance().getTime()); + System.out.println(text); + try{ + localObject = Mac.getInstance("HmacSHA256"); + ((Mac)localObject).init(new SecretKeySpec("ZhQCqoZp".getBytes(DEFAULT_CHARSET), "HmacSHA256")); + String text2 = bytesToHex(((Mac)localObject).doFinal(text.getBytes(DEFAULT_CHARSET))); + return text2; + }catch (InvalidKeyException error) + { + throw new Error("Invalid key error"); + } + catch (NoSuchAlgorithmException error) + { + throw new Error("Cannot initialize token"); + } + } +} |