Điểm:0

Lựa chọn thông số Fiat-Shamir Logarit rời rạc

lá cờ ph

Dựa theo FiatâShamir heuristic có hai tham số của thuật toán: số nguyên tố lớn $p$ và gốc nguyên thủy $g$. Vì vậy, một số câu hỏi phát sinh:

  1. Số nguyên tố phải lớn như thế nào $p$ thì là ở? Làm thế nào để chọn $p$ để chẳng hạn như thuật toán PohligâHellman hoặc các thuật toán đã biết khác không thể phá vỡ nó?
  2. Cách chọn gốc nguyên thủy $g$? Theo như tôi biết, đó là một vấn đề NP
  3. Có an toàn không khi sử dụng cùng các giá trị của $p$$g$ cho một vài thử thách?
Кирилл Волков avatar
lá cờ ph
@fgrieu Tại sao nên sử dụng nhóm Schnor thay vì số nguyên tố an toàn?
Điểm:2
lá cờ cn

Hình như có sự nhầm lẫn ở đây.Như fgrieu đã nói một cách chính xác, Fiat-Shamir là một phương pháp để làm cho bằng chứng không có kiến ​​thức về đồng xu công khai (người xác minh trung thực) không tương tác. Bạn không cần chọn bất kỳ tham số nào cho Fiat-Shamir, ngoài hàm băm: tất cả các tham số khác là tham số của giao thức tương tác mà bạn đang thực hiện không tương tác hoặc của tuyên bố mà bạn đang cố gắng chứng minh. Thông thường, để chứng minh kiến ​​thức về logarit rời rạc, nhóm, trình tạo $g$và mô đun $p$, là một phần của mô tả của tuyên bố. Bằng chứng Schnorr là bằng chứng tương tác để xử lý các tuyên bố như vậy và Fiat-Shamir có thể được sử dụng để làm cho nó không tương tác.

Các tham số của câu lệnh thường sẽ được xác định theo ngữ cảnh mà bạn dự định sử dụng bằng chứng không có kiến ​​thức cho câu lệnh. Nói chung, bạn sẽ muốn sử dụng bằng chứng không kiến ​​thức về logarit rời rạc trên một nhóm mà việc tính toán logarit rời rạc được cho là khó trị (nếu không, thực sự không có ích lợi gì trong việc chứng minh kiến ​​thức về logarit rời rạc). Có rất nhiều tùy chọn tiêu chuẩn cho các nhóm như vậy (ví dụ: ed25519 với bất kỳ trình tạo nào, để sử dụng ví dụ về câu hỏi khác của bạn).

Điểm:1
lá cờ ng

Fiat-Shamir heuristic là một phương pháp chung để xây dựng sơ đồ bằng chứng (hoặc chữ ký) không tương tác từ sơ đồ bằng chứng tri thức tương tác. Một ví dụ sơ đồ tương tác có thể tuân theo heuristic Fiat-Shamir là giao thức trong một nhóm Schnorr. Đó là cách tôi sẽ diễn giải câu hỏi (câu trả lời khác thảo luận về quan điểm tổng quát hơn của kinh nghiệm Fiat-Shamir).

Nhóm Schnorr là nhóm con của bậc nguyên tố $q$, và máy phát điện $g$, sau đó nhóm nhân modulo một số nguyên tố $p$. Nhóm chính đó $\mathbb Z_p^*$ có đơn đặt hàng $\varphi(p)=p-1$. Vì thứ tự của một nhóm con phân chia thứ tự nhóm, $q$ phải là một phép chia nguyên tố $p-1$. Từ $g$ là một máy phát điện, nó phải sao cho $g^q\equiv1\pmod p$$g\not\equiv1\pmod p$. Nhóm Schnorr thường được phát biểu là ba số nguyên $(p,q,g)$.

Số nguyên tố phải lớn như thế nào $p$ thì là ở? Làm thế nào để chọn $p$ để chẳng hạn như thuật toán PohligâHellman hoặc các thuật toán đã biết khác không thể phá vỡ nó?

Để nhóm Schnorr được quan tâm về mật mã, Bài toán logarit rời rạc phải khó trong nhóm Schnorr. Điều này ngụ ý chống lại các thuật toán DLP đã biết. Thuật toán thực tế xác định kích thước yêu cầu của $p$ trong một nhóm Schnorr là biến thể DLP của GNFS, đó là phép tính chỉ số chuyên để $\mathbb Z_p^*$. Các kỷ lục hiện tại là bit 795 bit $p$và kích thước tối thiểu được đề xuất cho các ứng dụng hiện tại là 2048-bit hoặc 3072-bit cho "2030 và hơn thế nữa".

Nó cũng cần thiết mà $q$ đủ lớn để Pollard's rho cho DLP là không khả thi. Đó là chi phí khoảng $\Theta(\sqrt q)$ phép nhân nhóm. Do đó, khuyến nghị tối thiểu là 224-bit hoặc 256-bit $q$.

Những yêu cầu này là đủ để đảm bảo Pohlig-Hellman thuật toán là không sợ hãi. Đó là bởi vì Pohlig-Hellman yêu cầu giải một DLP trong mỗi nhóm con của thứ tự $q^k$ với $k\ge 1$, $q$ số nguyên tố và $q^k$ phân chia thứ tự của nhóm cơ sở; và $k=1$ là trường hợp dễ nhất.

Cách chọn gốc nguyên thủy $g$?

Thuật toán thời gian đa thức xác suất này sẽ làm:

  • chọn số nguyên tố ngẫu nhiên $q$ có kích thước mong muốn
  • chọn ngẫu nhiên chẵn $r$ cho số nguyên tố $p=qr+1$ có kích thước mong muốn
  • chọn ngẫu nhiên $s$ Trong $[2,p-2]$và tính toán $g=s^{(p-1)/q}\bmod p$, cho đến khi $g\ne1$ (gần như chắc chắn)
  • như một kiểm tra tính nhất quán, xác minh $g^q\bmod p=1$ (được giữ trừ khi có lỗi).

Có an toàn không khi sử dụng cùng các giá trị của $p$$g$ cho một vài thử thách?

Đúng. Việc biết giải pháp cho một DLP cụ thể trong nhóm Schnorr rõ ràng không giúp giải quyết các DLP ngẫu nhiên không liên quan khác trên cùng một nhóm Schnorr (vẫn có khả năng một số tính toán trước có thể được phân bổ giữa một số DLP, nhưng đó là biên).

Tại sao nên sử dụng nhóm Schnorr thay vì số nguyên tố an toàn $p$?

Một số nguyên tố an toàn $p$ tương ứng với $p-1=2q$, hoặc $r=2$ ở trên. Mặc dù về mặt kỹ thuật vẫn phù hợp với định nghĩa của nhóm Schnorr, nhưng nó không đáp ứng động lực chính của nhóm Schnorr: có trật tự $q$ có kích thước nhỏ hơn nhiều so với $p$. Điều này thật thú vị vì số mũ nằm trong $\mathbb Z_q$, do đó ngắn hơn $q$ dẫn đến lũy thừa nhanh hơn, bí mật ngắn hơn và (trong một biến thể phổ biến của phương pháp phỏng đoán Fiat-Shamir) chữ ký ngắn hơn. Ngoài ra, việc tìm kiếm của $p$ có liên quan nhiều hơn một chút. Theo như chúng tôi biết, sử dụng một nhóm Schnorr với kích thước đủ lớn $q$$p$ an toàn như sử dụng số nguyên tố an toàn $p$ có kích thước tương đương.

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