Điểm:2

Nghị định thư Chaum-Pedersen

lá cờ ph

Tôi là nhà phát triển phần mềm mới vào nghề và tôi cần triển khai một hệ thống xác thực rất đơn giản dựa trên Giao thức Chaum-Pedersen ZKP. Tôi không biết gì về mật mã và tôi nhờ bạn giúp tôi hiểu một điều về thuật toán. Một thuật toán trông như sau: nhập mô tả hình ảnh ở đây

tôi chỉ không thể có được những gì $q$ Là. Tôi đã đọc về giao thức trong Mật mã học: Giới thiệu của Nigel Smart. Có một cụm từ: 'Chúng tôi cho rằng $g$$h$ tạo các nhóm theo thứ tự nguyên tố $q'$ nhưng nó không nói gì với tôi. Tôi đã thử google 'nhóm thứ tự chính' nhưng nó luôn được liên kết để chứng minh rằng nó đã được đạp xe và những thứ khác. Tôi xin lỗi nếu câu hỏi này ngu ngốc nhưng tôi không có ai khác có thể giúp tôi. Sẽ thật tuyệt nếu có một ví dụ với các con số.

Điểm:3
lá cờ my

Tôi không cảm thấy rằng đây là nơi để hướng dẫn về lý thuyết số cơ bản, vì vậy tôi sẽ chỉ đề cập đến các khía cạnh liên quan ngay đến câu hỏi của bạn.

Khi chúng ta lấy số nguyên tố $p$ và một giá trị $g$ (không phải là bội số của $p$), sau đó nếu chúng ta xem xét chuỗi các giá trị $g^0 \bmod p, g^1 \bmod p, g^2 \bmod p, ...$, sau đó chúng tôi thấy rằng tại một thời điểm nào đó, chuỗi sẽ trở về 1 và sau đó, bắt đầu lại. Ta gọi thứ tự của $g$ số lượng giá trị mà chúng ta trải qua trước khi đạt đến 1, nghĩa là, $g^q \bmod p = 1$, và đó là giá trị nhỏ nhất của $q > 0$ thỏa mãn điều này.

Vì vậy, khi Smart nói rằng $g$$h$ có cùng thứ tự nguyên tố, anh ấy đang nói rằng $g^q \bmod p = 1$, $h^q \bmod p = 1$$q$ là số nguyên tố (và trong cả hai trường hợp, không có giá trị nào nhỏ hơn của $q$).

Làm thế nào để bạn tìm thấy một $g, h, q$? Trên thực tế, hóa ra nó không khó lắm; $q$ sẽ luôn chia $p-1$ như nhau; chúng ta có thể chọn một số nguyên tố $p$ để thực hiện việc tìm kiếm một giá trị nguyên tố như vậy $q$ dễ dàng. Ngoài ra, nếu $q$ là một số nguyên tố như vậy thì với mọi giá trị $u$ không có $p$ như một yếu tố, giá trị $j = u^{(p-1)/q} \bmod p$ sẽ là 1 hoặc có thứ tự $q$; vậy việc tìm các giá trị $g, h$ dễ.

Bạn hỏi một ví dụ, tôi sẽ đưa cho bạn một món đồ chơi - chúng ta sẽ chọn $p=23$$q=11$ (lưu ý rằng $11$ phân chia $23-1$ đồng đều) và $g=4$$h=9$ (thật dễ dàng để xác minh rằng cả hai đều có thứ tự 11). Chúng tôi cũng chọn một giá trị bí mật $x$ (chúng tôi sẽ chọn 6) và xuất bản $y_1 = g^x \bmod p = 4^6 \bmod 23 = 2$$y_2 = h^x \bmod p = 9^6 \bmod 23 = 3$

Sau đó, người tục ngữ chọn một cách ngẫu nhiên $k$, ta sẽ tùy ý chọn $k=7$

Người tục ngữ sau đó tính toán $r_1 = g^k \bmod p = 4^7 \bmod 23 = 8$$r_2 = h^k \bmod p = 9^7 \bmod 23 = 4$, và truyền chúng. Lưu ý rằng chúng tôi đã thực hiện các phép tính này theo modulo $p$ - điều đó đã được ẩn trong giao thức (các hoạt động mô đun như vậy thường được hiểu).

Bây giờ, người thách thức chọn một giá trị $c$; chúng tôi sẽ chọn $4$; và gửi nó.

Người tục ngữ sau đó tính toán $s = (k - c \cdot x) \bmod q = (7 - 4 * 6) \bmod 11 = 5$ (lưu ý: trong toán học, $x \bmod q$ hoạt động luôn trả về giá trị giữa $0$$q-1$ để có thể $x - (x \bmod q)$ là bội số của $q$ - nhiều ngôn ngữ máy tính không tuân theo điều đó - những ngôn ngữ đó sai) và gửi nó.

Người xác minh sau đó kiểm tra xem $r_1 = 8$ giống như $g^s \cdot y_1^c \bmod p = 4^5 \cdot 2^4 \bmod 23 = 8$$r_2 = 4$ giống như $h^s \cdot y_2^c \bmod p = 9^5 \cdot 3^4 \bmod 23 = 4$; cả hai kiểm tra, và vì vậy điều này vượt qua.

Bạn cũng làm tương tự, chỉ với các giá trị có độ dài hàng trăm chữ số, không phải ví dụ về đồ chơi mà tôi đã đưa ra.

lá cờ ph
Chúa ơi, bạn đã cứu mạng tôi. cảm ơn 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.