T

Text Machine

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

รหัสไซตาเล

เข้ารหัสและถอดรหัสไซตาเล รหัสแท่งไม้ของสปาร์ตาโบราณและอุปกรณ์เข้ารหัสทางทหารที่เก่าแก่ที่สุด พันข้อความของคุณรอบแท่งไม้ที่มีเส้นผ่านศูนย์กลางตามต้องการ เขียนพาดไปตามแท่ง แล้วอ่านออกมาในลำดับที่สลับกัน ปรับเส้นผ่านศูนย์กลางแล้วดูตารางก่อตัวขึ้นแบบสด ทุกอย่างทำงานในเบราว์เซอร์ของคุณ

การตั้งค่าแท่งไม้

เส้นผ่านศูนย์กลาง

4

เส้นผ่านศูนย์กลางคือกุญแจของรหัส: มันกำหนดว่ามีตัวอักษรกี่ตัวพันรอบแท่งในหนึ่งรอบ ซึ่งก็คือจำนวนคอลัมน์ในตาราง ผู้ส่งและผู้รับต้องใช้เส้นผ่านศูนย์กลางเดียวกัน

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

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

แผนภาพตารางไซตาเล

ตัวอย่างด้วยข้อความ IAMHURTVERYBADLYHELP พันรอบแท่งขนาดสี่ตัวอักษร พิมพ์ข้อความของคุณเองด้านบนเพื่อดูมันบนตาราง

1
2
3
4
I
A
M
H
U
R
T
V
E
R
Y
B
A
D
L
Y
H
E
L
P

วิธีใช้ รหัสไซตาเล

  1. 1

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

    เลือกเข้ารหัสเพื่อเปลี่ยนข้อความต้นฉบับเป็นข้อความเข้ารหัสไซตาเล หรือถอดรหัสเพื่อกู้คืนข้อความต้นฉบับจากข้อความเข้ารหัส

  2. 2

    ตั้งเส้นผ่านศูนย์กลางของแท่ง

    เลือกเส้นผ่านศูนย์กลาง ซึ่งกำหนดว่ามีตัวอักษรกี่ตัวพันรอบแท่งและจึงกำหนดว่าตารางใช้กี่คอลัมน์ ในการถอดรหัส ให้ตั้งเส้นผ่านศูนย์กลางเดียวกันกับที่ใช้เข้ารหัส

  3. 3

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

    ป้อนข้อความของคุณ รหัสจะทำงานโดยอัตโนมัติขณะที่คุณพิมพ์ และแผนภาพตารางด้านล่างจะอัปเดตเพื่อแสดงอย่างชัดเจนว่าข้อความของคุณพันรอบแท่งอย่างไร

  4. 4

    อ่าน ดู และแชร์ผลลัพธ์

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

ทำความเข้าใจรหัสไซตาเล

รหัสไซตาเลคืออะไร

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

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

รหัสไซตาเลทำงานอย่างไร

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

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

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

ลองนำข้อความ IAMHURTVERYBADLYHELP มาใช้กับแท่งที่บรรจุได้สี่ตัวอักษรรอบ ดังนั้นตารางจึงมีสี่คอลัมน์ การเขียนตัวอักษรยี่สิบตัวทีละแถวจะเติมห้าแถว: IAMH แล้ว URTV แล้ว ERYB แล้ว ADLY แล้ว HELP นั่นคือข้อความที่เขียนไปตามแท่ง

ตอนนี้อ่านตรงลงไปในแต่ละคอลัมน์ตามลำดับ คอลัมน์แรกสะกดเป็น IUEAH คอลัมน์ที่สอง ARRDE คอลัมน์ที่สาม MTYLL และคอลัมน์ที่สี่ HVBYP เมื่อเชื่อมเข้าด้วยกัน ข้อความเข้ารหัสคือ IUEAHARRDEMTYLLHVBYP ตัวอักษรทุกตัวของต้นฉบับยังคงอยู่ เพียงแต่ถูกสลับเป็นลำดับใหม่ และผลลัพธ์มีความยาวเท่ากับข้อความนำเข้าทุกประการ

วิธีถอดรหัสไซตาเล

ในการถอดรหัส คุณต้องใช้แท่งที่มีเส้นผ่านศูนย์กลางเดียวกัน — จำนวนคอลัมน์เท่ากัน จากความยาวของข้อความเข้ารหัสและจำนวนคอลัมน์นั้น คุณจะรู้ว่าตารางสูงเท่าใดและมีตัวอักษรกี่ตัวอยู่ในแต่ละคอลัมน์พอดี รวมถึงคอลัมน์ที่สั้นกว่าเล็กน้อยเมื่อข้อความไม่ได้เติมสี่เหลี่ยมผืนผ้าให้สมบูรณ์ คุณตัดข้อความเข้ารหัสออกเป็นคอลัมน์เหล่านั้น วางเรียงเคียงข้างกัน แล้วอ่านตารางกลับไปตามแถวเพื่อกู้คืนข้อความต้นฉบับ

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

เส้นผ่านศูนย์กลางและกุญแจ

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

มีคู่ตรงข้ามที่ลงตัวซ่อนอยู่ในรหัสนี้: การเข้ารหัสข้อความที่มีความยาวหนึ่งด้วยเส้นผ่านศูนย์กลางหนึ่ง เหมือนกับการถอดรหัสมันด้วยจำนวนแถวที่ตรงกัน เพราะการอ่านตารางลงตามคอลัมน์และการอ่านตามแถวเป็นการดำเนินการผกผันกัน นี่จึงเป็นเหตุผลที่ผู้ส่งและผู้รับจำเป็นต้องตกลงกันเพียงตัวเลขเดียวเท่านั้น — ความหนาของแท่งที่ทั้งคู่ถืออยู่

วิธีแกะรหัสไซตาเล

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

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

รหัสไซตาเลปลอดภัยหรือไม่

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

ทุกวันนี้ไซตาเลได้รับการยกย่องสำหรับการสอนและความบันเทิง มันเป็นวิธีที่เหมาะอย่างยิ่งในการแนะนำแนวคิดของการสับเปลี่ยนตำแหน่ง เป็นกลไกที่น่าพอใจสำหรับปริศนา ห้องหลบหนี และโจทย์แบบ capture-the-flag และเป็นชิ้นส่วนที่จับต้องได้ของประวัติศาสตร์การเข้ารหัส สำหรับความปลอดภัยที่แท้จริง จะใช้อัลกอริทึมสมัยใหม่เช่น AES แทน

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

รหัสไซตาเลคืออะไร
ไซตาเลเป็นรหัสสับเปลี่ยนตำแหน่งแบบคลาสสิกและเป็นอุปกรณ์เข้ารหัสที่เก่าแก่ที่สุดเท่าที่รู้จัก ชาวสปาร์ตาโบราณพันแถบกระดาษพาร์ชเมนต์รอบแท่งที่มีความหนาคงที่ เขียนข้อความไปตามแท่ง แล้วคลายแถบออกเพื่อให้ตัวอักษรตกลงสู่ลำดับที่สลับกัน มันไม่แทนที่ตัวอักษรใด ๆ มันเพียงจัดเรียงลำดับใหม่ ดังนั้นข้อความเข้ารหัสจึงเป็นแอนนาแกรมของข้อความต้นฉบับ
รหัสไซตาเลทำงานอย่างไร
จำลองแท่งเป็นตารางที่จำนวนคอลัมน์เท่ากับจำนวนตัวอักษรที่พอดีรอบแท่ง เขียนข้อความลงในตารางทีละแถว แล้วอ่านกลับโดยไล่ตรงลงไปในแต่ละคอลัมน์ตามลำดับและเชื่อมคอลัมน์เข้าด้วยกัน การอ่านทีละคอลัมน์ของตารางที่เติมทีละแถวคือสิ่งที่สลับลำดับ เหมือนกับที่การคลายแถบทำพอดี
ขอตัวอย่างไซตาเลได้ไหม
ด้วยแท่งที่บรรจุได้สี่ตัวอักษรรอบ ข้อความ IAMHURTVERYBADLYHELP กลายเป็น IUEAHARRDEMTYLLHVBYP การเขียนทีละแถวให้แถว IAMH, URTV, ERYB, ADLY และ HELP และการอ่านลงตามสี่คอลัมน์ให้ IUEAH, ARRDE, MTYLL และ HVBYP ตัวอักษรต้นฉบับทุกตัวยังคงอยู่ เพียงแต่ถูกสลับ และความยาวไม่เปลี่ยนแปลง
ฉันจะถอดรหัสไซตาเลอย่างไร
สลับไปที่ถอดรหัสและตั้งเส้นผ่านศูนย์กลางเดียวกันกับที่ใช้เข้ารหัส แล้ววางข้อความเข้ารหัส จากความยาวของรหัสและเส้นผ่านศูนย์กลาง เครื่องมือจะคำนวณว่าแต่ละคอลัมน์สูงเท่าใด ตัดข้อความเข้ารหัสออกเป็นคอลัมน์ วางเรียงเคียงข้างกัน และอ่านตารางกลับไปตามแถวเพื่อกู้คืนข้อความต้นฉบับ
เส้นผ่านศูนย์กลางในรหัสไซตาเลคืออะไร
เส้นผ่านศูนย์กลางคือกุญแจ มันกำหนดว่ามีตัวอักษรกี่ตัวพันรอบแท่งในหนึ่งรอบ ซึ่งก็คือจำนวนคอลัมน์ในตาราง แท่งที่หนากว่าให้คอลัมน์มากขึ้นและการสลับที่ต่างออกไป แท่งที่บางกว่าให้น้อยกว่า เส้นผ่านศูนย์กลางเท่ากับหนึ่งไม่ทำอะไรเลย ดังนั้นช่วงที่มีประโยชน์จึงเริ่มต้นที่สอง และทั้งผู้ส่งและผู้รับต้องใช้ค่าเดียวกัน
ทำไมไซตาเลจึงถูกเรียกว่ารหัสสับเปลี่ยนตำแหน่ง
รหัสสับเปลี่ยนตำแหน่งซ่อนข้อความโดยเปลี่ยนลำดับของอักขระแทนที่จะแทนที่ด้วยอักขระใหม่ ไซตาเลทำอย่างนั้นพอดี: มันคงตัวอักษรต้นฉบับทุกตัวไว้แต่ย้ายมันไปยังตำแหน่งใหม่ที่กำหนดโดยการพันแถบรอบแท่ง ดังนั้นผลลัพธ์จึงเป็นการจัดเรียงตัวอักษรชุดเดิมใหม่
รหัสไซตาเลเปลี่ยนช่องว่างและเครื่องหมายวรรคตอนหรือไม่
ใช่ เพราะมันเป็นรหัสสับเปลี่ยนตำแหน่ง ทุกอักขระจึงมีส่วนร่วม ดังนั้นช่องว่าง ตัวเลข และเครื่องหมายวรรคตอนจึงถูกจัดเรียงใหม่ไปพร้อมกับตัวอักษรแทนที่จะถูกทิ้งไว้ที่เดิม จำนวนอักขระทั้งหมดยังคงเท่าเดิมเสมอ ผู้ใช้ในประวัติศาสตร์หลายคนตัดช่องว่างออกก่อน แต่เครื่องมือนี้รักษาไว้เพื่อให้การถอดรหัสคืนข้อความของคุณได้อย่างถูกต้องทุกประการ
อะไรคือความแตกต่างระหว่างไซตาเลกับรหัสรั้วราว
ทั้งสองเป็นรหัสสับเปลี่ยนตำแหน่งที่จัดเรียงตัวอักษรใหม่โดยใช้ตัวเลขเล็ก ๆ เป็นกุญแจ และทั้งคู่สามารถวาดเป็นตารางได้ ไซตาเลเติมตารางไปตามแถวและอ่านลงตามคอลัมน์ เป็นการสับเปลี่ยนตำแหน่งแบบคอลัมน์ล้วนที่คงคอลัมน์ไว้ในลำดับธรรมชาติ ส่วนรั้วราวกลับลากเป็นซิกแซกขึ้นลงข้ามชุดของราว ทั้งสองให้การสลับที่ต่างกันจากข้อความเดียวกัน
คุณแกะรหัสไซตาเลอย่างไร
ปริภูมิกุญแจเล็กจิ๋ว ดังนั้นคุณก็เพียงลองถอดรหัสด้วยเส้นผ่านศูนย์กลางที่เป็นไปได้แต่ละค่า — สอง แล้วสาม แล้วสี่ และต่อไป — และเก็บผลลัพธ์ใดก็ตามที่อ่านออก การค้นหาแบบลองทุกความเป็นไปได้นี้รวดเร็วแม้ทำด้วยมือ ความถี่ตัวอักษรปกติประกอบกับข้อความที่สลับและอ่านไม่ออกเป็นเบาะแสชัดเจนว่ามีการใช้รหัสสับเปลี่ยนตำแหน่งอย่างไซตาเล
รหัสไซตาเลปลอดภัยหรือไม่
ไม่ ด้วยกุญแจที่เป็นเพียงตัวเลขเล็ก ๆ ตัวเดียว มันสามารถถูกลองทุกความเป็นไปได้ภายในไม่กี่วินาที ดังนั้นมันจึงไม่ให้ความปลอดภัยที่แท้จริงสำหรับข้อมูลอ่อนไหว มันเข้าใจได้ดีที่สุดในฐานะรหัสเพื่อการศึกษาและปริศนา และเป็นชิ้นส่วนของประวัติศาสตร์การเข้ารหัส สำหรับการปกป้องที่แท้จริง ควรใช้อัลกอริทึมสมัยใหม่เช่น AES แทน
ข้อความของฉันถูกอัปโหลดไปยังเซิร์ฟเวอร์หรือไม่
ไม่ การเข้ารหัสและถอดรหัสทั้งหมดเกิดขึ้นภายในเบราว์เซอร์ของคุณทั้งหมด ข้อความของคุณจึงไม่เคยถูกอัปโหลด บันทึก หรือจัดเก็บ แม้แต่ลิงก์สำหรับแชร์ก็ยังเก็บข้อความของคุณไว้ในส่วนของ URL ที่อยู่หลังเครื่องหมายแฮช ซึ่งเบราว์เซอร์จะไม่ส่งไปยังเซิร์ฟเวอร์ ดังนั้นมันจึงยังคงเป็นส่วนตัวจนกว่าคุณจะเลือกแชร์
ฉันจะเขียนรหัสไซตาเลในโค้ดอย่างไร
จัดข้อความลงในตารางที่มีหนึ่งคอลัมน์ต่อตัวอักษรที่พอดีรอบแท่ง เติมทีละแถว ในการเข้ารหัส อ่านตารางลงตามแต่ละคอลัมน์ตามลำดับและเชื่อมคอลัมน์เข้าด้วยกัน ในการถอดรหัส คำนวณความสูงของแต่ละคอลัมน์จากความยาวของรหัสและจำนวนคอลัมน์ แบ่งข้อความเข้ารหัสออกเป็นคอลัมน์เหล่านั้น และอ่านกลับไปตามแถว เครื่องมือในเบราว์เซอร์นี้ใช้แนวทางนั้นพอดีและจัดการ Unicode เต็มรูปแบบโดยอิงตามจุดรหัส

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

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

รหัสเรลเฟนซ์

รหัสการสับเปลี่ยนตามคอลัมน์

รหัสซีซาร์

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

รหัสแอตบาช

รหัสเพลย์แฟร์