Điểm:0

Giá trị lớn nhất của N trong bài toán logarit rời rạc là bao nhiêu?

lá cờ in

Tôi có một số mã, mã này có thể giải quyết vấn đề logarit rời rạc trong khoảng thời gian ~ O(0,5n). Tuy nhiên, điều này chỉ hoạt động nếu, trong trường hợp sau, N nhỏ hơn P:

G^N (chế độ P). Để rõ ràng, chương trình của tôi có thể tìm ra giá trị của N dựa trên G và P miễn là N nằm trong khoảng từ 1 đến P (tương ứng bao gồm và loại trừ).

Điều này sẽ hữu ích cho việc bẻ khóa thứ gì đó như Diffie-Hellman, nhưng tôi có một câu hỏi: Trong hầu hết các bài toán logarit rời rạc như bài toán này, thông thường chỉ chọn các giá trị của N trong khoảng từ 1 đến P?

Ngoài ra, tôi không chắc liệu đây có phải là diễn đàn phù hợp cho loại điều này hay không, vui lòng thông báo cho tôi nếu không.

Fractalice avatar
lá cờ in
Nếu một giải pháp tồn tại, thì phải tồn tại một giải pháp khác thỏa mãn các ràng buộc của bạn, bởi vì $G^N \equiv G^{ N \mod{P-1}} \pmod{P}$ (Tôi cho rằng $P$ là số nguyên tố ở đây) . Nói cách khác, cộng hoặc trừ $P-1$ trong số mũ không thay đổi bất cứ điều gì.
Fractalice avatar
lá cờ in
Làm thế nào $n$ có liên quan đến $N$?
Darcy Sutton avatar
lá cờ in
n chỉ là P - 1, vì trong thuật toán của tôi, số bước cần hoàn thành tăng tương ứng với kích thước của P - 1.
Điểm:1
lá cờ ng

Vấn đề giải quyết cho $N$ phương trình $G^N\tương đương A\pmod P$ cho các số nguyên đã cho $P$, $G$, $A$ thường được nêu cho số nguyên $N$ với $0<N\le Q$ cho một số $Q<P$.

Chức năng $N\mapsto G^N\bmod P$ là định kỳ. Do đó nếu $N$ là một giải pháp, tập hợp tất cả các giải pháp thu được bằng cách thêm bội số của chu kỳ¹ của hàm đó vào đó $N$. Vì vậy thật vô nghĩa khi xem xét $N$ lớn hơn khoảng thời gian nếu chúng tôi có thể tìm thấy nó, trong trường hợp đó, chúng tôi chọn giới hạn trên cho $P$ bằng khoảng thời gian đó, và đặt tên cho nó $Q$. Trong mọi trường hợp, kể từ khi $G^N\bmod P$ (khi không $0$) thuộc các số nguyên trong $[1,P-1]$, trong đó có $P-1$ yếu tố, khoảng thời gian không thể vượt quá $P-1$, vì thế $Q<P$.

Thời kỳ đó $Q$ là thứ tự của $G$ modulo $P$, đó là số nguyên nhỏ nhất $Q$ với $G^Q\equiv1\pmod P$. Nó phụ thuộc vào $G$. Nó là một ước số của $\lambda(P)$, ở đâu $\lambda$Hàm Carmichael. $\lambda(P)$$P-1$ khi nào $P$ là số nguyên tố, thấp hơn nếu không.

Khi phân tích thừa số của $P$ đã biết (kể cả số nguyên tố $P$), $\lambda(P)$ rất dễ tính toán, và thứ tự của $G$, là ước của $\lambda(P)$, cũng dễ tính toán.

Thực hành tiêu chuẩn trong mật mã là $P$ một số nguyên tố lớn (ví dụ: ít nhất 1024 bit, tức là 309 chữ số thập phân) và $Q$ lệnh của $G$ modulo $P$, do đó $Q$ một ước số của $P-1$. Tùy thuộc vào hệ thống mật mã có thể được $Q=P-1$, hoặc số nguyên tố $Q=(P-1)/2$, hoặc một số nguyên tố lớn nhẹ $Q$ (ví dụ: ít nhất 160 bit, tức là 49 chữ số thập phân) chia $P-1$. Hai cái trước phổ biến trong Diffie-Hellman, cái sau trong chữ ký Schnorr và DSA.

Tùy thuộc vào độ lớn của $P$$Q$, các thuật toán tốt nhất mà chúng tôi biết để tìm $N$ là một trong hai

  • Pollard's rho, chi phí nào là $\mathcal O(\sqrt Q)$ phép nhân modulo $P$.
  • phép tính chỉ số, mà chi phí tăng chậm hơn đáng kể khi $\log (Q)\lesssim\log(P)$.

¹ Chúng tôi xác định các thời kỳ là thời kỳ tích cực thấp nhất.

Darcy Sutton avatar
lá cờ in
Cảm ơn bạn. Điều này đã giúp rất nhiều.

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