Điểm:5

Lược đồ mã hóa được xác thực có thể phát hiện nếu sử dụng khóa sai không?

lá cờ sy

Lược đồ mã hóa được xác thực (như AES-GCM) có thể phát hiện nếu một khóa sai được sử dụng để giải mã không? Nếu không, cách tiêu chuẩn để kiểm tra xem khóa đã nhập có thực sự chính xác hay không. Tôi cho rằng KCV có thể được sử dụng cho việc này nhưng điều này bằng cách nào đó có làm rò rỉ bất kỳ thông tin nào về khóa không?

kelalaka avatar
lá cờ in
Chào mừng đến với Mật mã học. Câu trả lời là có hoặc không! AES-GCM và ChaCha20-Poly1305 không cam kết! [Hiểu tác động của các cuộc tấn công tiên tri phân vùng đối với mật mã luồng](https://crypto.stackexchange.com/q/88716/18298). Sơ đồ **mã hóa cam kết** là một sơ đồ có thể xử lý bằng máy tính để tìm một cặp khóa và một bản mã giải mã theo cả hai khóa. Người ta cần sử dụng HMAC và KMAC.
Ordinary avatar
lá cờ sy
Cảm ơn bạn đã trả lời! Tôi thắc mắc đâu là sự khác biệt giữa sơ đồ mã hóa cam kết như [tại đây](https://eprint.iacr.org/2003/254.pdf) và sơ đồ cam kết khóa?
kelalaka avatar
lá cờ in
AFAIK, chúng giống nhau.
Điểm:5
lá cờ us

Đây là một câu hỏi thú vị và nó phụ thuộc vào tình huống mà bạn có thể giải mã bằng khóa "sai".

Nếu hai phím $k_1$$k_2$ được tạo độc lập và $c$ là một bản mã được tạo trung thực theo $k_1$, sau đó giải mã $c$ Dưới $k_2$ sẽ dẫn đến một lỗi, ngoại trừ với xác suất không đáng kể. Nếu đây không phải là trường hợp, nó sẽ dẫn đến một cuộc tấn công chống lại bảo mật AEAD (kẻ tấn công chỉ gửi một bản mã dưới một khóa được chọn độc lập). Phân tích này đề cập đến trường hợp giải mã "ngẫu nhiên" hoặc "ngẫu nhiên" bằng khóa sai.

Tuy nhiên, điều này không bao gồm trường hợp $k_1, k_2, c$ đều được tạo ra một cách bất lợi. (Có thể kẻ tấn công cho bạn thấy $c$$k_1$, và kể từ khi $c$ giải mã thành công theo $k_1$ bạn kết luận sai rằng ai đó có khóa khác không thể chấp nhận $c$.) Các định nghĩa thông thường của AEAD không ngăn cản điều đó.Có các lược đồ AEAD tự nhiên (bao gồm cả AES-GCM) nơi có thể tạo ra các $k_1, k_2, c$ như vậy mà $c$ giải mã mà không có lỗi trong cả hai $k_1$$k_2$. Thuộc tính này thực sự có thể gây ra sự cố cho một số ứng dụng của AEAD, như thỏa thuận khóa được xác thực bằng mật khẩubáo cáo lạm dụng trong tin nhắn được mã hóa.

Nếu nó là khó khăn để đưa ra bất kỳ $k_1, k_2, c$ ở đâu $c$ giải mã mà không có lỗi trong cả hai $k_1$$k_2$, sau đó chúng tôi nói rằng lược đồ là cam kết chính. Đôi khi thuộc tính cam kết khóa yêu cầu cung cấp một số giá trị bổ sung (ngoài bản mã và khóa thông thường) để giúp liên kết khóa với bản mã. Mã hóa cam kết khóa được nghiên cứu đâyđây.

Ordinary avatar
lá cờ sy
Cảm ơn bạn đã trả lời! Tôi thắc mắc đâu là sự khác biệt giữa sơ đồ **mã hóa cam kết** như [tại đây](https://eprint.iacr.org/2003/254.pdf) và sơ đồ **cam kết khóa**?

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