หาก IVs สำหรับเลเยอร์ที่เข้ารหัสทั้งสองถูกส่งไปในที่โล่ง แสดงว่ามีการโจมตีการกู้คืนคีย์ข้อความธรรมดาที่รู้จักทั่วไปซึ่งทำงานบน (เป็นหลัก) โหมดการเข้ารหัสใดๆ และอนุญาตให้กู้คืนคีย์ทั้งสองโดยใช้ประมาณ $3 \lceil k \mathbin/ b \rceil \cdot 2^k$ บล็อกเข้ารหัส / ถอดรหัส $2k \cdot 2^k$ บิตของหน่วยความจำและ $O(k \cdot 2^k)$ เวลาเฉลี่ยในการคำนวณที่ไม่ใช่การเข้ารหัส โดยที่ $k$ และ $ข$ คือขนาดคีย์และบล็อกของรหัสเป็นบิต (เช่น $k = b = 128$ สำหรับ AES-128 หรือ $k = 256$, $b = 128$ สำหรับ AES-256) มันเป็นไปในลักษณะนี้:
ถอดรหัสแรก $\lceil k \mathbin/ b \rceil$ บล็อกของข้อความไซเฟอร์เท็กซ์แต่ละอัน $2^k$ คีย์ภายนอกที่เป็นไปได้และ IV ภายนอกที่รู้จัก สำหรับแต่ละคีย์ ให้เลือกอันแรก $k$ บิตของข้อความธรรมดาที่เป็นผลลัพธ์ (ถ้า $k$ ไม่ได้เป็นทวีคูณของ $ข$ซึ่งเป็นสำหรับ AES เสมอ) ต่อท้ายคีย์ และจัดเก็บที่รวมกัน $2k$สตริงบิตในรายการ
เรียงลำดับรายการ (สิ่งนี้ต้องใช้เวลา $O(n \log n)$ เวลาสำหรับ $n$- รายการองค์ประกอบที่ $n = 2^k$ ในกรณีนี้.)
พยายามเข้ารหัสครั้งแรก $\lceil k \mathbin/ b \rceil$ บล็อกของข้อความธรรมดาที่รู้จักโดยใช้แต่ละรายการ $2^k$ คีย์ภายในที่เป็นไปได้และ IV ภายในที่รู้จัก สำหรับแต่ละคีย์ ให้ค้นหาคีย์แรก $k$ บิตของข้อความธรรมดาที่เป็นผลลัพธ์ในรายการ (โดยใช้การค้นหาแบบไบนารีซึ่งใช้เวลา $O(\logn)$ เวลา) เพื่อดูรายการของคีย์ภายนอกที่เป็นไปได้ ซึ่งคีย์ภายในนี้อาจจับคู่ได้ (จำนวนผู้สมัครที่ตรงกันโดยเฉลี่ยที่คุณจะพบต่อคีย์ภายในคือหนึ่งคีย์ แม้ว่าบางคีย์จะไม่ตรงกันและบางคีย์จะมีหลายคีย์) หากมีการจับคู่ใด ๆ ให้เข้ารหัสอีกหนึ่งบล็อคของข้อความธรรมดาที่รู้จักด้วยอินเนอร์ คีย์และถอดรหัสอีกหนึ่งบล็อคของไซเฟอร์เท็กซ์ด้วยคีย์ภายนอกที่ตรงกันเพื่อดูว่ายังตรงกันอยู่หรือไม่ หากเป็นเช่นนั้น (ซึ่งคุณคาดว่าจะเกิดขึ้นหลังจากทดสอบครึ่งหนึ่งของคีย์ด้านในโดยเฉลี่ย) คุณเกือบจะได้คู่คีย์ที่ถูกต้องแล้ว
การโจมตีเพื่อกู้คืนคีย์กำลังเดรัจฉานทั่วไปใน เดี่ยว แน่นอนว่าการเข้ารหัสเลเยอร์ใช้เวลาประมาณ $\frac12 \lceil k \mathbin/ b \rceil \cdot 2^k$ บล็อก en/decryptions โดยเฉลี่ย ดังนั้น (อย่างน้อยถ้าเราเพิกเฉยต่อค่าใช้จ่ายของหน่วยความจำและนับเฉพาะการดำเนินการเข้ารหัสบล็อก) การเข้ารหัสสองครั้งด้วย IV ที่รู้จักเป็นเพียง (อย่างมากที่สุด) $6$ ยากต่อการทำลายโดยเฉลี่ยมากกว่าการเข้ารหัสเดี่ยวสำหรับ (เท่านั้น!) ประมาณ $\log_2 6 â 2.6$ เพิ่มความปลอดภัย ซึ่งเพื่อให้ชัดเจนนั้นไม่มีนัยสำคัญอย่างยิ่ง
(เป็นที่ยอมรับว่าต้นทุนหน่วยความจำของการโจมตีนี้คือ ไม่ จำเป็นต้องเล็กน้อย แต่ก็ยังมีการแลกเปลี่ยนหน่วยความจำเวลาต่างๆ ที่สามารถดำเนินการเพื่อลดได้)
โปรดทราบว่าการโจมตีแบบพบกันตรงกลางทั่วไปที่อธิบายไว้ข้างต้นนั้นขึ้นอยู่กับ IV ภายในที่ผู้โจมตีสามารถใช้ได้ หากไม่ใช่ แต่ถูกเข้ารหัสด้วยคีย์นอกแทน การโจมตีจะไม่ทำงานหากไม่มีการแก้ไข
แน่นอนว่าวิธีแก้ปัญหาเล็กน้อยก็คือการบังคับให้ค่าที่เป็นไปได้ทั้งหมดของ IV ภายใน 128 บิตในขั้นตอนที่ 2 สำหรับ AES-256 สองเท่า สิ่งนี้จะทำให้การเข้ารหัสสองครั้งถูกทำลายใน $2^{128} \คูณ 2^{256} = 2^{384}$ การเข้ารหัสแบบ AES ซึ่งยังน้อยกว่าแบบ $2^{512}$ การเข้ารหัสที่เราคาดหวังจากความยาวของคีย์