Đã có ít nhất hai nỗ lực thành công để tạo ảnh GIF hiển thị hàm băm MD5 của riêng chúng:
Hashquine của spq
Hashquine của Copyheart Rogdham
Bạn có thể tải xuống cả hai tệp và xác minh rằng md5sum
giá trị băm bằng giá trị băm được hiển thị trong hình ảnh.
Những điều này dựa trên thực tế là các xung đột MD5 ngày nay rất dễ tạo ra và thực tế là định dạng GIF là một chuỗi các khung. Thực tế, ảnh GIF bao gồm 32 khối dữ liệu hoạt ảnh. Mỗi đoạn được tính là đa va chạm MD5 16 chiều, tức là có 16 đoạn khác nhau tạo ra cùng một hàm băm nhưng hiển thị các chữ số thập lục phân khác nhau. Vì vậy, GIF được tạo bằng cách tính toán và ghép nối tất cả 32 xung đột 16 chiều, tính toán hàm băm kết quả của tệp, sau đó chọn các khối tạo ra đầu ra mong muốn.Nói cách khác, tính linh hoạt của định dạng GIF và điểm yếu của MD5, cho phép hàm băm hiển thị được chọn một chữ số tại một thời điểm mà không ảnh hưởng đến hàm băm của tệp hình ảnh.
Về nguyên tắc, một kết quả tương tự có thể đạt được đối với bất kỳ hàm băm nào khác, miễn là nó dễ tạo ra xung đột. Ví dụ: sẽ dễ dàng thực hiện điều này với họ băm CRC, vì rất dễ va chạm với chúng (chỉ cần giải một phương trình tuyến tính). Tuy nhiên, đối với các hàm băm hiện có khả năng chống va chạm, chẳng hạn như SHA-256, thì không khả thi về mặt tính toán.
Các định dạng tệp khác cũng có thể bị tấn công theo cách này: ví dụ: số 14 của tạp chí PoC||GTFO hiển thị hàm băm MD5 của chính nó trên trang bìa của tệp PDF: https://www.alchemistowl.org/pocorgtfo/pocorgtfo14.pdf. PostScript, và thậm chí cả định dạng NES ROM cũng có thể bị tấn công tương tự nhờ các thủ thuật định dạng tệp; đọc tạp chí để biết thêm chi tiết kỹ thuật.