Currently the code only loads the manifest using new Manifest(stream) which is using the byte per byte read.
I agree that this depends on the JDK manifest implementation. So it might be interesting (as a defensive approach) to wrap the bulk read.