protected JwtTicketCipherExecutor createCipherExecutorInstance(final String encryptionKey, final String signingKey,
                                                                   final RegisteredService registeredService) {
        val cipher = new JwtTicketCipherExecutor(encryptionKey, signingKey,
            StringUtils.isNotBlank(encryptionKey), StringUtils.isNotBlank(signingKey), 0, 0);

        val encryptionAlg = getEncryptionAlgRegisteredServiceProperty().isAssignedTo(registeredService)
            ? getEncryptionAlgRegisteredServiceProperty().getPropertyValue(registeredService).value()
            : EncryptionJwtCryptoProperties.DEFAULT_CONTENT_ENCRYPTION_ALGORITHM;
        cipher.setContentEncryptionAlgorithmIdentifier(encryptionAlg);
        cipher.getCommonHeaders().putAll(CollectionUtils.wrap(CUSTOM_HEADER_REGISTERED_SERVICE_ID, registeredService.getId()));
        return cipher;
    }
Gets token ticket cipher executor for service.

@param registeredService the registered service
@return the token ticket cipher executor for service
support/cas-server-support-token-core-api/src/main/java/org/apereo/cas/token/cipher/RegisteredServiceJwtTicketCipherExecutor.java