329         String encodedJwt = null;
   332             JweEncrypterImpl jweEncrypter;
   341             String encodedHeader = Base64Util.base64urlencode(header.getBytes(Util.UTF8_STRING_ENCODING));
   344             String encodedClaims = Base64Util.base64urlencode(claims.getBytes(Util.UTF8_STRING_ENCODING));
   347             SecureRandom random = 
new SecureRandom();
   348             random.nextBytes(contentMasterKey);
   349             String encodedEncryptedKey = jweEncrypter.generateEncryptedKey(contentMasterKey);
   352             random.nextBytes(initializationVector);
   353             String encodedInitializationVector = Base64Util.base64urlencode(initializationVector);
   355             String additionalAuthenticatedData = encodedHeader + 
"."   356                     + encodedEncryptedKey + 
"."   357                     + encodedInitializationVector;
   359             Pair<String, String> result = jweEncrypter.generateCipherTextAndIntegrityValue(contentMasterKey, initializationVector,
   360                     additionalAuthenticatedData.getBytes(Util.UTF8_STRING_ENCODING),
   361                     encodedClaims.getBytes(Util.UTF8_STRING_ENCODING));
   362             String encodedCipherText = result.getFirst();
   363             String encodedIntegrityValue = result.getSecond();
   365             encodedJwt = encodedHeader + 
"."   366                     + encodedEncryptedKey + 
"."   367                     + encodedInitializationVector + 
"."   368                     + encodedCipherText + 
"."   369                     + encodedIntegrityValue;
   372                 throw new Exception(
"The Crypto Provider cannot be null.");
   377             String headerString = headerJsonObject.toString();
   378             String payloadString = payloadJsonObject.toString();
   379             String encodedHeader = Base64Util.base64urlencode(headerString.getBytes(Util.UTF8_STRING_ENCODING));
   380             String encodedPayload = Base64Util.base64urlencode(payloadString.getBytes(Util.UTF8_STRING_ENCODING));
   381             String signingInput = encodedHeader + 
"." + encodedPayload;
   384             encodedJwt = encodedHeader + 
"." + encodedPayload + 
"." + encodedSignature;
 KeyEncryptionAlgorithm keyEncryptionAlgorithm
Definition: JwtAuthorizationRequest.java:47
 
abstract String sign(String signingInput, String keyId, String sharedSecret, SignatureAlgorithm signatureAlgorithm)
 
SignatureAlgorithm signatureAlgorithm
Definition: JwtAuthorizationRequest.java:46
 
String keyId
Definition: JwtAuthorizationRequest.java:49
 
int getInitVectorLength()
Definition: BlockEncryptionAlgorithm.java:75
 
PublicKey getPublicKey(String alias, JSONObject jwks)
Definition: AbstractCryptoProvider.java:133
 
String sharedKey
Definition: JwtAuthorizationRequest.java:73
 
JSONObject payloadToJSONObject()
Definition: JwtAuthorizationRequest.java:420
 
int getCmkLength()
Definition: BlockEncryptionAlgorithm.java:71
 
BlockEncryptionAlgorithm blockEncryptionAlgorithm
Definition: JwtAuthorizationRequest.java:48
 
JSONObject headerToJSONObject()
Definition: JwtAuthorizationRequest.java:405
 
AbstractCryptoProvider cryptoProvider
Definition: JwtAuthorizationRequest.java:74