TL, DR: คำเชื่อมของง่าย $\ซิกม่า$-โปรโตคอลสามารถพิสูจน์ข้อความผสมนี้ได้ด้วยความรู้ที่เป็นศูนย์ อย่างไรก็ตาม หลักฐานค่อนข้างใหญ่
ขั้นแรก เรามาแยกย่อยข้อความประสมของคุณออกเป็นข้อความง่ายๆ สังเกตว่าโดยพื้นฐานแล้วคุณต้องการพิสูจน์ด้วยความรู้เป็นศูนย์สำหรับ $C_1=m^e$ และ $C_2=g^m$ ความสัมพันธ์ต่อไปนี้ $\mathcal{R}(x,\omega)$ ($x$ เป็นพารามิเตอร์สาธารณะและ $\โอเมก้า$ เป็นพยาน) ถือได้ว่า $$\mathcal{R}=\{((C_1,C_2),(m,l)):m\in QR_{N}\land C_1=m^e\bmod{N}\land C_2=g^m \bmod{p}\}, $$
ที่ไหน $l$ เป็นรากที่สองของ $m\bmod{N}$กล่าวคือพยานคือ $(ม.,ล.)$ คู่. เพื่อความง่าย ให้ใช้สัญลักษณ์ต่อไปนี้สำหรับข้อความพื้นฐาน: $$\mathcal{R}_1=\{((C_1,C_2),(m,l)):m\in QR_{N}\}, $$
$$\mathcal{R}_2=\{((C_1,C_2),(m,l)): C_1=m^e\bmod{N}\}, $$
$$\mathcal{R}_3=\{((C_1,C_2),(m,l)):C_2=g^m\bmod{p}\}. $$
โปรดทราบว่างบพื้นฐานทั้งสอง $\คณิตศาสตร์แคล{R}_2$ และ $\คณิตศาสตร์แคล{R}_3$ ง่ายต่อการพิสูจน์ด้วย $\ซิกม่า$-โปรโตคอล เนื่องจากทั้งสองความสัมพันธ์พิสูจน์ความรู้ของพรีอิมเมจภายใต้กลุ่มโฮโมมอร์ฟิซึ่ม (กล่าวคือ ของ $w$ น่าพอใจ $x=\phi(ว)$). ในกรณีของ $\คณิตศาสตร์แคล{R}_2$ กลุ่มโฮโมมอร์ฟิซึ่ม $\phi(\omega)=\omega^e$, ขณะที่อยู่ใน $\คณิตศาสตร์แคล{R}_3$, โฮโมมอร์ฟิซึ่มคือ $\phi(\omega)=g^{\omega}$. ข้อความเหล่านี้ค่อนข้างเป็นมาตรฐาน และคุณสามารถหาวิธีการพิสูจน์ภาพล่วงหน้าของโฮโมมอร์ฟิซึ่มได้ใน Bangerter และคณะ หรือใน หนังสือ Boneh-Shoupและอื่น ๆ อีกมากมาย
เพื่อพิสูจน์ $\คณิตศาสตร์แคล{R}_1$ เป็นเรื่องยากเล็กน้อยตั้งแต่แรกเห็นตั้งแต่นั้นเป็นต้นมา $m$ จำเป็นต้องเก็บเป็นความลับและเราต้องการพิสูจน์สิ่งนั้น $m$ เป็นเศษเหลือกำลังสอง นั่นคือ $m\ ใน QR_N$. ในการปรับใช้เกือบทั้งหมดของระบบเข้ารหัสลับ RSA $e$ เป็นเรื่องแปลก (ฉันคิดว่านี่เป็นกรณีในใบสมัครของคุณด้วย) ดังนั้น $C_1=m^e\in QR_{N} \iff m\in QR_{N}$. ฉันยังถือว่าผู้เข้ารหัสรู้ $l$หนึ่งในรากที่สองของ $m$เนื่องจากไม่ทราบการแยกตัวประกอบ หากตัวเข้ารหัสไม่รู้จักเช่น $l$แล้วพิสูจน์ไม่ได้ว่าเป็นเศษซากกำลังสอง เพราะไม่ทราบการแยกตัวประกอบ จากการสนทนานี้ตอนนี้ $\คณิตศาสตร์แคล{R}_1$ โดยพื้นฐานแล้วเกี่ยวข้องกับการพิสูจน์ข้อความต่อไปนี้: $$\mathcal{R}_1=\{((C_1),(l)):C_1=l^{2e}\bmod{N}\}, $$
ซึ่งเป็นอีกครั้งที่พิสูจน์ความรู้ของ preimage ของกลุ่มโฮโมมอร์ฟิซึ่ม เรารู้วิธีพิสูจน์ข้อความนี้
ในการรวมสิ่งเหล่านี้เข้าด้วยกันเพื่อรับการพิสูจน์ที่ไม่มีความรู้สำหรับข้อความผสม $\mathcal{R}$ผู้ตรวจสอบเพียงแค่ต้องส่งคำท้าแบบสุ่มที่เหมือนกันสำหรับข้อความพื้นฐานทั้งหมด (คำท้าแบบสุ่มจะแตกต่างกันไปตามการทำซ้ำของโปรโตคอล!)
ขนาดของหลักฐานคืออะไร? สำหรับ $\ซิกม่า$-protocols ในกลุ่มของคำสั่งที่ไม่รู้จัก ความถูกต้องผิดพลาดสูง ดังนั้นจำเป็นต้องทำซ้ำ $\ซิกม่า$-โปรโตคอลหลายครั้งเพื่อให้ได้ระดับความสมบูรณ์ที่เหมาะสม ในการทำซ้ำแต่ละครั้ง ข้อผิดพลาดด้านเสียงจะลดลง $\ประมาณ 1/2$. ดังนั้น โพรโทคอลต้องถูกทำซ้ำตามลำดับเพื่อรับข้อผิดพลาดความรู้เล็กน้อยที่เพียงพอ (เช่น $80$ จำเป็นต้องทำซ้ำตามลำดับเพื่อให้ได้ข้อผิดพลาดของความรู้ $1/2^{80}$). อันจะส่งผลให้มีการพิสูจน์ประกอบด้วย $2*2*80=320$ องค์ประกอบกลุ่มสำหรับ $3$ คำสั่งพื้นฐาน (2 คำสั่งเกิดขึ้นในกลุ่ม RSA ดังนั้นเราจึงต้องทำซ้ำหลายครั้ง)
เพื่อหลีกเลี่ยงข้อจำกัดด้านประสิทธิภาพนี้ คุณจำเป็นต้องใช้สตริงอ้างอิงทั่วไปเพื่อลดขนาดการพิสูจน์ ดู Bangerter และคณะ
หวังว่านี่จะช่วยได้! แจ้งให้เราทราบหากฉันทิ้งพื้นที่สีเทาไว้ในคำตอบ!