T

Text Machine

เครื่องมือข้อความทรงพลัง ในเบราว์เซอร์ของคุณ

รหัส Trithemius

เข้ารหัสและถอดรหัส Trithemius รหัสหลายอักษรตัวแรก ตีพิมพ์โดยเจ้าอาวาสชาวเยอรมัน Johannes Trithemius ในปี 1508 มันเลื่อนตัวอักษรตัวแรกด้วย 0 ตัวที่สองด้วย 1 ตัวที่สามด้วย 2 และต่อ ๆ ไป เป็นการเลื่อนที่ไต่ขึ้นเรื่อย ๆ อย่างสม่ำเสมอโดยไม่มีกุญแจ สลับระหว่างเข้ารหัสและถอดรหัสแล้วดูการคำนวณก่อตัวขึ้นแบบสด ทุกอย่างทำงานในเบราว์เซอร์ของคุณ

รหัส Trithemius เป็นแบบไร้กุญแจ: ตารางการเลื่อนคือ 0, 1, 2, 3, … เสมอ ดังนั้นจึงไม่มีอะไรต้องป้อนนอกจากข้อความของคุณ ใครก็ตามที่รู้วิธีการสามารถถอดรหัสมันได้ เพียงสลับไปที่ถอดรหัสแล้ววางข้อความเข้ารหัส

ข้อความต้นฉบับ
ข้อความเข้ารหัส

ป้อนข้อความด้านบนเพื่อดูผลลัพธ์ Trithemius ที่นี่

วิธีใช้ รหัสทริเทเมียส

  1. 1

    เลือกเข้ารหัสหรือถอดรหัส

    เลือกเข้ารหัสเพื่อเปลี่ยนข้อความต้นฉบับเป็นข้อความเข้ารหัส Trithemius หรือถอดรหัสเพื่อกู้ข้อความต้นฉบับจากข้อความเข้ารหัส เนื่องจากรหัสนี้เป็นแบบไร้กุญแจ ทิศทางจึงเป็นการตั้งค่าเดียวที่คุณต้องเลือก

  2. 2

    พิมพ์หรือวางข้อความของคุณ

    ป้อนข้อความที่คุณต้องการแปลง รหัสจะทำงานโดยอัตโนมัติขณะที่คุณพิมพ์ โดยใช้การเลื่อนที่ไต่ขึ้น 0, 1, 2, 3, … กับตัวอักษรแต่ละตัวตามลำดับ

  3. 3

    ดูการคำนวณ

    เปิดการคำนวณทีละตัวอักษรเพื่อดูการเลื่อนที่ใช้ในทุกตำแหน่งและตัวอักษรที่มันสร้างขึ้น การเลื่อนจะเพิ่มขึ้นทีละหนึ่งในแต่ละตัวอักษรและรีเซ็ตหลังจาก 26 ตัวอักษร

  4. 4

    อ่าน คัดลอก และแชร์

    อ่านผลลัพธ์ แล้วคัดลอกมัน ดาวน์โหลดเป็นไฟล์ข้อความ หรือแชร์ลิงก์ที่จะเปิดเครื่องมือขึ้นมาใหม่พร้อมทิศทางและข้อความที่แน่นอนของคุณ ทุกอย่างยังคงอยู่ในเบราว์เซอร์ของคุณ

ทำความเข้าใจรหัส Trithemius

รหัส Trithemius คืออะไร

รหัส Trithemius ได้รับการยอมรับอย่างกว้างขวางว่าเป็นรหัสแทนที่แบบหลายอักษรตัวแรก มันถูกตีพิมพ์โดยเจ้าอาวาสนิกายเบเนดิกตินชาวเยอรมัน Johannes Trithemius ในหนังสือ Polygraphiae libri sex ปี 1508 ของเขา ซึ่งเป็นหนังสือที่พิมพ์ขึ้นว่าด้วยการเข้ารหัสที่เก่าแก่ที่สุด แทนที่จะเลื่อนตัวอักษรทุกตัวด้วยปริมาณเท่ากันอย่างที่รหัส Caesar ทำ รหัส Trithemius เลื่อนตัวอักษรแต่ละตัวด้วยปริมาณที่เพิ่มขึ้นอย่างสม่ำเสมอ: ตัวอักษรตัวแรกขยับด้วย 0 ตัวที่สองด้วย 1 ตัวที่สามด้วย 2 และต่อ ๆ ไปตลอดทั้งข้อความ เนื่องจากการเลื่อนเปลี่ยนไปในทุกตำแหน่ง ตัวอักษรต้นฉบับตัวเดียวสามารถกลายเป็นตัวอักษรเข้ารหัสได้หลายตัวต่างกัน ซึ่งซ่อนรูปแบบความถี่ตัวอักษรที่ใช้แกะรหัสเลื่อนแบบง่าย ๆ ได้

สิ่งที่ทำให้รหัส Trithemius ผิดแปลกไปในบรรดารหัสหลายอักษรคือมันไม่มีกุญแจ ตารางการเลื่อน 0, 1, 2, 3, … นั้นตายตัวและเปิดเผยต่อสาธารณะ ดังนั้นจึงไม่มีคำลับหรือตัวเลขที่ต้องตกลงกัน ใครก็ตามที่รู้วิธีการสามารถอ่านข้อความได้ นั่นก็เป็นจุดอ่อนของมันเช่นกัน แต่ในเชิงประวัติศาสตร์แนวคิดนี้เป็นการปฏิวัติ: มันได้แนะนำ tabula recta ซึ่งเป็นตารางสี่เหลี่ยมของตัวอักษรที่ถูกเลื่อน ที่ภายหลังรหัส Vigenère จะยืมไปและผสมเข้ากับคำสำคัญลับ

รหัส Trithemius ทำงานอย่างไร

กำหนดหมายเลขตัวอักษรจาก A เป็น 0 ถึง Z เป็น 25 เดินไปตามข้อความและเก็บตัวนับที่เริ่มต้นที่ 0 และเพิ่มขึ้นทีละหนึ่งในทุกตัวอักษร ในการเข้ารหัส ให้บวกตัวนับเข้ากับตัวอักษรแล้ววนรอบตัวอักษรด้วยเศษหารด้วย 26 ดังนั้นตัวอักษรเข้ารหัสคือ C = (P + i) mod 26 โดยที่ i คือตำแหน่งของตัวอักษร ในการถอดรหัสคุณลบตัวนับเดียวกันแทน P = (C − i) mod 26 ซึ่งย้อนการเลื่อนและคืนตัวอักษรเดิม

เฉพาะตัวอักษร 26 ตัวเท่านั้นที่ถูกเลื่อน ช่องว่าง เครื่องหมายวรรคตอน ตัวเลข และอักขระอื่น ๆ จะผ่านไปตรง ๆ และไม่เพิ่มค่าตัวนับ ดังนั้นการเลื่อนที่ไต่ขึ้นจึงยังคงเรียงตรงกับตัวอักษรที่สำคัญ ตัวพิมพ์ใหญ่เล็กของตัวอักษรถูกรักษาไว้ เนื่องจากการเลื่อนถูกนำมาด้วยเศษหารด้วย 26 ตารางจึงซ้ำทุก 26 ตัวอักษร: ตัวอักษรตัวที่ยี่สิบเจ็ดถูกเลื่อนด้วย 0 อีกครั้ง ตัวที่ยี่สิบแปดด้วย 1 และต่อ ๆ ไป นั่นทำให้รหัส Trithemius เหมือนกับรหัส Vigenère ที่มีคำสำคัญเป็นตัวอักษรทั้งชุด ABCDEFGHIJKLMNOPQRSTUVWXYZ ทุกประการ

ตัวอย่างประกอบ

เข้ารหัสข้อความ HELLO ตัวอักษรห้าตัวอยู่ที่ตำแหน่ง 0, 1, 2, 3 และ 4 ดังนั้นการเลื่อนคือ 0, 1, 2, 3 และ 4 การบวกการเลื่อนแต่ละตัวให้ H บวก 0 คือ H, E บวก 1 คือ F, L บวก 2 คือ N, L บวก 3 คือ O และ O บวก 4 คือ S ข้อความเข้ารหัสคือ HFNOS สังเกตว่า L ทั้งสองตัวกลายเป็นตัวอักษรต่างกัน คือ N และ O เพราะพวกมันอยู่คนละตำแหน่ง ซึ่งเป็นสิ่งที่การเลื่อน Caesar แบบตายตัวไม่มีทางทำได้

ในการถอดรหัส HFNOS ให้ลบการเลื่อนที่ไต่ขึ้นชุดเดียวกัน H ลบ 0 คือ H, F ลบ 1 คือ E, N ลบ 2 คือ L, O ลบ 3 คือ L และ S ลบ 4 คือ O ซึ่งสะกดเป็น HELLO อีกครั้ง ขั้นตอนเข้ารหัสและถอดรหัสเป็นภาพสะท้อนของกันและกัน และเนื่องจากตารางการเลื่อนนั้นตายตัว ผู้รับจึงไม่ต้องการอะไรเลยนอกจากความรู้ว่ามันเป็นรหัส Trithemius

tabula recta

Trithemius นำเสนอรหัสของเขาด้วย tabula recta ซึ่งเป็นภาษาละตินแปลว่าตารางตรง: ตารางขนาด 26 คูณ 26 ที่แถวแรกคือตัวอักษรปกติ แถวที่สองคือตัวอักษรที่เลื่อนไปหนึ่ง แถวที่สามเลื่อนไปสอง และต่อ ๆ ไปจนถึงการเลื่อนยี่สิบห้า ในการเข้ารหัสตัวอักษรตัวแรกคุณอ่านมันจากแถวแรก ตัวที่สองจากแถวที่สอง ตัวที่สามจากแถวที่สาม โดยก้าวลงทีละแถวสำหรับตัวอักษรถัดไปแต่ละตัวของข้อความ

ตารางนี้คือการมีส่วนร่วมที่ยั่งยืนของรหัส Trithemius ไม่กี่ทศวรรษต่อมา Giovan Battista Bellaso และจากนั้นรหัส Vigenère ที่ใช้ชื่อของเขา ยังคงใช้ tabula recta เดียวกันแต่เลือกแถวด้วยคำสำคัญลับแทนการก้าวผ่านแถวต่าง ๆ ในลำดับตายตัว ดังนั้นรหัส Trithemius จึงเป็นบรรพบุรุษโดยตรงของตระกูลรหัสตารางคำสำคัญทั้งหมด รวมถึง Vigenère, Beaufort และ Gronsfeld

Trithemius, Vigenère และกุญแจก้าวหน้า

การวางรหัส Trithemius เทียบกับลูกหลานของมันช่วยให้เข้าใจได้ดีขึ้น รหัส Vigenère บวกคำสำคัญที่วนซ้ำเข้ากับข้อความ C = (P + K) mod 26 โดยที่ตัวอักษรกุญแจแต่ละตัวให้การเลื่อนตั้งแต่ 0 ถึง 25 รหัส Trithemius คือกรณีพิเศษที่คำสำคัญนั้นคือตัวอักษรทั้งชุดตามลำดับ ดังนั้นการเลื่อนจึงเป็นเพียง 0, 1, 2, 3, …, 25 แล้วจึงซ้ำ กล่าวอีกอย่างคือ Trithemius คือ Vigenère ที่ใช้กุญแจ ABCDEFGHIJKLMNOPQRSTUVWXYZ

นี่คือเหตุผลที่รหัส Trithemius บางครั้งถูกเรียกว่ารหัสกุญแจก้าวหน้า: การเลื่อนคืบหน้าทีละหนึ่งในทุกขั้นแทนที่จะถูกเลือกด้วยความลับ ราคาของการไม่มีกุญแจคือไม่มีความลับใด ๆ เลย ดังนั้นรหัสจึงปกป้องข้อความได้เฉพาะจากคนที่ไม่รู้จักวิธีการเท่านั้น การเพิ่มคำสำคัญลับอย่างที่ Bellaso และ Vigenère ทำ คือขั้นตอนที่เปลี่ยนแนวคิดเพื่อการสอนนี้ให้เป็นรหัสที่ต้านทานการวิเคราะห์ได้นานสามศตวรรษ

วิธีแกะรหัส Trithemius

การแกะรหัส Trithemius เป็นเรื่องเล็กน้อย เพราะไม่มีอะไรเป็นความลับให้กู้คืน ตารางการเลื่อน 0, 1, 2, 3, … นั้นเปิดเผยต่อสาธารณะ ดังนั้นใครก็ตามที่สงสัยว่าเป็นรหัส Trithemius สามารถลบการเลื่อนที่ไต่ขึ้นและอ่านข้อความได้ทันที ไม่มีความยาวกุญแจให้หาและไม่มีกุญแจให้เดา การจำแนกรหัสได้ก็เท่ากับการแกะมัน

แม้แต่นักวิเคราะห์ที่ไม่รู้วิธีการก็ทำได้ง่าย ตารางที่ตายตัวหมายความว่าตัวอักษรตัวแรกไม่ถูกเลื่อน ดังนั้นมันจึงมักเปิดเผยตัวรหัส และการลองออฟเซ็ตเริ่มต้นเพียงไม่กี่ค่าก็เผยข้อความที่อ่านได้อย่างรวดเร็ว สิ่งนี้แตกต่างจาก Vigenère อย่างมาก ที่ซึ่งคำสำคัญลับบังคับให้ผู้โจมตีต้องผ่านการตรวจสอบแบบ Kasiski และดัชนีความบังเอิญ รหัส Trithemius เข้าใจได้ดีที่สุดในฐานะโครงกระดูกเพื่อการศึกษาที่รหัสแบบมีกุญแจอันแข็งแกร่งกว่าเหล่านั้นถูกสร้างขึ้นในภายหลัง

รหัส Trithemius ปลอดภัยหรือไม่

ไม่ รหัส Trithemius ไม่ให้ความปลอดภัยใด ๆ เลย เพราะมันไม่มีกุญแจ วิธีการทั้งหมดของมันเปิดเผยต่อสาธารณะ ดังนั้นใครก็ตามที่จำแนกมันได้สามารถอ่านข้อความได้ทันที แม้แต่ตามมาตรฐานของรหัสมือทางประวัติศาสตร์อื่น ๆ มันก็เป็นเพียงอุปกรณ์เพื่อการสอนล้วน ๆ ซึ่งมีคุณค่าในการแสดงให้เห็นว่าการเลื่อนแบบหลายอักษรทำงานอย่างไรมากกว่าการซ่อนอะไรสักอย่าง

ทุกวันนี้รหัส Trithemius ได้รับความนิยมสำหรับการเรียนรู้และความบันเทิง มันเป็นบทแนะนำที่ชัดเจนที่สุดเท่าที่จะเป็นไปได้สู่ tabula recta และสู่แนวคิดการเลื่อนก้าวหน้าที่อยู่เบื้องหลัง Vigenère และมันปรากฏในปริศนา ห้องหลบหนี และโจทย์แบบ capture-the-flag ในฐานะรหัสหลายอักษรตัวแรกที่นุ่มนวล สำหรับการปกป้องข้อมูลจริง คุณควรพึ่งพาอัลกอริทึมสมัยใหม่ที่ผ่านการทดสอบมาอย่างดีเช่น AES แทน

คำถามที่พบบ่อย

รหัส Trithemius คืออะไร
รหัส Trithemius เป็นรหัสแทนที่แบบหลายอักษรตัวแรก ตีพิมพ์โดยเจ้าอาวาสชาวเยอรมัน Johannes Trithemius ในปี 1508 มันเลื่อนตัวอักษรแต่ละตัวด้วยปริมาณที่เพิ่มขึ้นอย่างสม่ำเสมอ ตัวแรกด้วย 0 ตัวที่สองด้วย 1 ตัวที่สามด้วย 2 และต่อ ๆ ไป โดยใช้ tabula recta ที่เขาได้แนะนำ มันไม่มีกุญแจ ซึ่งทำให้มันเป็นบรรพบุรุษไร้กุญแจของรหัส Vigenère
รหัส Trithemius ทำงานอย่างไร
กำหนดหมายเลขตัวอักษรจาก A เป็น 0 ถึง Z เป็น 25 และเก็บตัวนับที่เริ่มต้นที่ 0 และเพิ่มขึ้นทีละหนึ่งในทุกตัวอักษร ในการเข้ารหัส ให้บวกตัวนับเข้ากับตัวอักษรแบบมอดุโล 26: C = (P + i) mod 26 ในการถอดรหัส ให้ลบแทน: P = (C − i) mod 26 เลื่อนเฉพาะตัวอักษรเท่านั้น ช่องว่าง ตัวเลข และเครื่องหมายวรรคตอนผ่านไปและไม่เพิ่มค่าตัวนับ
รหัส Trithemius ต้องใช้กุญแจหรือไม่
ไม่ รหัส Trithemius เป็นแบบไร้กุญแจ: ตารางการเลื่อน 0, 1, 2, 3, … นั้นตายตัวและเปิดเผยต่อสาธารณะ ดังนั้นจึงไม่มีอะไรต้องป้อนนอกจากข้อความของคุณ นี่คือลักษณะเด่นที่นิยามรหัสนี้และเป็นจุดอ่อนของมันด้วย เพราะใครก็ตามที่จำแนกวิธีการได้สามารถถอดรหัสข้อความได้โดยไม่ต้องมีความลับใด ๆ
ขอตัวอย่างรหัส Trithemius ได้ไหม
การเข้ารหัส HELLO ให้ HFNOS ตัวอักษรอยู่ที่ตำแหน่ง 0 ถึง 4 ดังนั้นการเลื่อนคือ 0, 1, 2, 3, 4: H บวก 0 คือ H, E บวก 1 คือ F, L บวก 2 คือ N, L บวก 3 คือ O และ O บวก 4 คือ S ตัว L ทั้งสองกลายเป็นตัวอักษรต่างกันเพราะพวกมันอยู่คนละตำแหน่ง การถอดรหัส HFNOS ด้วยการเลื่อนที่ไต่ขึ้นชุดเดียวกันคืนกลับเป็น HELLO
Trithemius แตกต่างจากรหัส Vigenère อย่างไร
รหัส Trithemius คือกรณีพิเศษของ Vigenère ที่มีคำสำคัญเป็นตัวอักษรทั้งชุดตามลำดับ ดังนั้นการเลื่อนจึงเป็นเพียง 0, 1, 2, 3, … แล้วจึงซ้ำ Vigenère แทนที่ตารางตายตัวนั้นด้วยคำสำคัญลับ ซึ่งเป็นสิ่งที่ให้ความแข็งแกร่งที่แท้จริงแก่มัน กล่าวโดยย่อ Trithemius คือ Vigenère ที่ใช้กุญแจ ABCDEFGHIJKLMNOPQRSTUVWXYZ
Trithemius แตกต่างจากรหัส Caesar อย่างไร
รหัส Caesar เลื่อนตัวอักษรทุกตัวด้วยปริมาณตายตัวเท่ากัน ดังนั้นมันจึงเป็นแบบอักษรเดียวและตัวอักษรต้นฉบับตัวเดียวกันจะจับคู่กับตัวอักษรเข้ารหัสตัวเดียวกันเสมอ รหัส Trithemius เพิ่มการเลื่อนทีละหนึ่งในทุกตำแหน่ง ดังนั้นมันจึงเป็นแบบหลายอักษร: ตัวอักษรต้นฉบับตัวเดียวกันมักกลายเป็นตัวอักษรเข้ารหัสที่ต่างกันขึ้นอยู่กับว่ามันปรากฏที่ใด
tabula recta คืออะไร
tabula recta คือตารางตัวอักษรขนาด 26 คูณ 26 ที่ Trithemius ได้แนะนำ โดยที่แต่ละแถวคือตัวอักษรที่ถูกเลื่อนไปอีกหนึ่งตำแหน่งมากกว่าแถวด้านบน ในการเข้ารหัส คุณอ่านตัวอักษรตัวแรกจากแถวแรก ตัวที่สองจากแถวที่สอง และต่อ ๆ ไป ภายหลังรหัส Vigenère ยังคงใช้ตารางเดียวกันแต่เลือกแถวด้วยคำสำคัญลับ
ฉันจะถอดรหัส Trithemius อย่างไร
สลับเครื่องมือไปที่ถอดรหัสแล้ววางข้อความเข้ารหัส เนื่องจากรหัสนี้เป็นแบบไร้กุญแจ จึงไม่จำเป็นต้องใช้กุญแจ เครื่องมือจะลบการเลื่อนที่ไต่ขึ้น 0, 1, 2, 3, … เพื่อกู้ข้อความต้นฉบับ การจำแนกได้ว่าข้อความเป็นรหัส Trithemius คือทั้งหมดที่ใครก็ตามต้องการเพื่ออ่านมัน
รหัสเปลี่ยนช่องว่างและเครื่องหมายวรรคตอนหรือไม่
ไม่ เฉพาะตัวอักษร 26 ตัวเท่านั้นที่ถูกเลื่อน ช่องว่าง เครื่องหมายวรรคตอน และตัวเลขผ่านไปโดยไม่เปลี่ยนแปลง และพวกมันไม่เพิ่มค่าตัวนับตำแหน่ง ดังนั้นการเลื่อนที่ไต่ขึ้นจึงยังคงเรียงตรงกับตัวอักษร ตัวพิมพ์ใหญ่เล็กของตัวอักษรถูกรักษาไว้ ดังนั้นผลลัพธ์จึงคงรูปทรงของข้อความต้นฉบับของคุณ
เกิดอะไรขึ้นกับการเลื่อนหลังจาก 26 ตัวอักษร
เนื่องจากการเลื่อนถูกนำมาด้วยเศษหารด้วย 26 มันจึงวนรอบ ตัวอักษรตัวที่ยี่สิบเจ็ดถูกเลื่อนด้วย 0 อีกครั้ง ตัวที่ยี่สิบแปดด้วย 1 และต่อ ๆ ไป ทำซ้ำตาราง นี่คือเหตุผลที่แท้จริงว่าทำไมรหัส Trithemius จึงเท่ากับรหัส Vigenère ที่ใช้กุญแจเป็นตัวอักษร 26 ตัวเต็มชุด
รหัส Trithemius ปลอดภัยหรือไม่
ไม่ รหัส Trithemius ไม่ให้ความปลอดภัยใด ๆ เลย เพราะมันไม่มีกุญแจและวิธีการของมันเปิดเผยต่อสาธารณะ ใครก็ตามที่จำแนกมันได้สามารถอ่านข้อความได้ทันที ควรปฏิบัติต่อมันในฐานะรหัสเพื่อการศึกษาและปริศนา และเป็นชิ้นส่วนหนึ่งของประวัติศาสตร์การเข้ารหัส สำหรับการปกป้องที่แท้จริง ให้ใช้อัลกอริทึมสมัยใหม่เช่น AES แทน
ข้อความของฉันถูกอัปโหลดไปยังเซิร์ฟเวอร์หรือไม่
ไม่ การเข้ารหัสและถอดรหัสทั้งหมดเกิดขึ้นภายในเบราว์เซอร์ของคุณทั้งหมด ข้อความของคุณจึงไม่เคยถูกอัปโหลด บันทึก หรือจัดเก็บ แม้แต่ลิงก์สำหรับแชร์ก็ยังเก็บข้อมูลของคุณไว้ในส่วนของ URL ที่อยู่หลังเครื่องหมายแฮช ซึ่งเบราว์เซอร์จะไม่ส่งไปยังเซิร์ฟเวอร์ ดังนั้นมันจึงยังคงเป็นส่วนตัวจนกว่าคุณจะเลือกแชร์

เครื่องมือที่เกี่ยวข้อง

ทำงานต่อด้วยเครื่องมือที่มีประโยชน์เหล่านี้

รหัสโบฟอร์ต

รหัสกรอนส์เฟลด์

รหัสปอร์ตา

รหัสลับวีฌ์แนร์

รหัสออโตคีย์

รหัสรันนิงคีย์