I notice that if I compile an Android app twice, one right after the other with no changes, that the two APK files have two different MD5 checksums. Unsigned and Signed APK files both yield this same result.
You can open it up as a ZIP file and the contents inside there have identical MD5 checksums in both files, so I'm curious.
What else is there? What is it that is different about these two APK files?
They are not the same thing. MD5 is a checksum but there are other checksum algorithms that are not MD5, such as SHA, CRC etc. Generally a checksum is a function that takes an input that's larger in size than its output and (it better) produces greatly different outputs even if one bit in the input is changed.
MD5 (message-digest algorithm) is a cryptographic protocol used for authenticating messages as well as content verification and digital signatures.
An MD5 checksum is a very reliable way to verify data integrity. The MD5 algorithm takes a file of arbitrary length and produces a 128-bit fingerprint of characters and numbers form that file. It is proposed that it is computationally infeasible to produce two messages having the same output of numbers and characters.
The ZIP File Format stores the last modification date inside its header: http://en.wikipedia.org/wiki/Zip_(file_format)#File_headers
So the MD5 Sum differs because the header is slighty different.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With