Câu hỏi
tôi tìm kiếm một tốt hơn về mặt định lượng bằng chứng của định lý 13.11 trong Katz và Lindell's Giới thiệu về mật mã học hiện đại (3thứ phiên bản) (hoặc gần như tương đương, định lý 19.1 trong Dan Boneh và Victor Shoup có sẵn miễn phí Một khóa học sau đại học về mật mã học ứng dụng). Bằng chứng là về sơ đồ nhận dạng Schnorr cho một nhóm chung $\mathcal G$ theo thứ tự chính $q=\lvert\mathcal G\rvert$ và máy phát điện $g\in\mathcal G$, đối với khiếu nại:
Nếu vấn đề logarit rời rạc là khó so với $\mathcal G$, thì sơ đồ nhận dạng Schnorr là an toàn.
Đề án đi:
- Prover (P) rút khóa riêng $x\gets\mathbb Z_q$, tính toán và xuất bản khóa công khai $y:=g^x$, với tính toàn vẹn giả định.
- Tại mỗi lần nhận dạng:
- Châm (P) hòa $k\gets\mathbb Z_q$, tính toán và gửi $I:=g^k$
- Người xác minh (V) vẽ và gửi $r\gets\mathbb Z_q$
- Prover (P) tính toán và gửi $s:=r\,x+k\bmod q$
- Người xác minh (V) kiểm tra xem $g^s\;y^{-r}\;\overset?=\;I$
Bằng chứng được đưa ra là bằng cách đối lập. Chúng tôi giả sử một thuật toán PPT $\mathcal A$ đó, đưa ra $y$ nhưng không $x$, xác định thành công với xác suất không biến mất. Chúng tôi xây dựng thuật toán PPT sau $\mathcal A'$:
- Chạy $\mathcal A(y)$, được phép truy vấn và quan sát bảng điểm trung thực $(I, r, s)$, trước khi đến bước tiếp theo.
- Khi nào $\mathcal A$ đầu ra $I$, chọn $r_1\gets\mathbb Z_q$ và đưa nó cho $\mathcal A$, đáp ứng với $s_1$.
- Chạy $\mathcal A(y)$ lần thứ hai với cùng một băng ngẫu nhiên và bản ghi trung thực, và khi nó xuất ra (giống nhau) $I$, chọn $r_2\gets\mathbb Z_q$ với $r_2\ne r_1$ và cho $r_2$ đến $\mathcal A$.
Sau cùng, $\mathcal A$, trả lời với $s_2$.
- tính toán $x:=(r_1-r_2)^{-1}(s_1-s_2)\bmod q$, giải DLP.
Giả sử bước 2 hoàn thành với xác suất $\epsilon$. Tôi hiểu rằng bằng chứng của cuốn sách thiết lập bước 3 hoàn thành với xác suất ít nhất $\epsilon^2-1/q$, tại sao bước 4 giải quyết được DLP, tại sao $\epsilon^2$ xuất hiện và tại sao chúng ta cần một lượng lớn $q$ để tiếp cận điều đó.
Chúng ta có thể đạt được mức giảm thuyết phục hơn về mặt định lượng đối với DLP không?
Những điều không hài lòng là: $\epsilon^2$, có thể chuyển thành xác suất thành công thấp. Chúng tôi muốn giảm khi xác suất thành công tăng tuyến tính với thời gian sử dụng, với xác suất thấp. Ngoài ra, xác suất thành công được lấy trung bình trên tất cả $y\in\mathcal G$, không phải cho một vấn đề DLP cụ thể.
Để làm cho vấn đề đầu tiên trở nên cụ thể: nếu $\mathcal A$ thành công với xác suất $\epsilon=2^{-20}$ Trong $1$ thứ hai, bằng chứng cho thấy chúng ta có thể giải một DLP trung bình với xác suất như $2^{-40}$ Trong $2$ giây. Điều đó không hữu ích trực tiếp, ngay cả khi chúng ta có thể biến nó thành xác suất $1/2$ Trong $2^{40}$ giây (11 thế kỷ). Chúng tôi muốn xác suất $1/2$ Trong $2^{21}$ giây (25 ngày).
câu trả lời dự kiến
Đây là nỗ lực của tôi, cho những lời chỉ trích. Tôi tuyên bố rằng chúng tôi có thể giải quyết bất kỳ DLP cụ thể nào trong $G$ với thời gian dự kiến $2t/\epsilon$ (và với xác suất $>4/5$ trong khoảng thời gian $3t/\epsilon$), cộng với thời gian cho các tác vụ đã xác định, giả sử một thuật toán $\mathcal A$ xác định cho một khóa công khai ngẫu nhiên trong thời gian $t$ với xác suất không biến mất $\epsilon$, và $q$ đủ lớn, chúng tôi có thể giảm giá khi đạt được một giá trị cụ thể trong một lựa chọn ngẫu nhiên trong $\mathbb Z_q$.
Yêu cầu bằng chứng:
Đầu tiên chúng tôi xây dựng một thuật toán mới $\mathcal A_0$ rằng khi nhập mô tả của thiết lập $(\mathcal G,g,q)$ và $h\in\mathcal G$
- chọn ngẫu nhiên đều $u\gets\mathbb Z_q$
- tính toán $y:=h\;g^u$
- chạy thuật toán $\mathcal A$ với đầu vào $y$ đóng vai trò là khóa công khai ngẫu nhiên
- bất cứ khi nào $\mathcal A$ yêu cầu một bảng điểm trung thực $(I, r, s)$
- chọn ngẫu nhiên đều $r\gets\mathbb Z_q$ và $s\gets\mathbb Z_q$
- tính toán $I:=g^s\;y^{-r}$
- cung cấp $(I, r, s)$ đến $\mathcal A$, có thể phân biệt được với bản ghi trung thực cho khóa công khai $y$
- nếu $\mathcal A$ đầu ra $I$ trong thời gian chạy được phân bổ của nó $t$, cố gắng xác thực
- (lưu ý: chúng tôi sẽ bắt đầu lại từ đây)
- chọn ngẫu nhiên đều $r\gets\mathbb Z_q$ và chuyển nó đến $\mathcal A$
- nếu $\mathcal A$ đầu ra $s$ trong thời gian chạy được phân bổ của nó $t$
- Séc $g^s\;y^{-r}\;\overset?=\;I$ và nếu vậy, kết quả đầu ra $(u,r,s)$
- nếu không, hủy bỏ mà không có kết quả.
thuật toán $\mathcal A_0$ là một thuật toán PPT cho bất kỳ đầu vào cố định nào $h\in\mathcal G$ có ở mỗi lần chạy xác suất $\epsilon$ đến đầu ra $(u,r,s)$, bởi vì $\mathcal A$ được chạy trong các điều kiện xác định $\epsilon$.
Chúng tôi tạo ra một thuật toán mới $\mathcal A_1$ mà trên đầu vào các thiết lập $(\mathcal G,g,q)$ và $h\in\mathcal G$
- Chạy lặp đi lặp lại $\mathcal A_0$ với đầu vào đó cho đến khi nó xuất ra $(u,r_1,s_1)$. Mỗi lần chạy có xác suất $\epsilon$ để thành công, do đó bước này dự kiến sẽ yêu cầu $t/\epsilon$ thời gian chạy $\mathcal A$.
- Khởi động lại $\mathcal A_0$ từ điểm khởi động lại đã lưu ý (tương đương: chạy lại từ đầu với cùng một đầu vào và băng ngẫu nhiên cho đến điểm khởi động lại, với độ ngẫu nhiên mới sau điểm khởi động lại), cho đến khi nó xuất ra $(u,r_2,s_2)$. Mỗi lần chạy có xác suất ít nhất $\epsilon$ để thành công (bằng chứng sau từ định lý về xác suất thành công không giảm của thuật toán Tôi cố gắng hỏi một tài liệu tham khảo cho), do đó, bước này dự kiến sẽ không yêu cầu nhiều hơn $t/\epsilon$ thời gian chạy $\mathcal A$.
- Trong trường hợp (được cho là rất có khả năng xảy ra) $r_1\ne r_2$, tính toán và xuất $z:=s_1-s_2-u\bmod q$.
Trong kết quả đó, cả hai lần chạy của $\mathcal A_0$ mà sản xuất $(u,r_1,s_1)$ và $(u,r_2,s_2)$ đã kiểm tra $g^{s_i}\;y^{-{r_i}}=I$ với $y=h^u$ cho cùng $u$ và $I$ điều đó $\mathcal A_0$ xác định, và $h$ chúng tôi đã đưa ra ở đầu vào của $\mathcal A_1$. Vì vậy $\mathcal A_1$ thành lập $z$ với $h=g^z$, do đó giải quyết DLP tùy ý $h$. Đó là thời gian chạy dự kiến dành cho $\mathcal A$ nhiều nhất là $2t/\epsilon$, và phần còn lại làm cho $\mathcal O(\log(q))$ hoạt động nhóm cho mỗi lần chạy $\mathcal A$ và mỗi bảng điểm trung thực mà nó yêu cầu.
$\lfloor3/\epsilon\rfloor$ chạy của $\mathcal A$ là đủ để ít nhất hai trong số họ thành công với xác suất tốt hơn $1-4\,e^{-3}>4/5$: xem cốt truyện này $1-(1-\epsilon)^{\lfloor3/\epsilon\rfloor}-\lfloor3/\epsilon\rfloor\,\epsilon\,(1-\epsilon)^{\lfloor3/\epsilon\rfloor-1} $