Search code examples
androidtarchecksum

How to handle .tar.md5 files


I was wondering about how to create / extract / verify .tar.md5 files. These files are used when flashing images to android devices, see here for example.

As far as I can tell the checksum is appended to the file like this:

cp file.tar file.tar.md5
md5sum file.tar >> file.tar.md5

Firstly I would like to know how to extract the file. Can I simply use tar -xf on the file.tar.md5?

How can I verify the integrity of the file? I would like to remove the last bytes (containing the checksum) from the file to obtain the original file back. I guess you would have to use a regexp to match the checksum file.tar? Is something like this implemented somewhere already?


Solution

  • First of all tar -xf should work since tar continues while it matches its' packing algorithm. If the file stops matching so would tar. Also most archive managers such as 7-zip or winrar will open it if you remove the ".md5". They might print error regarding mismatch with the end of the file, ignore it.

    As for verifying the file:

    • print out the stored md5sum: tail -z -n 1 [File name here].tar.md5

    • calculate the md5sum of the tar part of the file: head -z -n -1 [File name here].tar.md5 | md5sum