Điểm:2

Thuật toán Grover cho mật mã khóa công khai - FrodoKEM

lá cờ in

Tôi tự hỏi liệu người ta có thể áp dụng thuật toán Grover trên một cơ chế đóng gói khóa để bẻ khóa được chia sẻ.

Ví dụ: FrodoKEM là một giao thức tạo khóa, đối với một số tham số, chia sẻ 128 bit khóa.

Chúng ta có thể phá nó bằng Grover không? tức là giảm nó xuống $2^{64}$ hoạt động?

Tài liệu tham khảo cho FrodoKEM: https://frodokem.org/files/FrodoKEM-specutions-20171130.pdf

kelalaka avatar
lá cờ in
Bạn đang hỏi sử dụng Grover's Chống lại FrodoKem hay Chống lại mã hóa khóa đối xứng mà FrodoKem tạo ra? Mã hóa đối xứng nào đang được sử dụng sau FrodoKem? Hãy coi nó như RSA-KEM (Cơ chế đóng gói khóa) + AES-GCM (Cơ chế đóng gói dữ liệu (DEM)). Grover sẽ đánh bại AES-128 trong tương lai gần chứ không phải AES-256.
C.S. avatar
lá cờ in
Cảm ơn bạn @kelalaka. Còn việc tự phá FrodoKEM thì sao? Có thể với thuật toán của Grover?
kelalaka avatar
lá cờ in
Tất nhiên, không rõ làm thế nào một người có thể chạy lệnh $\sqrt{2^n}$ Grover Oracles trong đời thực. Chi phí ( timexmoney ) để chuẩn bị Oracle tiếp theo là bao nhiêu...
kelalaka avatar
lá cờ in
[Một phân tích thời gian Grover đơn giản có tại đây](https://crypto.stackexchange.com/a/67677/18298) và [sự kém hiệu quả của máy Grover song song có tại đây](https://quantumcomputing.stackexchange.com/q/4531 /4866)
Điểm:6
lá cờ my

Tôi tự hỏi liệu người ta có thể áp dụng thuật toán Grover trên cơ chế đóng gói khóa để bẻ khóa được chia sẻ hay không.

Đây là cách thuật toán của Grover hoạt động (đơn giản hóa): bạn sử dụng hàm 'fitness' (hàm này đoán giá trị mà bạn đang tìm kiếm và ước tính thành '1' nếu dự đoán đúng và '0' nếu không - đối với AES, chức năng phù hợp có thể là 'sử dụng dự đoán làm khóa AES và mã hóa khối bản rõ đã biết và kiểm tra xem kết quả có phải là khối bản mã đã biết hay không).

Sau đó, bạn thực hiện chức năng phù hợp này (và một số phép toán Lượng tử khác) và lặp lại nó nhiều lần - nếu bạn lặp lại đúng số lần, thì khi bạn đo kết quả, có khả năng cao đó là giá trị phù hợp hàm đánh giá bằng 1.

Bây giờ, nếu chúng ta cân nhắc tấn công Frodo, có hai cách để tấn công nó. Người ta có thể cố gắng khôi phục bí mật được chia sẻ trực tiếp từ các chia sẻ khóa công khai; trong trường hợp này, chúng tôi có sẵn cho chức năng tập thể dục chia sẻ khóa công khai và dự đoán của chúng tôi về bí mật được chia sẻ. Tuy nhiên, chúng tôi không có cách hiệu quả để kiểm tra xem dự đoán đó có chính xác hay không (dựa trên chia sẻ khóa công khai) và vì vậy chúng tôi không biết cách xây dựng chức năng thể dục này (và do đó, Grover's dường như không áp dụng).

Mặt khác, chúng ta có thể thử khôi phục hạt giống bí mật mà Frodo đã sử dụng để lấy khóa công khai [1] (hoặc cách khác, trong quy trình đóng gói của Frodo). Đối với Frodo-640 (NIST cấp 1), hạt giống bí mật này là 128 bit; vì người ta có thể xác định ánh xạ giữa giá trị 128 bit này (và dữ liệu công khai, nghĩa là hạt giống công khai) và khóa chung, chúng tôi có thể sử dụng giá trị đó để tạo hàm thể dục.

Bây giờ, cuộc tấn công này không phải là vốn có của mật mã hậu lượng tử; nó hoạt động không phải bằng cách tấn công trực tiếp bí mật được chia sẻ 128 bit, mà thay vào đó là cách bộ thông số này của Frodo tạo ra các chia sẻ khóa của nó, sử dụng giá trị ngẫu nhiên 128 bit làm 'hạt giống bí mật'. Những gì Frodo làm là lấy hạt giống bí mật 128 bit đó và mở rộng nó bằng cách sử dụng SHAKE để tạo ra các vectơ lỗi và chia sẻ dài hơn nhiều; các nhà thiết kế của Frodo có thể đã sử dụng một hạt giống bí mật dài hơn và mở rộng hạt giống đó thành LẮC - điều này sẽ gây khó khăn hơn nhiều cho Grover (vì hạt giống bí mật để phục hồi lâu hơn nhiều và việc cố gắng khôi phục trạng thái LẮC bên trong hoặc chuỗi kết quả LẮC sẽ cũng mất nhiều thời gian). Các nhà thiết kế của Frodo đã không làm điều này, có lẽ vì nó không thực sự cải thiện tính bảo mật.

Mặt khác, chúng tôi thường làm điều gì đó với khóa được chia sẻ; chúng tôi có thể cung cấp dữ liệu đó vào KDF (có thể cùng với một số dữ liệu công khai, chẳng hạn như nonce), sau đó sử dụng kết quả đó làm khóa AES. Chúng ta có thể xây dựng một chức năng phù hợp dựa trên đó và do đó, Grover sẽ áp dụng cho hệ thống đó - rất có thể, việc xây dựng KDF/AES này sẽ đơn giản hơn để triển khai trong Máy tính lượng tử so với quy trình (hoặc đóng gói) khóa công khai của Frodo; do đó, việc tấn công hệ thống ở đó có thể dễ dàng hơn (nếu chỉ bằng một yếu tố không đổi).

Mặt khác, thật hợp lý khi đặt câu hỏi liệu Grover's có thực sự là mối đe dọa đối với bí mật 128 bit hay không - tất cả các đánh giá chức năng thể dục này đều được thực hiện tuần tự và sẽ không thực tế để đánh giá bất kỳ chức năng nào $2^{64}$ Lần liên tiếp. Và, trong khi bạn có thể cố gắng giải quyết vấn đề này bằng cách chạy Grover's trên một số lượng lớn Máy tính lượng tử bằng cách chia nhỏ không gian bí mật, thì chúng ta sẽ mất một phần lợi thế của Grover nếu làm điều đó, và vì vậy cuối cùng chúng ta sử dụng một nhiều của Máy tính lượng tử.

[1]: Lưu ý rằng Frodo có hai hạt giống; một công khai xác định mạng sẽ được sử dụng và một mạng bí mật và được sử dụng để tạo ma trận mẫu và lỗi; vì hạt giống công khai nằm trong khóa chung, nên kẻ tấn công không cần phải đoán điều đó; tất cả những gì anh ta cần làm là thu hồi hạt giống bí mật.

Fleeep avatar
lá cờ br
Tại sao bạn không thể tấn công (= xây dựng chức năng phù hợp) hạt giống ban đầu (cũng có 128 bit) được sử dụng để tạo cặp (sk, pk) bằng Grover? Điều này sẽ giả định rằng việc tìm kiếm một sk (hay đúng hơn là một hạt giống được mở rộng thành sk) dẫn đến cùng một pk cho phép bạn giải mã thành công.
poncho avatar
lá cờ my
@Fleeep: lời xin lỗi của tôi; Tôi đã nghĩ rằng Frodo-640 đã lấy một hạt giống bí mật dài hơn - kiểm tra kỹ lại, tôi thấy rằng không phải vậy. Sau đó, vâng, bạn có thể sử dụng Grover's để khôi phục nó; mặt khác, tôi nghi ngờ rằng đó sẽ là một yếu tố liên tục phức tạp hơn việc tấn công hệ thống đối xứng sử dụng hạt giống, nhưng điều đó chắc chắn là có thể xảy ra (nếu không thực tế; xem ở trên)
poncho avatar
lá cờ my
@Fleeep: ok, tôi đã sửa đổi câu trả lời của mình để giải quyết cuộc tấn công thay thế này

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