Enigma cipher เป็นรหัสภาคสนามที่ชาวเยอรมันใช้ในช่วงสงครามโลกครั้งที่สอง Enigma เป็นหนึ่งในเครื่องเข้ารหัสที่มีชื่อเสียงที่สุดในประวัติศาสตร์ เครื่อง Enigma เครื่องแรกถูกคิดค้นโดยวิศวกรชาวเยอรมันชื่อ Arthur Scherbius เมื่อสิ้นสุดสงครามโลกครั้งที่ 1 มีการใช้ในเชิงพาณิชย์ตั้งแต่ต้นปี ค.ศ. 1920 และยังถูกใช้โดยหน่วยงานทางทหารและรัฐบาลของหลายประเทศ รวมถึงเยอรมนี ก่อนและระหว่างสงครามโลกครั้งที่สองเพื่อส่งข้อความที่เข้ารหัส มีการผลิตโมเดลอินิกมาหลายรุ่น แต่โมเดลทหารเยอรมันและรหัส "อีนิกม่า" ของเยอรมันนั้นโด่งดังและมีการพูดคุยกันมากที่สุด
ถอดรหัสปริศนาระหว่างสงครามโลกครั้งที่ 2
นักประวัติศาสตร์บางคนเชื่อว่าการทำลายรหัสอินิกมาเป็นชัยชนะที่สำคัญที่สุดสำหรับมหาอำนาจฝ่ายสัมพันธมิตรในช่วงสงครามโลกครั้งที่สอง เครื่อง Enigma อนุญาตให้เข้ารหัสข้อความได้หลายพันล้านวิธี ทำให้ประเทศอื่น ๆ ทำลายรหัสของเยอรมันได้ยากอย่างไม่น่าเชื่อในช่วงสงครามโลกครั้งที่สอง ในขณะที่รหัสดูเหมือนคงกระพัน จากนั้นอลันทัวริงและนักวิจัยคนอื่นๆ ใช้ประโยชน์จากข้อบกพร่องหลายประการในการนำรหัสอินิกมาไปใช้และเข้าถึงโค้ดบุ๊คของเยอรมัน ทำให้พวกเขาสร้างเครื่องที่เรียกว่า Bombe ได้ เธอช่วยทำลายอีนิกม่ารุ่นที่ยากที่สุด โปแลนด์ในปี 2550 ได้ออกเหรียญเพื่อเป็นเกียรติแก่การครบรอบ 75 ปีของการทำลายรหัสอินิกมา - 2 złoty จากทองคำทางเหนือ ตรงกลางเป็นตราแผ่นดินของโปแลนด์ และในวงกลมมีรูปล้ออินิกมา
ความหมายของการทำลายรหัสพันธมิตร
นักประวัติศาสตร์บางคนเชื่อว่าการแฮ็กปริศนาเป็นชัยชนะที่สำคัญที่สุดเพียงครั้งเดียวสำหรับฝ่ายพันธมิตรในช่วงสงครามโลกครั้งที่สอง ฝ่ายสัมพันธมิตรสามารถป้องกันการโจมตีหลายครั้งโดยใช้ข้อมูลที่ถอดรหัสจากชาวเยอรมัน แต่เพื่อหลีกเลี่ยงข้อสงสัยว่าพวกเขาพบวิธีถอดรหัสข้อความ ฝ่ายสัมพันธมิตรต้องยอมให้มีการโจมตีบ้าง แม้ว่าพวกเขาจะมีความรู้ที่จะหยุดพวกเขาก็ตาม สิ่งนี้อธิบายไว้ในภาพยนตร์เรื่อง "The Imitation Game" ที่ออกฉายในปี 2014
เครื่อง "ปริศนา": คำอธิบาย ส่วนประกอบ
เครื่องอีนิกม่าประกอบด้วยชิ้นส่วนต่างๆ รวมถึงคีย์บอร์ด บอร์ด โรเตอร์ และวงจรอิเล็กทรอนิกส์ภายใน บางส่วนมีคุณสมบัติเพิ่มเติม ข้อความที่เข้ารหัสคือชุดตัวอักษรที่เปลี่ยนเป็นประโยคที่ชัดเจนเมื่อถอดรหัส เครื่อง Enigma ใช้รูปแบบของการเข้ารหัสทดแทน การเข้ารหัสทดแทนเป็นวิธีง่ายๆ ในการเข้ารหัสข้อความ แต่รหัสดังกล่าวสามารถทำลายได้ง่าย แต่เครื่องอินิกม่าได้รับการออกแบบมาเพื่อให้โรเตอร์ขวาเคลื่อนที่ไปข้างหน้าหนึ่งตำแหน่งทันทีหลังจากกดปุ่ม Enter ดังนั้นการเข้ารหัสตัวอักษรจึงเริ่มต้นขึ้นในขณะที่โรเตอร์อยู่ในตำแหน่งก่อนหน้า AAA โดยปกติตำแหน่งนี้คือ AAZ
วิธีเข้ารหัสอีนิกม่า
ตัวอย่างง่ายๆ ของรูปแบบการเข้ารหัสทดแทนคือรหัสซีซาร์ ประกอบด้วยการเปลี่ยนตำแหน่งของตัวอักษรแต่ละตัว ตัวอย่างเช่น เมื่อเลื่อนไป 3 ตำแหน่ง ตัวอักษร A จะแทนที่ G แต่รหัสเครื่อง Enigma นั้นมีประสิทธิภาพมากกว่ารหัสซีซาร์ธรรมดาอย่างไม่ต้องสงสัย พวกเขาใช้รูปแบบของรหัสทดแทน แต่ทุกครั้งที่มีการจับคู่จดหมายกับอีกฉบับหนึ่ง รูปแบบการเข้ารหัสทั้งหมดจะเปลี่ยนไป Enigma ciphers รุ่นต่างๆ - ในภาพด้านล่าง
หลังจากกดแต่ละปุ่ม โรเตอร์จะเคลื่อนที่และกำหนดทิศทางกระแสไฟในเส้นทางอื่นไปยังจดหมายเปิดผนึกอีกฉบับ ดังนั้น สำหรับการกดแป้นครั้งแรก การเข้ารหัสหนึ่งรายการจะถูกสร้างขึ้น และการกดแป้นครั้งที่สอง การเข้ารหัสอีกอย่างหนึ่ง สิ่งนี้จะเพิ่มจำนวนตัวเลือกการเข้ารหัสที่เป็นไปได้อย่างมาก เนื่องจากทุกครั้งที่มีการกดปุ่มบนเครื่อง Enigma ใบพัดจะหมุนและรหัสจะเปลี่ยนไป
หลักการของเครื่องอินิกม่า
เมื่อกดแป้นบนแป้นพิมพ์ โรเตอร์อย่างน้อยหนึ่งตัวจะเคลื่อนที่เพื่อสร้างการกำหนดค่าโรเตอร์ใหม่ซึ่งจะเข้ารหัสตัวอักษรหนึ่งตัวเป็นอีกตัวหนึ่ง กระแสไฟไหลผ่านตัวเครื่องและไฟหนึ่งดวงบนแผงหลอดไฟจะสว่างขึ้นเพื่อระบุอักษรส่งออก ตัวอย่างของการเข้ารหัส Enigma จะมีลักษณะดังนี้: หากกดปุ่ม P และเครื่อง Enigma เข้ารหัสตัวอักษรนี้เป็น A บนแผงไฟจะสว่างขึ้น A ในแต่ละเดือน เจ้าหน้าที่ Enigma จะได้รับหนังสือรหัสซึ่งระบุว่าจะใช้การตั้งค่าใดในแต่ละวัน
รูปแบบการเข้ารหัส
วงจรนี้คล้ายกับแผงโทรศัพท์แบบเก่าที่มีสายสิบเส้น โดยมีปลายทั้งสองข้างในแต่ละสายที่สามารถเสียบเข้ากับแจ็คได้ สายปลั๊กแต่ละเส้นสามารถจับคู่อักษรสองตัวโดยเชื่อมต่อปลายสายด้านหนึ่งเข้ากับช่องจดหมายหนึ่งช่อง และปลายอีกด้านหนึ่งเข้ากับจดหมายอีกฉบับ ตัวอักษรสองตัวในคู่จะสลับกัน ดังนั้นหาก B เชื่อมต่อกับ G G จะกลายเป็น B และ B กลายเป็น G ซึ่งจะทำให้มีการเข้ารหัสชั้นพิเศษสำหรับการทหาร
การเข้ารหัสข้อความ
โรเตอร์เครื่องแต่ละตัวมีตัวเลขหรือตัวอักษร 2626 ตัว เครื่อง Enigma สามารถใช้โรเตอร์ได้ครั้งละสามชุด แต่สามารถเปลี่ยนได้จากห้าชุด ส่งผลให้มีการกำหนดค่าที่เป็นไปได้หลายพันแบบ "กุญแจ" ของรหัสอินิกมาประกอบด้วยองค์ประกอบหลายอย่าง: โรเตอร์และลำดับ ตำแหน่งเริ่มต้น และรูปแบบการกระจัด สมมติว่าโรเตอร์เคลื่อนที่จากซ้ายไปขวา และต้องเข้ารหัสตัวอักษร A จากนั้นเมื่อเข้ารหัสตัวอักษร A แล้ว โรเตอร์แต่ละตัวจะอยู่ในตำแหน่งเดิม - AAA ขณะที่โรเตอร์เคลื่อนที่จากซ้ายไปขวา อักขระ A จะผ่านตัวที่สามก่อน โรเตอร์แต่ละตัวทำการเปลี่ยน ดังนั้นหลังจากที่ตัวอักษร A ผ่านตัวที่สาม มันออกมาเป็น B ตอนนี้ตัวอักษร B ถูกป้อนผ่านโรเตอร์ตัวที่สอง โดยที่มันจะถูกแทนที่ด้วย J และใน J ตัวแรกจะเปลี่ยนเป็น Z หลังจากรหัส Enigma ผ่านไปผ่านโรเตอร์ทั้งหมด มันจะไปที่เบี่ยงเบนและผ่านการเปลี่ยนอย่างง่ายๆ
กุญแจถอดรหัสข้อความ
หลังจากออกจากตัวสะท้อนแสง ข้อความจะถูกส่งผ่านโรเตอร์ไปในทิศทางตรงกันข้าม โดยจะเปลี่ยนกลับด้าน หลังจากนั้น สัญลักษณ์ A จะกลายเป็น U โรเตอร์แต่ละตัวบนขอบล้อจะมีตัวอักษร เพื่อให้ผู้ปฏิบัติงานสามารถตั้งค่าลำดับที่แน่นอนได้ ตัวอย่างเช่น ผู้ปฏิบัติงานสามารถหมุนโรเตอร์ตัวแรกเพื่อแสดง D หมุนตัวที่สองเพื่อแสดง K และหมุนช่องที่สามเพื่อแสดง P โดยชุดเริ่มต้นของตัวเลขหรือตัวอักษรสามตัวแสดงบนเครื่องของผู้ส่งเมื่อเขาเริ่มพิมพ์ข้อความ ผู้รับสามารถถอดรหัสได้โดยการตั้งค่าเครื่อง Enigma ที่เหมือนกันเป็นการตั้งค่าเริ่มต้นของผู้ส่ง
ข้อเสียของวิธีเข้ารหัส Enigma
ข้อเสียเปรียบหลักของการเข้ารหัสอีนิกม่าคือจดหมายไม่สามารถเข้ารหัสได้เหมือนเดิม กล่าวอีกนัยหนึ่ง A จะไม่มีวันถูกเข้ารหัสเป็น A นี่เป็นข้อบกพร่องครั้งใหญ่ในรหัส Enigma เพราะมันให้ข้อมูลบางส่วนที่สามารถใช้เพื่อถอดรหัสข้อความ หากตัวถอดรหัสสามารถเดาคำหรือวลีที่อาจปรากฏในข้อความ ข้อมูลนี้จะช่วยให้พวกเขาถอดรหัสรหัสได้ เนื่องจากชาวเยอรมันมักจะส่งข้อความสภาพอากาศในตอนเริ่มต้นและมักจะรวมวลีที่มีการทักทายแบบดั้งเดิมไว้ที่ท้ายข้อความ จึงพบวลีที่ใกล้เคียงถอดรหัสเพื่อคลี่คลาย
รถของ Alan Turing และ Gordon Welchman
Alan Turing และ Gordon Welchman พัฒนาเครื่องที่เรียกว่า Bombe ซึ่งใช้วงจรไฟฟ้าเพื่อถอดรหัสข้อความที่เข้ารหัส Enigma ในเวลาน้อยกว่า 20 นาที เครื่อง Bombe พยายามกำหนดการตั้งค่าโรเตอร์และวงจรเครื่อง Enigma ที่ใช้ในการส่งข้อความรหัสที่กำหนด ยานเกราะ British Bombe มาตรฐานคือยานพาหนะ Enigma จำนวน 36 คันที่เชื่อมโยงเข้าด้วยกัน ดังนั้น เธอจึงสร้างแบบจำลองเครื่องอินิกม่าหลายเครื่องในคราวเดียว
บอมบ์หน้าตาเป็นยังไง
เครื่อง Enigma ส่วนใหญ่มีสามใบพัด และแต่ละเครื่องจำลองปริศนาใน Bombe มีสามกลอง หนึ่งชุดสำหรับใบพัดแต่ละอัน กลองของ Bombe มีรหัสสีเพื่อให้เข้ากับโรเตอร์ที่กำลังจำลอง กลองถูกจัดเรียงเพื่อให้ด้านบนของทั้งสามจำลองโรเตอร์ด้านซ้ายของอินิกมา อันตรงกลางจำลองโรเตอร์ตรงกลาง และด้านล่างจำลองโรเตอร์ด้านขวา สำหรับการหมุนที่สมบูรณ์ของวงล้อบนแต่ละครั้ง วงล้อตรงกลางจะเพิ่มขึ้นหนึ่งตำแหน่ง เช่นเดียวกับวงล้อกลางและวงล้อล่าง ทำให้จำนวนตำแหน่งทั้งหมดเป็น 17,576 ตำแหน่งของเครื่อง Enigma 3 โรเตอร์
งานถอดรหัส
สำหรับการกำหนดค่าโรเตอร์แต่ละแบบ ในแต่ละรอบของดรัม เครื่อง Bombe ได้ตั้งสมมติฐานเกี่ยวกับการตั้งค่าวงจร เช่น ว่า A เชื่อมต่อกับ Z หากสมมติฐานกลายเป็นเท็จ เครื่องจะปฏิเสธ แล้วไม่ได้ใช้อีก และไม่เสียเวลาตรวจสอบเหล่านี้ในภายหลัง เครื่อง Bombe เลื่อนตำแหน่งโรเตอร์และเลือกการเดาใหม่และทำซ้ำขั้นตอนนี้จนกว่าจะมีการจัดการตั้งค่าที่น่าพอใจ ถ้าเครื่อง "เดา" ว่า A เชื่อมต่อกับ Z ก็เข้าใจว่า B ต้องเชื่อมต่อกับ E เป็นต้น หากการทดสอบไม่ทำให้เกิดความขัดแย้ง เครื่องจะหยุดและตัวถอดรหัสจะใช้การกำหนดค่าที่เลือกเป็นกุญแจสำคัญในการส่งข้อความ