java.lang.Object
iu.crypt.Jws
- All Implemented Interfaces:
WebSignature
JSON implementation of
WebSignature
.-
Nested Class Summary
Nested classes/interfaces inherited from interface edu.iu.crypt.WebSignature
WebSignature.Builder<B extends WebSignature.Builder<B>>
-
Constructor Summary
ConstructorsConstructorDescriptionJws
(JsonObject protectedHeader, Jose header, byte[] signature) Creates a new signed message; -
Method Summary
Modifier and TypeMethodDescription(package private) static int
componentLength
(WebKey.Type type) Gets the expected signature component length by key type.(package private) static byte[]
fromJce
(WebKey.Type type, WebKey.Algorithm algorithm, byte[] jceSignature) Converts a signature from JCE format to JWAGets the signature header.byte[]
Gets the signature data.(package private) String
getSignatureInput
(byte[] payload) Gets the signature input.(package private) static Jws
Parses per-signature JWS parameters from raw JSON.(package private) void
serializeTo
(JsonObjectBuilder json) Adds JWS per-signature parameters to aJsonObjectBuilder
.(package private) static byte[]
toJce
(WebKey.Type type, WebKey.Algorithm algorithm, byte[] jwaSignature) Converts a signature from JWA format to JCEvoid
Verifies the signature as valid.
-
Constructor Details
-
Jws
Jws(JsonObject protectedHeader, Jose header, byte[] signature) Creates a new signed message;- Parameters:
protectedHeader
- JWS protected headerheader
- JWS unprotected headersignature
- signature
-
-
Method Details
-
getHeader
Description copied from interface:WebSignature
Gets the signature header.- Specified by:
getHeader
in interfaceWebSignature
- Returns:
WebCryptoHeader
-
getSignature
public byte[] getSignature()Description copied from interface:WebSignature
Gets the signature data.- Specified by:
getSignature
in interfaceWebSignature
- Returns:
- signature data
-
verify
Description copied from interface:WebSignature
Verifies the signature as valid.- Specified by:
verify
in interfaceWebSignature
- Parameters:
payload
- payload to verify the signature againstkey
- (public or shared) key to use for verifying the signature
-
componentLength
Gets the expected signature component length by key type.- Parameters:
type
- key type- Returns:
- expected signature component length
-
toJce
Converts a signature from JWA format to JCE- Parameters:
type
- key typealgorithm
- algorithmjwaSignature
- JWA formatted signature- Returns:
- JCE formatted signature
-
fromJce
Converts a signature from JCE format to JWA- Parameters:
type
- key typealgorithm
- algorithmjceSignature
- JCE calculated signature- Returns:
- JWA formatted signature
-
parse
Parses per-signature JWS parameters from raw JSON.- Parameters:
jwsSignature
- JSON- Returns:
- parsed JWS parameters
-
serializeTo
Adds JWS per-signature parameters to aJsonObjectBuilder
.- Parameters:
json
-JsonObjectBuilder
-
getSignatureInput
Gets the signature input.- Parameters:
payload
- payload- Returns:
- signature input
-