Máy tính mã băm HAVAL-224/3
Đã xuất bản: lúc 20:12:42 UTC 18 tháng 2, 2025
Máy tính mã băm sử dụng hàm băm có độ dài thay đổi 224 bit, 3 vòng (HAVAL-224/3) để tính toán mã băm dựa trên dữ liệu nhập vào hoặc tệp tải lên.HAVAL-224/3 Hash Code Calculator
HAVAL (Băm có độ dài thay đổi) là một hàm băm mật mã được thiết kế bởi Yuliang Zheng, Josef Pieprzyk và Jennifer Seberry vào năm 1992. Đây là phần mở rộng của họ MD (Message Digest), lấy cảm hứng cụ thể từ MD5, nhưng có những cải tiến đáng kể về tính linh hoạt và bảo mật. Nó có thể tạo ra mã băm có độ dài thay đổi từ 128 đến 256 bit, xử lý dữ liệu trong 3, 4 hoặc 5 vòng.
Biến thể được trình bày trên trang này đưa ra mã băm 224 bit (28 byte) được tính toán trong 3 vòng. Kết quả được đưa ra dưới dạng số thập lục phân 56 chữ số.
Tiết lộ đầy đủ: Tôi không viết phần triển khai cụ thể của hàm băm được sử dụng trên trang này. Đây là một hàm chuẩn đi kèm với ngôn ngữ lập trình PHP. Tôi chỉ tạo giao diện web để công khai ở đây cho thuận tiện.
Về thuật toán băm HAVAL
Hãy tưởng tượng HAVAL như một máy xay sinh tố siêu mạnh được thiết kế để trộn đều các thành phần (dữ liệu của bạn) đến mức không ai có thể tìm ra công thức ban đầu chỉ bằng cách nhìn vào thành phẩm sinh tố cuối cùng (hash).
Bước 1: Chuẩn bị các thành phần (Dữ liệu của bạn)
Khi bạn cung cấp cho HAVAL một số dữ liệu - như tin nhắn, mật khẩu hoặc tệp - nó không chỉ ném chúng vào máy xay như vậy. Đầu tiên, nó:
- Làm sạch và cắt dữ liệu thành các phần gọn gàng (gọi là đệm).
- Đảm bảo kích thước tổng thể vừa khít với máy xay (tương tự như đảm bảo nguyên liệu làm sinh tố được đổ đầy đều vào bình).
Bước 2: Pha trộn theo từng vòng (Trộn theo từng lượt)
HAVAL không chỉ nhấn "pha trộn" một lần. Nó pha trộn dữ liệu của bạn qua 3, 4 hoặc 5 vòng - giống như pha trộn sinh tố của bạn nhiều lần để đảm bảo mọi khối đều được nghiền nát.
- 3 lần: Pha trộn nhanh (nhanh nhưng không an toàn lắm).
- 5 lần: Pha trộn siêu kỹ lưỡng (chậm hơn nhưng an toàn hơn nhiều).
Mỗi vòng trộn dữ liệu theo một cách khác nhau, sử dụng các "lưỡi dao" đặc biệt (phép toán) để cắt, lật, khuấy và nghiền dữ liệu theo những cách điên rồ và không thể đoán trước.
Bước 3: Bí quyết (Chức năng nén)
Giữa các vòng pha trộn, HAVAL thêm nước sốt bí mật của mình - công thức đặc biệt khuấy động mọi thứ hơn nữa. Bước này đảm bảo rằng ngay cả một thay đổi nhỏ trong dữ liệu của bạn (như thay đổi một chữ cái trong mật khẩu) cũng làm cho sinh tố cuối cùng hoàn toàn khác biệt.
Bước 4: Sinh tố cuối cùng (The Hash)
Sau khi xay xong, HAVAL sẽ đổ ra "sinh tố" cuối cùng cho bạn.
- Đây là hàm băm - dấu vân tay duy nhất của dữ liệu của bạn.
- Bất kể dữ liệu gốc của bạn lớn hay nhỏ, hàm băm luôn có cùng kích thước. Giống như việc cho bất kỳ loại trái cây nào vào máy xay nhưng luôn thu được cùng một cốc sinh tố.
Tính đến năm 2025, chỉ có HAVAL-256/5 vẫn được coi là an toàn hợp lý cho mục đích mật mã, mặc dù bạn không nên sử dụng nó khi thiết kế các hệ thống mới. Nếu bạn vẫn đang sử dụng nó trong hệ thống cũ, bạn không gặp bất kỳ rủi ro nào ngay lập tức, nhưng hãy cân nhắc chuyển sang SHA3-256 trong dài hạn.