This article will explain how to generate a MD5 Checksum on a file or list of files and also how to validate a file against a known MD5 Checksum.
Table of Contents
What is a MD5 Checksum?
The MD5 checksum is a widely used cryptographic hash function that produces a 128-bit (16-byte) hash value. It’s commonly used to verify data integrity.
MD5 stands for ‘Message Digest algorithm 5’. The ‘checksum’ part of ‘MD5 checksum’ refers to the output produced by the MD5 function, a sequence of 32 hexadecimal digits.
When you download a file from the internet, it may come with an MD5 checksum. This is an alphanumeric string that acts as a unique identifier for that specific file. If even a single byte of the file changes, the MD5 checksum will also change, thereby indicating that the file is not the same as the original one.
It’s important to note that while MD5 is fast and efficient, it is no longer considered sufficiently secure for most cryptographic functions as it’s susceptible to hash collisions. Despite this, it remains widely used for non-cryptographic purposes, such as checksums for file integrity verification.
Create and Validate MD5 Checksum on Linux
1. Generate MD5 Checksum on a single file
2. Generate MD5 Checksum on multiple files
md5sum filename1 filename2 filename3
3. Generate MD5 Checksum and output to file
md5sum filename > md5.txt
4. Compare MD5 Checkum output file to current file in directory
md5sum -c md5.txt
Example of what a MD5 Checksum looks like
Frequently Asked Questions (FAQ)
Can I use MD5 checksum to encrypt a password?
No, while MD5 can be used for hashing passwords, it’s not recommended due to its vulnerabilities. MD5 is susceptible to collision attacks, where different inputs produce the same hash, reducing its security. For password storage, more secure cryptographic hash functions such as bcrypt or Argon2, which are specifically designed to be slow and computationally intensive to deter brute-force and rainbow table attacks, are recommended. Passwords should also be salted to further enhance security.
How do download and check MD5 checksum in a single command?
In Linux, you can download a file and check its MD5 checksum in one command using
md5sum. For example:
curl -LJO http://example.com/filename.tar.gz | tee filename.tar.gz | md5sum -c checksumfile.md5
This command downloads the file from the URL, saves it as
filename.tar.gz, and then pipes it to
md5sum to verify the MD5 checksum listed in
5 thoughts on “How to create MD5 Checksums and validate a file in Linux”
Thanks, very helpful!
6 yr old post and still SPOT ON. Thank you.
Pretty straight forward explanation.
Thanks a lot for sharing this info.
visit this site