Nhờ vào Samuel Neves đã chỉ cho tôi đi đúng hướng. tôi đã xem qua tài liệu tham khảo được đề cập, và nó đề cập đến việc Định lý 6.1 thất bại như thế nào vì tính bảo mật yếu. Nó cũng bao gồm một MAC được bảo mật yếu khi không có các truy vấn xác minh nhưng lại mất tính bảo mật khi có các truy vấn xác minh.
Tại sao Định lý 6.1 bị phá vỡ
Tôi thấy rằng sự tinh tế xảy ra trong cách xác định các trò chơi tấn công. Kẻ thù có thể gửi bất kỳ cặp thẻ thông điệp nào $(m, t)$ để xác minh miễn là nó không nằm trong số các cặp đã ký trước đó. Điều quan trọng là theo định nghĩa ban đầu về bảo mật, đối thủ thắng trò chơi tấn công nếu và chỉ nếu đối thủ gửi một cặp thẻ-tin nhắn hợp lệ, chưa từng thấy trước đây để xác minh. Tính tương đương xuất phát từ định nghĩa về điều kiện chiến thắng.
Tuy nhiên, trong điều kiện bảo mật yếu, hướng chuyển tiếp vẫn được giữ nguyên (gửi một tín hiệu hợp lệ $(m, t)$ cặp ở đâu $m$ chưa từng thấy trước đây rõ ràng tạo thành một cặp hợp lệ chưa từng thấy trước đây) nhưng hướng ngược lại không thành công. Hướng ngược lại có thể thất bại vì đối thủ có thể có được một $(M, T)$ ghép từ một truy vấn ký và sau đó gửi một hợp lệ $(M, \bar{T})$ ghép nối bằng cách sửa đổi thẻ $T$. $(M, \bar{T})$ là một cặp hợp lệ và chưa từng thấy trước đó, nhưng đối thủ không thắng được vì cặp này liên quan đến một thông báo đã được ký trước đó.
Trường hợp Định lý 6.1 thất bại đối với bảo mật yếu là khi các tác giả khẳng định $\text{Pr}[W_0] = \text{MAC}^\text{vq}\text{adv}[\mathcal{A, I}]$ giả sử chiến thắng trong trò chơi tấn công tương đương với việc xuất hiện một cặp thẻ thông báo hợp lệ, chưa từng thấy trước đây. Trong ví dụ cực đoan ở trên, đây không phải là trường hợp có thể xảy ra đối với $W_0$ xảy ra nhưng không giành chiến thắng trong trò chơi tấn công bảo mật yếu.
Cách giải bài tập
Đối với cách xây dựng một hệ thống MAC an toàn yếu khi không có truy vấn xác minh nhưng không an toàn yếu với các truy vấn xác minh, về cơ bản bạn xây dựng một hệ thống mà sau khi nhận được $(M, T)$ từ một truy vấn ký một đối thủ có thể dễ dàng xây dựng hợp lệ $(M, \bar{T})$ cặp. Bằng cách trình bày các cặp hợp lệ nhưng không chiến thắng này, đối thủ sẽ học được đủ thông tin để phá vỡ hệ thống MAC.
Để cho $\mathcal{K} = \{0,1\}^\ell$ và $|\mathcal{T}|$ được siêu đa. Để cho $F$ là một PRF được xác định trên $(\mathcal{K, M, T})$, $k \stackrel{R}{\gets} \mathcal{K}$ và $\mathcal{I} = (S, V)$ là một MAC được xác định trên $(\mathcal{K, M, T} \times \{\perp, 0,\ldots,\ell-1\})$. Thuật toán ký được định nghĩa là $S(m) = (F(k, m), \perp)$ và thuật toán xác minh là
V(m, (t, i))
// Xác thực thẻ theo PRF
d = F(k, m) == t
nếu !d hoặc tôi == â
trở lại d? chấp nhận: từ chối
// Trả về bit thứ i của khóa
trả lại k[i] == 1? chấp nhận: từ chối
Thuộc tính đúng đắn được giữ vì thành phần thứ hai của $S(m)$ Là $\perp$ trong đó nhập câu lệnh if. Hệ thống MAC này về cơ bản là hệ thống MAC xác định bắt nguồn từ $F$ nhưng với một trường chỉ mục bổ sung.
Đầu tiên chúng tôi nhận thấy rằng $\mathcal{I}$ an toàn yếu nếu không có truy vấn xác thực. Nếu một đối thủ thắng, thì đối thủ đã gửi một cặp hợp lệ $(m, (t, i))$ ở đâu $m$ đã không được nhìn thấy trước đây. Điều này có nghĩa là $\textsf{chấp nhận}$ đã được trả lại có nghĩa là $d$ là sự thật trong $V(m, (t, i)))$ (hoặc câu lệnh if đã được nhập vào nơi $\textsf{chấp nhận}$ đã được trả lại hoặc câu lệnh if không thực thi có nghĩa là $d$ không sai). Điều này xảy ra với xác suất không đáng kể bởi Định lý 6.2 là $d$ là sự thật có nghĩa là giả mạo được tạo ra dựa trên MAC xác định bắt nguồn từ $F$ (MAC này được bảo mật theo định nghĩa bảo mật mạnh hơn).
Tuy nhiên, $\mathcal{I}$ không an toàn yếu với các truy vấn xác minh. Một kẻ thù phá vỡ an ninh là
Cho m là một thông điệp tùy ý
Lấy (m, (t, â)) từ người thách đấu
k[0..l-1] = 0
cho i = 0 .. l-1
Đặt r là phản hồi của người thách thức đối với truy vấn xác thực (m, (t, i))
nếu r == chấp nhận
k[i] = 1
khác
k[i] = 0
// Khóa đã được xây dựng lại
Đặt m' là một thông báo tùy ý không bằng m
// Tính toán thẻ của m' với khóa được tạo lại
Đặt t' = S(m')
Gửi truy vấn xác thực (m', (t', â)) cho người thách đấu