code: public boolean compare( byte buf[], int offset ) {
       if ( size == 4 ) {
         int checksum = ( (buf[offset+0] & 0xff) << 24 ) | 
                        ( (buf[offset+1] & 0xff) << 16 ) |
                        ( (buf[offset+2] & 0xff) << 8 )  |
                        ( (buf[offset+3] & 0xff) );
         return checksum == (int) summer.getValue();
       }
       return size == 0;
     }
docs: Compares the checksum located at buf[offset] with the current checksum.
  @return true if the checksum matches and false otherwise.