Recently, a means of improving the flexibility of differential cryptanalysis was discovered by David A. Wagner. Called the boomerang attack, it allows the use of two unrelated characteristics for attacking two halves of a block cipher.
This diagram shows how the attack might work if everything goes perfectly for a particular initial block. The numbered points in the diagram show the steps involved in the attack.
Start with a random block of plaintext. Based on the characteristic known for the first half of the cipher, if we XOR a certain vector with it, called d1 (equal to 00100000 in the diagram), the result after half-enciphering the two plaintext blocks, before and after the XOR, will differ by c1 (equal to 00110110 in the diagram), if what we wish to learn about the key happens to be true.
Since the characteristic applies only to the first half of the cipher, the results after the whole block cipher won't be related. Take those two results, and XOR each one with d2 (equal to 01001011 in the diagram), which is the vector corresponding to the characteristic for the second half of the cipher. In each case, XORing d2 with a ciphertext block is expected to change the result after deciphering halfway by c2 (equal to 00010000 in the diagram), again, if something is true of the key.
With two intermediate results that differ by c1, if each one has c2 XORed to it, the two results of the XOR will still differ by c1. Since this difference now relates to the first half characteristic, it can be seen in the final output, thus indicating the truth or otherwise of two hypotheses about the key.
This increases the potential effectiveness of differential cryptanalysis, because one can make use of characteristics that do not propagate through the complete cipher. Also, certain kinds of added complexities, such as a bit transpose in the middle of the cipher, do not serve as a barrier to this method, since two values differing by an XOR with some value merely differ by an XOR with some other value after a bit transpose.
However, it has its limitations. It only produces a result if both characteristics are present; it does not allow testing for each characteristic independently. Even so, it seems to double the number of rounds a cipher needs to be considered secure.
Since at one end of a sequence of rounds, the precise difference between blocks that is required for the characteristic must be input, it isn't possible directly to cascade this method to break a block cipher into four or more pieces.
Note that any single Feistel round has a large family of "characteristics" that is 100% probable, but which tells nothing about the key, since any pattern that involves leaving the half that is input to the F-function unchanged, but involves an XOR to the half that is XORed with the output of the F-function applies, so one of the things this method can do is allow the use of attacks against the first or last 15 rounds of DES against 16-round DES. Hence, if by some other trick a block cipher with 16 rounds could be broken into 16 pieces like this, one could test for an informative characteristic which applied to any single round.
The Boomerang Amplifier Attack
A technique called the boomerang amplifier attack works like this: instead of considering the pairs of inputs, differing by the XOR required for the characteristic of the first few rounds, as completely independent, one could note that it would be quite likely that somehow, taking two such pairs at a time, one could obtain any desired XOR difference between two such pairs by the birthday paradox. This allows a boomerang attack to be mounted with only chosen plaintext, instead of adaptive chosen ciphertext as well.
I wondered if one could use the boomerang amplifier technique noted above to allow breaking a block cipher up into three pieces instead of two.
First, you start by enciphering a large number of chosen plaintext pairs, differing by the XOR amount required for the characteristic of the first piece. By the birthday paradox, there will be a good chance of some pair of two of those pairs, somewhere among that number, which differ by the right amount to engage the differential characteristic of the middle piece.
Results (
Thai) 1:
[Copy]Copied!
เมื่อเร็ว ๆ นี้หมายถึงการปรับปรุงความยืดหยุ่นของการเข้ารหัสที่แตกต่างกันถูกค้นพบโดยเดวิด วากเนอร์ ที่เรียกว่าการโจมตีบูมเมอแรงจะช่วยให้การใช้งานของสองลักษณะที่ไม่เกี่ยวข้องสำหรับการโจมตีทั้งสองส่วนของตัวเลขบล็อก.
แผนภาพนี้แสดงให้เห็นว่าการโจมตีอาจจะทำงานถ้าทุกอย่างไปได้อย่างสมบูรณ์แบบสำหรับการเริ่มต้นบล็อกโดยเฉพาะอย่างยิ่งเลขจุดในแผนภาพแสดงขั้นตอนที่เกี่ยวข้องในการโจมตี.
เริ่มต้นด้วยการบล็อกแบบสุ่มของเพลนเท็กซ์ ขึ้นอยู่กับลักษณะที่รู้จักกันในช่วงครึ่งแรกของตัวเลขถ้าเรา XOR เวกเตอร์บางอย่างกับมันเรียกว่า d1 (เท่ากับ 00,100,000 ในแผนภาพ) ผลหลังจากครึ่งเข้ารหัสข้อมูลทั้งสองบล็อกธรรมดาก่อนและหลัง XOR,จะแตกต่างกันโดย c1 (เท่ากับ 00,110,110 ในแผนภาพ) ถ้าสิ่งที่เราต้องการที่จะเรียนรู้เกี่ยวกับกุญแจสำคัญที่เกิดขึ้นที่จะเป็นจริง.
เนื่องจากลักษณะเฉพาะในช่วงครึ่งแรกของตัวเลขผลหลังจากตัวเลขบล็อกทั้งได้รับรางวัล ' เป็นเสื้อที่เกี่ยวข้อง ใช้เวลาสองผลลัพธ์เหล่านั้นและ XOR หนึ่งแต่ละคนมี d2 (เท่ากับ 01,001,011 ในแผนภาพ)ซึ่งเป็นเวกเตอร์ที่สอดคล้องกับลักษณะสำหรับช่วงครึ่งหลังของตัวเลข ในแต่ละกรณี d2 xoring ด้วยบล็อก ciphertext คาดว่าจะเปลี่ยนผลหลังจากการถอดรหัสครึ่งโดย c2 (เท่ากับ 00,010,000 ในแผนภาพ) อีกครั้งหากสิ่งที่เป็นความจริงของคีย์.
ด้วยผลกลางสองที่แตกต่างกันโดย c1, ถ้าแต่ละคนมี c2 ถูก XOR กับมันสองผลการ XOR จะยังคงแตกต่างกันโดย c1 เนื่องจากความแตกต่างนี้ในขณะนี้เกี่ยวข้องกับลักษณะครึ่งปีแรกก็สามารถเห็นได้ในผลสุดท้ายจึงแสดงให้เห็นความจริงหรืออื่น ๆ ของทั้งสองสมมติฐานเกี่ยวกับคีย์.
เพิ่มขึ้นนี้มีประสิทธิภาพที่มีศักยภาพของการเข้ารหัสที่แตกต่างกันเพราะสามารถทำให้การใช้งานในลักษณะ ที่ไม่ได้เผยแพร่ผ่านตัวเลขที่สมบูรณ์นอกจากนี้ยังมีบางชนิดของความซับซ้อนที่เพิ่มขึ้นเช่นบิตไขว้ในตอนกลางของตัวเลขที่ไม่ได้ทำหน้าที่เป็นอุปสรรคต่อการใช้วิธีการนี้ตั้งแต่สองค่าที่แตกต่างกันโดยแฮคเกอร์ที่มีค่าบางอย่างที่แตกต่างกันโดยเพียง XOR กับค่าอื่นหลังจาก การขนส่งบิต.
แต่ก็มีข้อ จำกัด ของ มันจะก่อให้เกิดผลถ้าลักษณะทั้งสองเป็นปัจจุบันไม่อนุญาตให้มีการทดสอบสำหรับแต่ละลักษณะที่เป็นอิสระ แม้เช่นนั้นก็ดูเหมือนว่าจะเพิ่มจำนวนของรอบตัวเลขความต้องการที่จะได้รับการพิจารณาความปลอดภัย.
ตั้งแต่ที่ปลายด้านหนึ่งของลำดับของรอบที่แตกต่างกันได้อย่างแม่นยำระหว่างบล็อกที่เป็นสิ่งจำเป็นสำหรับลักษณะต้องใส่ก็ไม่ได้เป็น เป็นไปได้โดยตรงไปยังน้ำตกวิธีการนี้จะทำลายตัวเลขบล็อกเป็นสี่ชิ้นหรือมากกว่า.
ทราบว่ารอบ feistel ใด ๆ เดียวมีครอบครัวใหญ่ของ "ลักษณะ" ที่ 100% น่าจะเป็น แต่ที่จะบอกอะไรเกี่ยวกับที่สำคัญเนื่องจากรูปแบบที่เกี่ยวข้องกับการออกครึ่งหนึ่งที่จะเข้ากับฟังก์ชั่ฉไม่มีการเปลี่ยนแปลง แต่เกี่ยวข้องกับการ XOR ใด ๆ ถึงครึ่งหนึ่งที่ถูก XOR กับผลผลิตของฟังก์ชั่ฉใช้ที่ดังนั้นหนึ่งในสิ่งที่วิธีการนี้สามารถทำได้คือการช่วยให้การใช้งานของการโจมตีครั้งแรกหรือครั้งสุดท้ายของรอบ 15 des กับ 16 รอบ des ดังนั้นถ้าโดยบางส่วนเคล็ดลับอื่น ๆ ตัวเลขบล็อกกับ 16 รอบอาจจะแบ่งออกเป็น 16 ชิ้นเช่นนี้ใครจะทดสอบลักษณะให้ข้อมูลที่นำไปใช้กับรอบเดียวใด ๆ .
โจมตีเครื่องขยายเสียงบูมเมอแรง
เทคนิคที่เรียกว่าการโจมตีเครื่องขยายเสียงบูมเมอแรงทำงานเช่นนี้แทนที่จะพิจารณาคู่ของปัจจัยการผลิตที่แตกต่างกันโดยแฮคเกอร์ที่จำเป็นสำหรับลักษณะของรอบไม่กี่ครั้งแรกที่เป็นอิสระอย่างสมบูรณ์ใครจะทราบว่ามันจะค่อนข้างจะว่าอย่างใดการ สองคู่ดังกล่าวในช่วงเวลาหนึ่งจะได้รับความแตกต่างที่ต้องการ XOR ระหว่างสองคู่ดังกล่าวโดยความขัดแย้งเกิดนี้จะช่วยให้การโจมตีของบูมเมอแรงที่จะติดตั้งด้วยเท็กซ์เลือกเท่านั้นแทน ciphertext เลือกการปรับตัวได้เป็นอย่างดี.
ฉันสงสัยว่าใครสามารถใช้เทคนิคเครื่องขยายเสียงบูมเมอแรงระบุไว้ข้างต้นเพื่อให้ทำลายตัวเลขบล็อกออกเป็นสามชิ้นแทนของทั้งสอง.
ครั้งแรกที่คุณเริ่มต้นด้วยการเข้ารหัสข้อมูลเป็นจำนวนมากของการเลือกคู่ plaintext,ที่แตกต่างกันตามจำนวนเงินที่แฮคเกอร์ที่จำเป็นสำหรับลักษณะของชิ้นแรก โดยความขัดแย้งเกิดจะมีโอกาสที่ดีของคู่ของทั้งสองคู่นั้นอยู่ที่ไหนสักแห่งในหมู่ตัวเลขที่ซึ่งแตกต่างกันตามปริมาณที่เหมาะสมที่จะมีส่วนร่วมในลักษณะที่แตกต่างกันของชิ้นส่วนตรงกลาง
Being translated, please wait..