code: private void digestPart() {
          if ( byteOffset >= MB ) {
              byteOffset = 0;
              checksums.add(digestInputStream.getMessageDigest().digest());
              digestInputStream.getMessageDigest().reset();
          }
      }
docs: Digests the current part of the message, if necessary, and resets digest
  state.