ฉันกำลังเรียนรู้วิธีการทำงานของ CBC แต่ฉันไม่เข้าใจเมื่อแก้ไข 2 ไบต์แรกของข้อความที่เข้ารหัสว่าทำไมบล็อกที่ 1 และเฉพาะ 2 ไบต์แรกของบล็อกที่สองจึงมีการเปลี่ยนแปลง 2 ไบต์แรกของข้อความไซเฟอร์ถูกแก้ไขโดยใช้การดำเนินการ xor ที่มีค่าสุ่ม
แต่ละบล็อกประกอบด้วย 16 ไบต์
นี่คือไบต์สุ่มที่จะเข้ารหัส:
D6 D7 17 2B D8 1B 73 DF AA D4 D0 DC 94 D1 C2 B2
EE 0D 3B ดา 74 58 62 F9 F9 D1 30 59 F5 FE 7D 54
14 79 42 14 B6 1D 34 C7 19 B0 68 67 36 25 D9 เอฟเอ
D0 1C 61 CB 40 A2 ซีดี 77 6A 7D D3 D4 A2 23 9B 4F
เอเอฟ
นี่คือข้อความตัวเลข:
D2 ซีดี F5 92 8D 1D 4E BC A1 9A CE 50 07 8C 13 FE
33 4B FE BD A0 6B 6C 7B F4 38 90 F4 36 A6 9A 15
A3 D8 41 F4 04 5D C0 9C A3 B6 A6 A8 4A B5 B2 F9
3C E3 0B 93 5E E1 42 26 66 58 16 39 A4 9C 14 5D
69 E9 EE C8 7D 0F AC 85 E7 EC 9C 0B C4 E4 74 22
นี่คือข้อความตัวเลขที่แก้ไขโดยการ xoring ข้อความก่อนหน้าด้วย 80 80:
52 4D F5 92 8D 1D 4E BC A1 9A CE 50 07 8C 13 FE
33 4B FE BD A0 6B 6C 7B F4 38 90 F4 36 A6 9A 15
A3 D8 41 F4 04 5D C0 9C A3 B6 A6 A8 4A B5 B2 F9
3C E3 0B 93 5E E1 42 26 66 58 16 39 A4 9C 14 5D
69 E9 EE C8 7D 0F AC 85 E7 EC 9C 0B C4 E4 74 22
และในที่สุดข้อความที่แก้ไขที่ถอดรหัสแล้ว:
D6 1E 4E A5 5A 8D 3B 4A E6 2F E2 0A 41 21 68 51
6E 8D 3B ดา 74 58 62 F9 F9 D1 30 59 F5 FE 7D 54
14 79 42 14 B6 1D 34 C7 19 B0 68 67 36 25 D9 เอฟเอ
D0 1C 61 CB 40 A2 ซีดี 77 6A 7D D3 D4 A2 23 9B 4F
เอเอฟ