Điểm:0

Ý nghĩa của thuật ngữ "không thể đảo ngược" để băm

lá cờ in

Tôi đã có một cuộc thảo luận thú vị với Jon Skeet trên StackOverflow. Anh ấy chỉ ra rằng các giá trị băm là không thể đảo ngược, nhưng ông đã mở rộng điều này sang các giá trị băm không mã hóa. Hàm băm có kích thước đầu ra cụ thể trong khi hàm có thể xử lý bất kỳ thông báo có kích thước nào. Vì vậy, nếu bạn tranh luận theo quan điểm đó, một hàm băm luôn không thể đảo ngược vì có nhiều thư có cùng một hàm băm.

Tuy nhiên tôi tự hỏi nếu đây là định nghĩa chính xác của "không thể đảo ngược". Trong mật mã, không thể đảo ngược có nghĩa là chúng tôi không thể thiết lập thông báo chính xác với bất kỳ mức độ chắc chắn nào hoặc điều đó có nghĩa là chúng tôi không thể tìm thấy không tí nào thông tin về tin nhắn, ngoại trừ khi so sánh nó với các cặp tin nhắn/băm đã biết?

Điểm:1
lá cờ my

Trong mật mã, các giá trị băm thường được sử dụng làm trình giữ chỗ cho thông báo gốc; bằng cách sử dụng hàm băm, chúng tôi đang sử dụng thông báo gốc một cách hiệu quả. Ví dụ: khi ký một tin nhắn dài, chúng tôi băm tin nhắn dài và sau đó chạy thuật toán chữ ký trên hàm băm; nếu chúng tôi cho rằng thuật toán chữ ký mạnh (và do đó, chỉ một thông báo tạo ra hàm băm đó mới hợp lệ) và chúng tôi cho rằng khó có thể tìm thấy một thông báo thứ hai tạo ra cùng một hàm băm (do đó, nó phải là thông báo ban đầu đó đã được ký kết), thì toàn bộ hệ thống sẽ mạnh mẽ.

Do đó, chúng tôi thường không xem xét 'rò rỉ thông tin' khi nói về hàm băm; nghĩa là, chúng tôi thường không lo lắng liệu việc kiểm tra đầu ra hàm băm có làm rò rỉ thông tin về thông báo gốc hay không. Thay vào đó, chúng tôi lo lắng về việc khó tìm được thông báo tạo ra hàm băm đó (có thể là khả năng chống tạo ảnh trước, khả năng chống tạo ảnh thứ hai hoặc khả năng chống va chạm), bởi vì điều đó liên quan trực tiếp đến các giả định bảo mật mà chúng ta thường cần từ các hàm băm.

Điều đó nói rằng, nếu ai đó phát hiện ra rò rỉ trong (giả sử) SHA3, chẳng hạn, bằng cách kiểm tra hàm băm, chúng tôi có thể xác định độ dài của thông báo, điều đó sẽ khá đáng lo ngại (và chúng tôi có thể sẽ bắt đầu phản đối SHA3 ); đôi khi chúng tôi muốn coi các hàm băm của mình như một lời tiên tri ngẫu nhiên và điều đó cho thấy rằng nó không hoạt động như một [1]. Tuy nhiên, viễn cảnh rò rỉ như vậy dường như khó xảy ra.

[1]: Có, tôi biết các cuộc tấn công mở rộng độ dài cho thấy SHA-2 không hoạt động như một lời tiên tri ngẫu nhiên; điều đó được hiểu rõ và chúng tôi chỉ tránh sử dụng SHA-2 theo cách có thể áp dụng cuộc tấn công cụ thể đó.

Maarten Bodewes avatar
lá cờ in
Tôi có thể thấy lý do của bạn ở đây và tôi đồng ý với nó.Tuy nhiên, nếu chúng ta sử dụng hàm băm mật mã làm hàm gốc cho hàm băm mật khẩu hoặc KDF và nếu hàm băm làm rò rỉ các phần của thông báo, điều đó có gây ra sự cố không? Sau đó, chúng ta có cho rằng nó * nên * hoạt động như một lời tiên tri ngẫu nhiên và do đó không làm rò rỉ thông tin về tin nhắn không?
poncho avatar
lá cờ my
@MaartenBodewes: tốt, nếu chúng tôi cho rằng hoán vị Keccak là một 'hoán vị ngẫu nhiên', thì tôi tin rằng việc hiển thị SHA-3 không làm rò rỉ bất kỳ thông tin nào về hình ảnh (và tương tự với SHA-2 và hoạt động nén băm). Như vậy đã đủ tốt chưa?
Maarten Bodewes avatar
lá cờ in
Chắc chắn, đó là đủ tốt cho mục đích. Câu hỏi của tôi là: "*nếu* họ làm rò rỉ dữ liệu, chẳng hạn như nếu bit cuối cùng được thiết lập hay không, liệu chúng tôi có còn coi chúng là "không thể đảo ngược không?" yêu cầu đối với các hàm băm, vì vậy có lẽ chúng ta nằm ngoài thuật ngữ khoa học - và chỉ có thế.
poncho avatar
lá cờ my
@MaartenBodewes: hmmm, vấn đề là 'không thể đảo ngược' không có định nghĩa tiêu chuẩn được thống nhất trong cộng đồng tiền điện tử và vì vậy thật khó để nói liệu một hàm băm như vậy có đáp ứng định nghĩa đó hay không. Mặt khác, đối với SHA-2/3, nó sẽ chỉ ra rằng thao tác nén/hoán vị hàm băm không đáp ứng các giả định bảo mật và do đó, chúng ta không nên tin tưởng vào hàm băm đó nói chung...

Đă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.