Algorithm instances are pooled for reuse, so the cipher provider and mode are configurable but fixed at instantiation.
60616263646566676869
} @Override public Cipher getCipher(String name) { if (name.equalsIgnoreCase("AES")) { return new AES(this); } throw new RuntimeException("Cipher '" + name + "' is not supported by provider '" + getName() + "'"); }