question: public void update ( byte [ ] in , int inOff , int len ) { while ( ( mOff != 0 ) && ( len > 0 ) ) { update ( in [ inOff ] ) ; inOff ++ ; len -- ; } while ( len > 16 ) { System . arraycopy ( in , inOff , M , 0 , 16 ) ; processCheckSum ( M ) ; processBlock ( M ) ; len -= 16 ; inOff += 16 ; } while ( len > 0 ) { update ( in [ inOff ] ) ; inOff ++ ; len -- ; } }
target:  update the message digest with a block of bytes.