ADFGVX และการแบ่งส่วน
ศึกษาอักษรลับ ADFGVX ของเยอรมนีใน WWI ซึ่งผสานการแทนที่กับการสลับตำแหน่งเพื่อทำให้ผู้ถอดรหัสฝ่ายสัมพันธมิตรสับสน
ADFGVX และการแบ่งส่วน เป็นบทเรียน Cryptology Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cryptology Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน
ความปลอดภัยในการสื่อสารของเยอรมนีใน WWI
เมื่อถึงปี 1918 กองทัพเยอรมันเผชิญปัญหาร้ายแรง นักวิเคราะห์รหัสลับฝ่ายสัมพันธมิตรสามารถถอดรหัสภาคสนามของเยอรมนีได้เร็วกว่าที่กองทัพจะเปลี่ยนรหัสใหม่ จึงจำเป็นต้องมีรหัสลับที่ใหม่และแข็งแกร่งกว่าเดิมอย่างเร่งด่วนสำหรับการรุกฤดูใบไม้ผลิในปี 1918
พันเอกฟริตซ์ เนเบลพัฒนารหัสลับ ADFGVX ซึ่งผสานเทคนิคดั้งเดิมสองแบบเข้าด้วยกันในลักษณะที่ไม่เคยมีใครทำมาก่อนในวิทยาการเข้ารหัสลับทางทหาร
การเลือกชุดตัวอักษร ADFGVX
รหัสลับนี้ตั้งชื่อตามตัวอักษรทั้งหกในข้อความเข้ารหัส ได้แก่ A, D, F, G, V, X ตัวอักษรเหล่านี้ได้รับการเลือกอย่างจงใจ เพราะรูปแบบในรหัสมอร์สของแต่ละตัวแตกต่างกันอย่างมาก
วิธีนี้ช่วยลดข้อผิดพลาดในการส่งข้อมูลผ่านวิทยุภาคสนาม การจำตัวอักษรหนึ่งผิดเป็นอีกตัวอาจทำให้ข้อความทั้งฉบับเสียหาย ดังนั้นผู้ออกแบบจึงเลือกตัวอักษรที่มีรูปแบบรหัสมอร์สแตกต่างกันมากที่สุด
ขั้นที่ 1: ตารางโพลีเบียส
ขั้นแรกคือการแทนที่โดยใช้ตารางโพลีเบียสขนาด 6x6 ช่องทั้ง 36 ช่องประกอบด้วยตัวอักษร 26 ตัวและตัวเลข 0-9 ซึ่งจัดเรียงตามลำดับที่กำหนดด้วยกุญแจ หัวแถวและหัวคอลัมน์คือตัวอักษรทั้งหก A, D, F, G, V, X
อักขระแต่ละตัวในข้อความต้นฉบับจะถูกแทนที่ด้วยตัวอักษรสองตัว ได้แก่ หัวแถวและหัวคอลัมน์ของช่องนั้น ตัวอย่างเช่น หาก H อยู่ที่แถว A คอลัมน์ F ก็จะกลายเป็น "AF"
ขั้นที่ 2: การสลับตำแหน่งตามคอลัมน์
หลังการแทนที่ ข้อความเข้ารหัสที่มีอักขระเป็นคู่จะถูกเขียนลงในตารางที่มีจำนวนคอลัมน์เท่ากับความยาวของกุญแจ คำสำคัญชุดที่สองจะเป็นตัวกำหนดลำดับของคอลัมน์
คอลัมน์จะถูกอ่านออกมาตามลำดับตัวอักษรของตัวอักษรในคำสำคัญ วิธีนี้จัดเรียงคู่ที่ผ่านการแทนที่ใหม่ ทำลายรูปแบบที่ยังเหลืออยู่ และสร้างรหัสลับที่ต้านทานทั้งการวิเคราะห์ความถี่และการจับคู่รูปแบบ
ความหมายของการแยกส่วน
การแยกส่วนคือเทคนิคที่แบ่งอักขระแต่ละตัวในข้อความต้นฉบับออกเป็นสัญลักษณ์หลายตัวในข้อความเข้ารหัสก่อนสลับตำแหน่ง ใน ADFGVX ตัวอักษรแต่ละตัวจะกลายเป็นสัญลักษณ์สองตัว (แถวและคอลัมน์) ซึ่งจะถูกสับเปลี่ยนแยกจากกัน
นั่นหมายความว่า "ครึ่งทั้งสองส่วน" ของตัวอักษรหนึ่งตัวในข้อความต้นฉบับจะไปอยู่คนละตำแหน่งในข้อความเข้ารหัสสุดท้าย ทำให้ไม่สามารถวิเคราะห์การแทนที่และการสลับตำแหน่งแยกจากกันได้
การผสานการแทนที่กับการสลับตำแหน่ง
รหัสลับแทนที่ล้วน ๆ (เช่น เพลย์แฟร์) เสี่ยงต่อการวิเคราะห์ความถี่ ส่วนรหัสลับสลับตำแหน่งล้วน ๆ (เช่น รหัสลับแบบรั้วราง) เสี่ยงต่อการเรียงตัวอักษรใหม่ การผสานทั้งสองวิธีเข้าด้วยกันช่วยแก้จุดอ่อนทั้งสองด้าน
ADFGVX ทำให้การวิเคราะห์ความถี่ทำได้ยากขึ้นด้วยการแยกส่วนและสลับตำแหน่งสัญลักษณ์ที่ผ่านการแทนที่แล้ว การถอดการสลับตำแหน่งจำเป็นต้องรู้กุญแจการแทนที่ และในทางกลับกัน
จอร์จ แป็งแว็งถอดรหัส ADFGVX
นักวิเคราะห์รหัสลับชาวฝรั่งเศส จอร์จ แป็งแว็ง ถอดรหัส ADFGVX ได้ในเดือนมิถุนายน 1918 เพียงไม่กี่วันก่อนการรุกของเยอรมนีที่รหัสนี้ใช้ปกป้อง เหตุการณ์นี้ได้รับการยกย่องว่าเป็นหนึ่งในความสำเร็จด้านการวิเคราะห์รหัสลับที่ยอดเยี่ยมที่สุดของ WWI
วิธีการของแป็งแว็งอาศัยการค้นหารูปแบบในข้อความที่ส่งในวันเดียวกันด้วยกุญแจเดียวกัน เมื่อเปรียบเทียบข้อความเข้ารหัสที่มีความยาวใกล้เคียงกัน เขาสามารถระบุขอบเขตคอลัมน์และย้อนแกะขั้นตอนการสลับตำแหน่งได้
ผลกระทบของ ADFGVX ต่อ WWI
ความก้าวหน้าของแป็งแว็งมอบข่าวกรองให้ฝ่ายสัมพันธมิตร ซึ่งช่วยสกัดการรุกฤดูใบไม้ผลิของเยอรมนี การรุกครั้งนั้นล้มเหลวส่วนหนึ่งเนื่องจากความได้เปรียบด้านข่าวกรองที่เกิดจากการถอดรหัส ADFGVX
เรื่องนี้แสดงให้เห็นว่าแม้การออกแบบรหัสลับจะชาญฉลาดเพียงใด ก็ยังถูกถอดได้เมื่อความปลอดภัยในการปฏิบัติการบกพร่อง เยอรมนีนำกุญแจกลับมาใช้ซ้ำและส่งข้อความมากเกินไปในช่วงเวลาสั้น ๆ ทำให้แป็งแว็งมีข้อมูลที่จำเป็น
อธิบายการสลับตำแหน่งตามคอลัมน์
ในการสลับตำแหน่งตามคอลัมน์ ให้เขียนข้อความต้นฉบับเป็นแถวใต้คำสำคัญ จากนั้นอ่านคอลัมน์ตามลำดับตัวอักษรของตัวอักษรในคำสำคัญ คำสำคัญ "KEY" จะให้ลำดับคอลัมน์ 2-1-3 (E มาก่อน K และ K มาก่อน Y)
คอลัมน์ผลลัพธ์จะแทรกสลับข้อความเดิมในลักษณะที่ทำลายรูปแบบเฉพาะที่ การถอดรหัสต้องเขียนข้อความเข้ารหัสกลับลงในคอลัมน์ตามลำดับเดิม แล้วอ่านทีละแถว
เหตุใดรหัสลับดั้งเดิมแบบหลายชั้นจึงแข็งแกร่งกว่า
รหัสลับดั้งเดิมแต่ละชั้นจัดการกับจุดอ่อนคนละด้าน การแทนที่บดบังเอกลักษณ์ของตัวอักษร ส่วนการสลับตำแหน่งบดบังตำแหน่งของตัวอักษร เมื่อนำมารวมกันจะเกิดเป็นรหัสลับที่ต้องโจมตีทั้งสองชั้นพร้อมกัน
หลักการผสานความสับสน (การแทนที่) และการแพร่กระจาย (การสลับตำแหน่ง) นี้ได้รับการวางกรอบอย่างเป็นทางการในภายหลังโดยโคลด แชนนอน และกลายเป็นรากฐานทางทฤษฎีของรหัสลับแบบบล็อกสมัยใหม่ เช่น เออีเอส
ADFGX: ต้นแบบของ ADFGVX
ก่อนหน้า ADFGVX ชาวเยอรมันใช้ ADFGX ซึ่งเป็นรูปแบบ 5 ตัวอักษรที่ง่ายกว่าและไม่มีตัวเลขในตารางโพลีเบียส ต่อมา ADFGVX ขยายตารางเป็น 6x6 เพื่อรวมตัวเลขทั้ง 10 หลัก ทำให้สามารถเข้ารหัสข้อมูลตัวเลขได้
การขยายจาก ADFGX เป็น ADFGVX เป็นการตอบสนองต่อความสำเร็จบางส่วนของฝ่ายสัมพันธมิตรในการวิเคราะห์ ADFGX การเพิ่มตัวเลขทำให้จำนวนกุญแจที่เป็นไปได้เพิ่มขึ้น และทำให้การวิเคราะห์ความถี่ของคู่ตัวอักษรทำได้ยากขึ้น เพราะรูปแบบต่าง ๆ ถูกกระจายไปอยู่ในคู่สัญลักษณ์จำนวนมากขึ้น
แบบทดสอบการแยกส่วน
โปรดทดสอบความเข้าใจเกี่ยวกับการแยกส่วนใน ADFGVX
ประเด็นสำคัญ: ADFGVX และการแยกส่วน
ADFGVX ผสานการแทนที่ด้วยตารางโพลีเบียสเข้ากับการสับเปลี่ยนตำแหน่งตามคอลัมน์ โดยใช้การแยกส่วนเพื่อสอดประสานเทคนิคทั้งสองเข้าด้วยกัน ชุดอักษรหกตัวถูกเลือกเพื่อช่วยลดข้อผิดพลาดในการส่งด้วยรหัสมอร์ส
แม้จะมีความซับซ้อนสูง แป็งแวงก็สามารถทำลายรหัสนี้ได้ด้วยการใช้ประโยชน์จากการใช้กุญแจซ้ำ รหัสลับนี้แสดงให้เห็นทั้งพลังของการผสานเทคนิคแบบดั้งเดิม และความสำคัญอย่างยิ่งของความปลอดภัยในการปฏิบัติงาน
คำถามที่พบบ่อย
บทเรียน “ADFGVX และการแบ่งส่วน” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ADFGVX และการแบ่งส่วน” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cryptology Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ADFGVX และการแบ่งส่วน”
ศึกษาอักษรลับ ADFGVX ของเยอรมนีใน WWI ซึ่งผสานการแทนที่กับการสลับตำแหน่งเพื่อทำให้ผู้ถอดรหัสฝ่ายสัมพันธมิตรสับสน คุณปฏิบัติ Cryptology Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cryptology Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cryptology Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “ADFGVX และการแบ่งส่วน” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Cryptology Academy นี้ได้ไหม
ได้ บทเรียน Cryptology Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- รหัสลับเพลย์แฟร์
- ADFGVX และการแบ่งส่วน
- รหัสลับโบฟอร์ตและกุญแจหมุนเวียน
- โครงข่ายไฟสเทล: องค์ประกอบพื้นฐานของรหัสลับสมัยใหม่