Class JwtFormat
- java.lang.Object
-
- com.google.crypto.tink.jwt.internal.JwtFormat
-
public final class JwtFormat extends java.lang.ObjectHelper functions to format JWT objects
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classJwtFormat.PartsEncodes the parts of a JWT.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.StringcreateHeader(java.lang.String algorithm, java.util.Optional<java.lang.String> typeHeader, java.util.Optional<java.lang.String> kid)static java.lang.StringcreateSignedCompact(java.lang.String unsignedCompact, byte[] signature)static java.lang.StringcreateUnsignedCompact(java.lang.String algorithm, java.util.Optional<java.lang.String> kid, RawJwt rawJwt)static java.lang.StringdecodeHeader(java.lang.String headerStr)static java.lang.StringdecodePayload(java.lang.String payloadStr)static byte[]decodeSignature(java.lang.String signatureStr)static java.lang.StringencodePayload(java.lang.String jsonPayload)static java.lang.StringencodeSignature(byte[] signature)static java.util.Optional<java.lang.Integer>getKeyId(java.lang.String kid)static java.util.Optional<java.lang.String>getKid(int keyId, com.google.crypto.tink.proto.OutputPrefixType prefix)static java.lang.StringgetStringHeader(com.google.gson.JsonObject header, java.lang.String name)static java.util.Optional<java.lang.String>getTypeHeader(com.google.gson.JsonObject header)static booleanisValidUrlsafeBase64Char(char c)static JwtFormat.PartssplitSignedCompact(java.lang.String signedCompact)static byte[]strictUrlSafeDecode(java.lang.String encodedData)static voidvalidateASCII(java.lang.String data)static voidvalidateHeader(com.google.gson.JsonObject parsedHeader, java.lang.String algorithmFromKey, java.util.Optional<java.lang.String> kidFromKey, boolean allowKidAbsent)static voidvalidateUtf8(byte[] data)
-
-
-
Method Detail
-
isValidUrlsafeBase64Char
public static boolean isValidUrlsafeBase64Char(char c)
-
validateUtf8
public static void validateUtf8(byte[] data) throws JwtInvalidException- Throws:
JwtInvalidException
-
strictUrlSafeDecode
public static byte[] strictUrlSafeDecode(java.lang.String encodedData) throws JwtInvalidException- Throws:
JwtInvalidException
-
createHeader
public static java.lang.String createHeader(java.lang.String algorithm, java.util.Optional<java.lang.String> typeHeader, java.util.Optional<java.lang.String> kid) throws java.security.InvalidAlgorithmParameterException- Throws:
java.security.InvalidAlgorithmParameterException
-
validateHeader
public static void validateHeader(com.google.gson.JsonObject parsedHeader, java.lang.String algorithmFromKey, java.util.Optional<java.lang.String> kidFromKey, boolean allowKidAbsent) throws java.security.GeneralSecurityException- Throws:
java.security.GeneralSecurityException
-
getTypeHeader
public static java.util.Optional<java.lang.String> getTypeHeader(com.google.gson.JsonObject header) throws JwtInvalidException- Throws:
JwtInvalidException
-
getStringHeader
public static java.lang.String getStringHeader(com.google.gson.JsonObject header, java.lang.String name) throws JwtInvalidException- Throws:
JwtInvalidException
-
decodeHeader
public static java.lang.String decodeHeader(java.lang.String headerStr) throws JwtInvalidException- Throws:
JwtInvalidException
-
encodePayload
public static java.lang.String encodePayload(java.lang.String jsonPayload)
-
decodePayload
public static java.lang.String decodePayload(java.lang.String payloadStr) throws JwtInvalidException- Throws:
JwtInvalidException
-
encodeSignature
public static java.lang.String encodeSignature(byte[] signature)
-
decodeSignature
public static byte[] decodeSignature(java.lang.String signatureStr) throws JwtInvalidException- Throws:
JwtInvalidException
-
getKid
public static java.util.Optional<java.lang.String> getKid(int keyId, com.google.crypto.tink.proto.OutputPrefixType prefix) throws JwtInvalidException- Throws:
JwtInvalidException
-
getKeyId
public static java.util.Optional<java.lang.Integer> getKeyId(java.lang.String kid)
-
splitSignedCompact
public static JwtFormat.Parts splitSignedCompact(java.lang.String signedCompact) throws JwtInvalidException
- Throws:
JwtInvalidException
-
createUnsignedCompact
public static java.lang.String createUnsignedCompact(java.lang.String algorithm, java.util.Optional<java.lang.String> kid, RawJwt rawJwt) throws java.security.InvalidAlgorithmParameterException, JwtInvalidException- Throws:
java.security.InvalidAlgorithmParameterExceptionJwtInvalidException
-
createSignedCompact
public static java.lang.String createSignedCompact(java.lang.String unsignedCompact, byte[] signature)
-
validateASCII
public static void validateASCII(java.lang.String data) throws JwtInvalidException- Throws:
JwtInvalidException
-
-