security issue behind the use of the MD5 algorithm for passwords

warning: a first-year project for one of the university module’s, thus expect formal language, research paper-like formatting and basic level content.

main contents:
a. explaining the basics of cryptographic hashing.
b. briefly explaining the md5 and providing ways to break it.
c. crack some md5 hashes (hashcat, yay!) — kind of PoC.
d. give countermeasures (🧂 and bcrypt).