ฉันกำลังดูแนวคิดต่อไปนี้สำหรับการใช้คีย์สมมาตรเพื่อเข้ารหัสข้อความหลายข้อความ (การสื่อสารไปมาระหว่างอลิซและบ็อบ) สรุปได้ดังนี้
- ทั้งสองฝ่ายตกลงตามคีย์
- ทั้งสองฝ่ายสร้าง $2^n$ บิตโดยใช้ PRG (ซึ่งฉันเชื่อว่าถูกเพาะด้วยคีย์) เนื่องจาก PRGs ถูกกำหนดไว้แล้ว ทั้งสองฝ่ายจึงมีเหมือนกัน $2^n$ บิต
- เมื่อฝ่ายหนึ่งต้องการเข้ารหัสข้อความ พวกเขาเลือก เค ดัชนีสุ่มที่ไหน เค คือความยาวของข้อความ & xor ข้อความที่มีบิตอยู่ตรงนั้น เค ดัชนี พวกเขาส่งข้อความและดัชนี
- ผู้โจมตีไม่ทราบบิตพื้นฐาน ดังนั้นการมีดัชนีจึงไม่มีประโยชน์
- อีกด้านหนึ่งรับดัชนี / ข้อความ & ดำเนินการย้อนกลับตามข้างต้น
ที่ผมงงคือต้องใช้ PRG หรือเปล่าครับ
ตัวอย่างเช่น: ทำไมทั้งสองฝ่ายไม่ตกลงที่จะทำซ้ำคีย์ (ซึ่งเป็นความลับจากผู้โจมตี) สำหรับ $\frac{2^n}{k}$ ครั้งที่ เค คือความยาวของคีย์
เนื่องจากผู้โจมตีไม่ทราบรหัส สิ่งนี้ควรยังคงปลอดภัยใช่ไหม
ในทางทฤษฎี: ทั้งสองฝ่ายสามารถตกลงที่จะทำ {1, 2, 3, 4 ... $2^n$} บิต "สุ่ม" เนื่องจากหากมีความสามารถในการเจรจาโดยใช้คีย์ลับที่ใช้ร่วมกัน ก็ควรมีความสามารถในการเจรจาเพื่อสร้างบัฟเฟอร์ด้วยใช่ไหม