docs: private void initialize() throws NoSuchAlgorithmException, InvalidKeySpecException,
  		NoSuchPaddingException, InvalidKeyException, InvalidAlgorithmParameterException
  	{
  		if (!isInitialized())
  		{
  			KeySpec keySpec = new PBEKeySpec(this.getPrivateKey().toCharArray());
  			final SecretKeyFactory factory = SecretKeyFactory
  				.getInstance(CompoundAlgorithm.PBE_WITH_MD5_AND_DES.getAlgorithm());
  			final SecretKey key = factory.generateSecret(keySpec);
  			this.cipher = Cipher.getInstance(key.getAlgorithm());
  			final AlgorithmParameterSpec paramSpec = new PBEParameterSpec(CompoundAlgorithm.SALT,
  				CompoundAlgorithm.ITERATIONCOUNT);
  			this.cipher.init(newOperationMode(), key, paramSpec);
  			initialized = true;
  		}
  	}