ฉันได้อ่านบางส่วนแล้วตั้งแต่โพสต์คำถามนี้ และตอนนี้ฉันเข้าใจเรื่องนี้ดีขึ้นแล้ว ดังนั้นฉันจะตอบเอง
ความสับสนเกิดจากความแตกต่างระหว่าง ศูนย์ความรู้ และ ผู้ตรวจสอบความถูกต้องเป็นศูนย์ความรู้. พิจารณาผู้ตรวจสอบ $V^0$ ซึ่งจะทำให้เกิดการสุ่ม $m$เข้ารหัสเพื่อสร้างข้อความเข้ารหัส $ค$ แล้วส่งผ่านช่องไปที่ $พี$. $พี$ (สันนิษฐานว่ายังซื่อสัตย์) จากนั้นจะตอบกลับด้วย $m$. ปฏิสัมพันธ์นี้เป็นศูนย์ความรู้เล็กน้อย โดยสัญชาตญาณ $V^0$ ไม่ได้เรียนรู้อะไรเลยเพราะเขารู้แล้ว $m$ - อย่างเป็นทางการ เราสามารถสร้างเครื่องจำลองซึ่งสร้างการถอดเสียงการพิสูจน์ที่ผิดพลาดโดยการสร้างการสุ่ม $m$ และทำการเข้ารหัส อย่างไรก็ตาม, $V^0$ คือ ผู้ตรวจสอบที่ซื่อสัตย์ - เป็นตัวตรวจสอบที่ทำหน้าที่ตามโปรโตคอล
พิจารณาตัวตรวจสอบที่เป็นอันตรายต่อไปนี้ $วี^*$: ไม่ได้ทำการเข้ารหัสใด ๆ และจะส่งชุดข้อความเข้ารหัสเสมอ $ค^*$. ตอนนี้ได้เรียนรู้บางอย่าง - การถอดรหัสของ $ค^*$ซึ่งไม่เป็นที่รู้จักมาก่อนตั้งแต่นั้นเป็นต้นมา $ค^*$ ไม่ใช่ผลลัพธ์ของการเข้ารหัสที่รู้จัก แต่เป็นผลมาจากตัวเลือกเฉพาะ คำจำกัดความของความรู้เป็นศูนย์กำหนดไว้ว่า สำหรับผู้ตรวจสอบทั้งหมด ต้องมีเครื่องจำลอง $วี^*$ ไม่ได้ ถูกจำลองโดยไม่รู้ความลับ เนื่องจากง่ายต่อการตรวจสอบว่าการถอดรหัสนั้นถูกต้องหรือไม่โดยการเข้ารหัสซ้ำ ดังนั้น การถอดรหัสที่ถูกต้องของ $ค^*$ จะต้องเป็นที่รู้จักโดยตัวจำลอง ซึ่งในกรณีนี้ตัวจำลองจะต้องสามารถถอดรหัสข้อความรหัสตามอำเภอใจ ซึ่งไม่สามารถทำได้หากไม่มีการเข้าถึงข้อมูลลับ ดังนั้นโครงร่างจึงไม่ใช่ความรู้ที่เป็นศูนย์ โดยไม่คำนึงถึงระบบการเข้ารหัสที่ใช้ (เว้นแต่ว่าระบบการเข้ารหัสลับจะใช้งานไม่ได้ ดังนั้นโปรแกรมจำลองสามารถถอดรหัสข้อความโดยอำเภอใจในเวลาพหุนาม ซึ่งในกรณีนี้การพิสูจน์นั้นเป็นสิ่งที่สงสัย) โปรดทราบว่านี่เป็นสิ่งสำคัญ $วี^*$ ส่ง ciphertext คงที่ทุกครั้ง - ถ้า $ค^*$ จะถูกสุ่มเลือกสำหรับการโต้ตอบแต่ละครั้ง การถอดเสียงสามารถปลอมแปลงได้ง่าย
นี่ไม่ใช่ส่วนหนึ่งของคำถามเดิม แต่ฉันคิดว่าสิ่งสำคัญคือต้องหยิบยกขึ้นมา นี่ไม่ใช่หลักฐานความรู้ที่ถูกต้อง ซึ่งฉันตั้งใจให้เป็นเช่นนั้น ในความเป็นจริง (หมายถึงโดย $S_\คณิตศาสตร์แคล{M}$ โครงร่างนี้ใช้กับ cryptosystem บางตัว $\คณิตศาสตร์แคล{M}$), "$S_\คณิตศาสตร์แคล{M}$ เป็นการพิสูจน์ความรู้" $\นัย$ "การถอดรหัส oracle เข้าถึง $\คณิตศาสตร์แคล{M}$ อนุญาตการกรองคีย์ส่วนตัว" นี่เป็นผลสืบเนื่องทันทีจากการขาดขั้นตอนการผูกมัดที่จะใช้ใน $\ซิกม่า$-มาตรการ. การพิสูจน์ความรู้กำหนดให้เราสามารถเขียนตัวแยกข้อมูลได้ $E$ ซึ่งสามารถดึงความลับจาก $พี$ หากได้รับอนุญาตให้ย้อนกลับสถานะ อย่างไรก็ตาม, $พี$ ตามที่อธิบายไว้ที่นี่เป็นแบบไร้สัญชาติ - โดยไม่คำนึงว่าการโต้ตอบแบบใดหรือเมื่อมีการส่งอินพุตในการโต้ตอบ เอาต์พุตจะเหมือนกัน - ดังนั้นจึงมีตัวแยกที่มีประสิทธิภาพสำหรับ $พี$ ทันทีเป็นนัยว่า $\คณิตศาสตร์แคล{M}$ ถูกทำลายอย่างสมบูรณ์ด้วยการเข้าถึง Oracle ถอดรหัส นี่เป็นเพียงหลักฐานเชิงโต้ตอบที่พิสูจน์ได้ (ด้วย $\epsilon$, ระยะขอบสำหรับข้อผิดพลาด, กำหนดไว้คลุมเครือ) ว่า $พี$ สามารถถอดรหัสข้อความโดยพลการ - ไม่เป็นไปตามข้อกำหนดในการพิสูจน์ความรู้ของคีย์ส่วนตัว