Score:0

อัลกอริทึม Grover สำหรับ AES ในโหมด CBC

ธง in

สวัสดี,
ฉันสงสัยว่าเป็นไปได้ในทางทฤษฎีหรือไม่ที่จะใช้ Grover alrogithm เพื่อทำลาย AES ในโหมด CBC สมมติว่าฉันมีคู่ข้อความธรรมดา / ข้อความเข้ารหัสประมาณ 1,000 คู่และความยาวของคีย์คือ 128 บิต ฉันคิดอย่างนี้:

  1. สำหรับแต่ละคู่ของข้อความธรรมดาและข้อความไซเฟอร์ให้ใช้ข้อความธรรมดา 16 ไบต์แรกและข้อความไซเฟอร์ 16 ไบต์แรกเท่านั้น (พวกเขาจะระบุว่าเป็น P, ค โดยที่ n คือคู่ที่ n)
  2. จดชุดสมการที่มีตัวแปรที่ไม่รู้จักหนึ่งตัว - คีย์ (คีย์ถูกระบุว่าเป็น K)
    เออีเอส-128(ค1, K) â AES-128(ค2, K) = P1 â P2
    เออีเอส-128(ค3, K) â AES-128(ค4, K) = P3 â P4
    เออีเอส-128(ค5, K) â AES-128(ค6, K) = P5 â P6
    ...
    เออีเอส-128 เป็นฟังก์ชันถอดรหัส AES-128
    คือ XOR
  3. ใช้อัลกอริทึม Grover เพื่อค้นหา K จากสมการที่ให้ไว้ด้านบน หากพบกุญแจสำคัญในการกำหนด IV นั้นง่ายโดยใช้สมการนี้:
    เออีเอส-128(ค1, K) = P1 â IV

สามารถใช้อัลกอริทึม Grover เพื่อกลับชุดสมการจากขั้นตอนที่ 2 ได้หรือไม่ ฉันต้องใช้คู่ข้อความธรรมดา/ข้อความไซเฟอร์เท็กซ์จำนวนเท่าใดจึงจะระบุคีย์และ IV เฉพาะสำหรับความยาวคีย์ 128, 192 และ 256 บิตได้

Score:0
ธง my

$\text{AES-128}_d(C_1, K) \oplus \text{AES-128}_d(C_2, K) = P_1 \oplus P_2$

ไม่ถือว่าทั้งสอง ciphertexts แบ่งปัน IV เดียวกัน? โดยปกติแล้วพวกเขาไม่

ไม่ว่าในกรณีใด แม้ว่าคุณจะไม่รู้จัก IV ใดๆ เลย แต่วิธีที่ง่ายกว่าก็คือถ้าคุณมีบล็อกข้อความสองบล็อกที่รู้จักซึ่งมีข้อความธรรมดา $(พี_เอ, พี_บี)$ และไซเฟอร์เท็กซ์ที่เกี่ยวข้อง $(C_a, C_b)$, แล้ว

$$\text{AES-128}_e(P_b \oplus C_a, K) = C_b$$

สิ่งนี้ถือได้ไม่ว่าจะใช้ IV อะไรก็ตาม

สามารถใช้อัลกอริทึม Grover เพื่อกลับชุดสมการจากขั้นตอนที่ 2 ได้หรือไม่

ฉันคิดว่า อย่างไรก็ตาม หากคุณมีชุดของข้อความบล็อกเดียว คุณต้องถือว่า IV ทั้งหมดเหมือนกัน หากไม่รู้จักและสุ่ม คุณก็จะไม่สามารถอนุมานอะไรได้

pajacol avatar
in flag
ฉันควรชี้แจงว่าฉันหมายความว่า IV นั้นเหมือนกันจริง ๆ และฉันรู้เพียง 16 ไบต์แรกของแต่ละข้อความธรรมดา
Score:0
ธง us

อัลกอริทึมของ Grover จะทำงานกับ CBC คุณหมายความว่าคุณมีข้อความธรรมดา/ข้อความเข้ารหัสหลายพันข้อความ แต่ละข้อความมี IV ของตัวเองหรือไม่

ฉันไม่แน่ใจว่าคุณกำลังทำอะไรในขั้นตอนที่ 2 ฉันคิดว่าโดยทั่วไปแล้ว IV ถือว่าเป็นส่วนหนึ่งของไซเฟอร์เท็กซ์ ดังนั้นหากคุณมีไซเฟอร์เท็กซ์ คุณมี IV แล้วคุณก็จะได้สมการดังนี้

เออีเอส-128$_d$(ค$_1$, K) = IV $\oบวก$ พี$_1$

เออีเอส-128$_d$(ค$_2$, K) = ค$_1 \oบวก$ พี$_2$

เป็นต้น

สำหรับอัลกอริทึมของ Grover เนื่องจากคุณรู้จักด้านขวามือ และคุณทราบอินพุตของการถอดรหัส AES คุณสามารถค้นหาผ่านช่องว่างของ K และสำหรับ oracle ให้ใช้วงจรเพื่อดำเนินการถอดรหัส AES ของ C$_1$, ค$_2$ฯลฯ แล้วเปรียบเทียบกับค่าทางด้านขวามือ

เพื่อความแน่ใจว่าค่าที่ส่งคืน K นั้นถูกต้อง คุณจะต้องใช้เพียง 2 บล็อก สำหรับ AES-128 (เช่น แค่ C$_1$ และซี$_2$ ของหนึ่งข้อความ) 2 บล็อกสำหรับ AES-192 และ 3 บล็อกสำหรับ AES-256 โดยทั่วไปหากคุณใช้ $r$ บล็อกแต่ละอันมี $n$ บิตและด้วยคีย์ของ $k$ บิต ความน่าจะเป็นที่การค้นหาของ Grover จะพบคีย์ที่ถูกต้องนั้นเกี่ยวกับ $e^{-2^{k-rn}}$. ดังนั้นหาก $k < rn$คุณจะรับประกันผลลัพธ์ที่ถูกต้องโดยพื้นฐาน (ดูส่วน "กุญแจปลอม" ในหน้า 4 ของ กระดาษแผ่นนี้ สำหรับรากศัพท์)

pajacol avatar
in flag
ฉันหมายความว่า IV เหมือนกันและฉันรู้เพียง 16 ไบต์แรกของแต่ละข้อความล้วน แต่จำนวนคู่ 16 ไบต์เหล่านี้อยู่ที่ประมาณ 1,000
Sam Jaques avatar
us flag
อ่า ดังนั้นคุณจะสามารถตรวจสอบ AES-128$_d$(C$_1$, K)=IV$\oplus$ P$_1$ สำหรับแต่ละข้อความเท่านั้น ฉันคิดว่าคำตอบของฉันจะเหมือนกัน แต่คุณจะใช้ C$_1$/P$_1$ จาก 2 หรือ 3 ของคู่ 16 ไบต์

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา