Xem xét một cặp $\mathbb{e}: \mathbb{G}_1\times \mathbb{G}_2\longrightarrow \mathbb{G}_T$ với máy phát điện $g_1$, $g_2$ vì $\mathbb{G}_1$, $\mathbb{G}_2$ tương ứng. Nhóm $\mathbb{G}_1$, $\mathbb{G}_2$, $\mathbb{G}_T$ có thứ tự nguyên tố nào đó $p$.
Đối với một cửa sập $s$, để cho $[g_1,g_1^s,\cdots,g_1^{s^N}], [g_2,g_2^s,\cdots,g_2^{s^N}]$ là chuỗi tham chiếu chung (mặc dù đối với một số lược đồ cam kết đa thức và Snark, tham số chung không chứa $g_2^{s^i}$ vì $i\geq 2$).
yếu tố đã cho $a,b\in \mathbb{G}_1$, tôi muốn chứng minh trong ZK rằng tôi biết một hằng số (trái ngược với đa thức bậc lớn hơn) $\alpha$ như vậy mà $a^{\alpha} = b$. cách hiệu quả nhất để làm điều này là gì?
Một vài ý tưởng tôi đã có:
Ý tưởng 1:
Đối với một phần tử được tạo ngẫu nhiên $a_2\in \mathbb{G}_2$ (thử thách), Prover gửi phần tử $b_2:= a_2^{\alpha}$.
Chuyên gia Xác minh thực hiện kiểm tra ghép nối $\mathbb{e}(a,b_2) = \mathbb{e}(a_2,b)$
ý tưởng 2
Nhà tiên tri chứng minh với kiến thức bằng không rằng anh ta biết một số đa thức $f(X)$ như vậy mà $a^{f(s)} = b$ (có nhiều cách đơn giản để thực hiện việc này, không quá khác biệt so với giao thức của Schnorr dành cho PoK của nhật ký rời rạc)
Prover gửi phần tử $b_2:= g_2^{s^N\cdot \alpha}$ (điều này là không thể nếu $\alpha = f(s)$ cho một số đa thức không cố định $f(X)$).
Người Xác minh xác minh bằng chứng được gửi ở Bước 1.
Chuyên gia Xác minh thực hiện kiểm tra ghép nối $\mathbb{e}(a,b_2) = \mathbb{e}(b,g_2^{s^N}) $
Có các giao thức hiệu quả hơn sẽ thực hiện công việc không? Tôi không đặc biệt thích ý tưởng dựa vào thuật toán băm tạo ra các phần tử ngẫu nhiên của nhóm $\mathbb{G}_2$ như những thách thức.