def test_jwe_header_only_contains_alg_and_enc(self): jwe_protected_header = b'{"alg":"RSA-OAEP","enc":"A256GCM", "test":"test"}' encoder = Encoder() jwe = encoder.encrypt(VALID_SIGNED_JWT.encode(), jwe_protected_header=encoder._base_64_encode(jwe_protected_header)) decoder = JWTDecryptor() with self.assertRaises(InvalidTokenException) as ite: decoder.decrypt_jwt_token(jwe.decode()) self.assertIn("InvalidTag", ite.exception.value)
def test_invalid_algorithm(self): jwe_protected_header = b'{"alg":"PBES2_HS256_A128KW","enc":"A256GCM"}' encoder = Encoder() jwe = encoder.encrypt(VALID_SIGNED_JWT.encode(), jwe_protected_header=encoder._base_64_encode(jwe_protected_header)) decoder = JWTDecryptor() with self.assertRaises(InvalidTokenException) as ite: decoder.decrypt_jwt_token(jwe.decode()) self.assertIn("Invalid Algorithm", ite.exception.value)
def test_enc_missing(self): jwe_protected_header = b'{"alg":"RSA-OAEP"}' encoder = Encoder() jwe = encoder.encrypt(VALID_SIGNED_JWT.encode(), jwe_protected_header=encoder._base_64_encode(jwe_protected_header)) decoder = JWTDecryptor() with self.assertRaises(InvalidTokenException) as ite: decoder.decrypt_jwt_token(jwe.decode()) self.assertIn("Missing Encoding", ite.exception.value)