Điểm:3

Làm thế nào dễ dàng để giả mạo một tập tin băm với ba chức năng, CRC32, MD5 và SHA-1?

lá cờ pk

Tệp-A được băm bằng CRC32, MD5 và SHA-1.

Làm thế nào dễ dàng để tạo một tệp giả-B có cùng giá trị băm của tệp-A? CRC32, MD5 và SHA-1?

Một PC trung bình có GPU có thể tính toán va chạm băm ba lần của tệp-A không? Và nó sẽ mất bao lâu?

Điểm:10
lá cờ my

Làm thế nào dễ dàng để tạo một tệp giả-b có cùng giá trị băm của tệp-a? crc32, md5 và sha1?

Điều này được biết đến trong giới mật mã là vấn đề 'tiền ảnh thứ hai'.

Với CRC32, thật dễ dàng; chỉ cần lấy thông báo gốc và thêm vào (nghĩa là xor) một số bản sao đã dịch chuyển của đa thức CRC và điều đó sẽ không thay đổi hàm băm. Nếu bạn không có tệp gốc-a (bạn chỉ có hàm băm), thì việc xây dựng tệp-b sẽ liên quan đến việc giải 32 phương trình boolean đồng thời - chỉ khó hơn một chút.

Với MD5 và SHA-1, không có cách thực tế nào được biết đến. Trong cả hai trường hợp, cách tiếp cận tốt nhất mà chúng tôi có là thử một số lượng lớn tệp-b tùy ý cho đến khi chúng tôi tình cờ gặp một tệp có hàm băm dự kiến ​​- đó là khối lượng công việc không khả thi trong cả hai trường hợp.

Bây giờ, những gì được biết với MD5 và SHA-1 là cách xây dựng hai tệp khác nhau với cùng một hàm băm. Tuy nhiên, các phương pháp này yêu cầu có thể chỉ định cả hai tệp và không áp dụng nếu một trong các tệp đã được cung cấp.

Máy tính trung bình có gpu có thể tính toán va chạm hàm băm ba lần của tệp-a không?

Không có cách nào để làm như vậy (trong thời gian thực tế, ví dụ: trước khi mặt trời biến thành Người khổng lồ đỏ ...)

lá cờ ma
Với CRC-32, thật dễ dàng: https://www.nayuki.io/page/forcing-a-files-crc-to-any-value
nisc avatar
lá cờ it
@Nayuki đó là những gì poncho đang nói
Điểm:4
lá cờ in

Khi poncho viết, chúng tôi không biết làm thế nào để thực tế tìm thấy hình ảnh trước thứ hai cho SHA1 hoặc MD5 chứ đừng nói đến hình ảnh phù hợp với cả hai.

Tuy nhiên, chúng tôi biết cách tìm va chạm. Do bản chất của việc xây dựng MD, chúng ta có thể dễ dàng chuyển đổi va chạm thành đa va chạm. Điều đó có nghĩa là chúng ta có thể tạo nhiều thông báo sẽ xung đột với nhau đến mức chúng ta có thể tạo nhiều xung đột của SHA-1 (hàm băm rộng hơn) và nhận phần còn lại thông qua tấn công sinh nhật. như được mô tả ở đây: Việc tạo xung đột MD5 và SHA1 đồng thời khó đến mức nào?

Vì vậy, tiền đề thứ hai trong số 3 điều này dường như vượt xa chúng ta. Nhưng sự va chạm của SHA-1 và MD5 sẽ có giá $2^{67}$ hoạt động. Chúng ta có thể làm điều này một lần nữa 16 lần để xây dựng một đa va chạm trên cả hai. và cũng tìm thấy một xung đột cho CRC32 (hoặc bất kỳ hàm băm 32 bit nào thậm chí là một hàm mạnh). Điều này sẽ làm cho tổng chi phí $2^{71}$ để tạo hai thông báo xung đột trong cả 3 giá trị băm. Nhưng đây sẽ là khi kẻ tấn công chọn cả hai tin nhắn chứ không phải khi một tin nhắn được cung cấp. Điều này vượt xa những gì một PC mạnh mẽ có thể làm được, nhưng không vượt quá khả năng của một quốc gia hay một siêu tập đoàn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.