File-encryption utility application
Exposing the IV only leaves room for errors. Simply generate it at the start of encryption.
There is no point in having a completely unrelated hash method on this class.
There is not integrity protection, so an attacker who can modify the ciphertext you decrypt will likely be able to pull off a padding-oracle attack. Unfortunately it's not trivial to combine streaming decryption with integrity protection, since you must ensure that you don't release any plaintext you haven't authenticated.
Once you eliminate the IV storage, as recommended above, you have no state to preserve across calls, which means you don't need any instance fields anymore. They only make your class thread-unsafe without any benefit.
Closing out seems pretty weird, I wouldn't expect that behaviour. On the other hand you don't close in.
If you decide to dispose resources, use try...finally (or try-with-resources) to do so reliably.
I'd make the class immutable and threadsafe, storing only the key (and algorithm if it's not hardcoded) in it.