docs: @Override
  	protected Cipher newCipher(final String privateKey, final String algorithm, final byte[] salt,
  		final int iterationCount, final int operationMode)
  		throws NoSuchAlgorithmException, InvalidKeySpecException, NoSuchPaddingException,
  		InvalidKeyException, InvalidAlgorithmParameterException, UnsupportedEncodingException
  	{
  		final KeySpec keySpec = newKeySpec(privateKey, salt, iterationCount);
  		final SecretKeyFactory factory = newSecretKeyFactory(algorithm);
  		final SecretKey key = factory.generateSecret(keySpec);
  		final AlgorithmParameterSpec paramSpec = newAlgorithmParameterSpec(salt, iterationCount);
  		return newCipher(operationMode, key, paramSpec, key.getAlgorithm());
  	}