code: CipherLite createCipherLite(SecretKey cek, byte[] iv, int cipherMode,
              Provider provider, boolean alwaysUseProvider) {
  
          try {
              Cipher cipher = createCipher(provider, alwaysUseProvider);
              cipher.init(cipherMode, cek, new IvParameterSpec(iv));
              return newCipherLite(cipher, cek, cipherMode);
          } catch (Exception e) {
              throw e instanceof RuntimeException
                  ? (RuntimeException) e
                  : new SdkClientException(
                      "Unable to build cipher: "
                          + e.getMessage()
                          + "\nMake sure you have the JCE unlimited strength policy files installed and "
                          + "configured for your JVM",
                      e);
          }
      }
docs: Creates and initializes a {@link CipherLite} for content
  encrypt/decryption.
  
  @param cek
  content encrypting key
  @param iv
  initialization vector
  @param cipherMode
  such as {@link Cipher#ENCRYPT_MODE}
  @param provider
  the security provider the user specified. For backwards
  compatibility, if this scheme defines a preferred provider,
  the user-specified provider is by default ignored.
  @param alwaysUseProvider
  if true, always use the user-specified provider above, even
  if this scheme has a preferred provider.
  @return the cipher lite created and initialized.