สิ่งนี้ไม่ปลอดภัยมาก ใครก็ตามสามารถสร้างหลักฐานปลอมได้ว่าข้อความไซเฟอร์สองตัวนั้นเทียบเท่ากัน
ที่ให้ไว้ $c_1$ และ $c_2$เลือกแบบสุ่ม $x$ และปล่อยให้ $a_1=c_1x\mod {n^2}$ และ $a_2=c_2x\mod {n^2}$. เราเห็นอย่างนั้น $a_1c_2\equiv a_2c_1\pmod {n^2}$ ซึ่งตรงกับเกณฑ์การตรวจสอบ
เป็นเครื่องพิสูจน์ว่า $c_1$ และ $c_2$ เป็นการเข้ารหัสที่มีค่าเท่ากันเท่ากับแสดงว่า $c_1/c_2\pmod{n^2}$ เป็น $n$กำลังไฟ นี่คือโปรโตคอล sigma สำหรับการพิสูจน์ว่าคุณสามารถสร้าง non-interactive กับ Fiat-Shamir schtick ตามปกติได้
เพื่อพิสูจน์ว่า $k$ เป็น $n$th พาวเวอร์โมดูโล $n^2$
เราคิดว่าผู้พิสูจน์ได้รับการกอปรด้วย $s:k\equiv s^n\pmod{n^2}$.
ความมุ่งมั่น
ผู้พิสูจน์สร้างตัวเลขสุ่มที่เหมือนกัน $r\mod{n^2}$คำนวณ $c=r^n\mod{n^2}$ และเผยแพร่ $ค$.
ท้าทาย
ผู้ตรวจสอบขอให้ผู้พิสูจน์เผยแพร่อย่างใดอย่างหนึ่ง $r$ ดังนั้น $r^n=c\mod{n^2}$ หรือ $r'$ ดังนั้น $r'^n=ck\mod{n^2}$.
การตอบสนอง
Prover เผยแพร่อย่างใดอย่างหนึ่ง $r$ หรือ $r'=rs\mod{n^2}$ ตามความท้าทาย
หากมีคำตอบที่เป็นไปได้ทั้งสองแบบสำหรับผู้ตอบกลับ ผู้ตอบกลับก็จะรู้ $s=r'/r$ เพื่อให้ความรู้ในคำตอบทั้งสองพิสูจน์ความรู้ $s$. ดังนั้นโปรโตคอลจึงถูกต้องโดยมีความเป็นไปได้สูงเมื่อจำนวนการวนซ้ำของโปรโตคอลเพิ่มขึ้น
Verifer สามารถสร้างการถอดเสียงโปรโตคอลแบบสุ่มสำหรับตนเองโดยเลือกความท้าทายก่อน จากนั้นจึงตอบสนอง จากนั้นตามด้วยความมุ่งมั่น ดังนั้นโปรโตคอลจึงไม่มีความรู้