Tôi sử dụng hàm băm MD5 cho identifying files with unknown origin. Không có kẻ tấn công ở đây, vì vậy tôi không quan tâm rằng MD5 đã bị hỏng và người ta có thể tạo ra xung đột.Tôi có thể sử dụng phần băm MD5 để nhận dạng dữ liệu không?
Vấn đề của tôi là tôi cần cung cấp nhật ký để các vấn đề khác nhau được chẩn đoán dễ dàng hơn. Nếu tôi đăng nhập mỗi băm như một chuỗi hex quá dài, bất tiện và trông xấu xí, vì vậy tôi muốn rút ngắn chuỗi băm.
Bây giờ tôi biết rằng chỉ cần tham gia một phần nhỏ của GUID is a very bad idea - GUID được thiết kế là duy nhất, nhưng một phần trong số đó thì không.
Điều này cũng đúng với MD5 - tôi có thể nói 4 byte đầu tiên của MD5 và giả sử rằng tôi chỉ nhận được xác suất va chạm cao hơn do số byte giảm so với giá trị băm ban đầu không?
bản sao có thể có của http://stackoverflow.com/questions/860405/are-the-first-32-bits-of-an-md5-hash-just-as-random-as-any-other-substring –
Tôi tự hỏi nếu nhận được 4 byte đầu tiên là tốt hơn so với sử dụng CRC32 của băm md5. –
Có, bởi vì 32 bit đầu tiên trong MD5 được cho là phân phối ngẫu nhiên một cách ngẫu nhiên, vì vậy bạn không thể cải thiện phân phối. –