long length = randomAccessFile.length() - header.getMp3StartByte();
if (new String(tag).equals("TAG")) {
length -= 128;
}
randomAccessFile.seek(header.getMp3StartByte());
InputStream is = new BoundedInputStream(new RandomAccessFileInputstream(randomAccessFile), length);
MessageDigest m = MessageDigest.getInstance("MD5");
byte[] buffer = new byte[8192];
int read;
while ((read = is.read(buffer)) > 0) {
m.update(buffer, 0, read);