ROT13 เลื่อนเฉพาะตัวอักษรละติน A–Z และ a–z เท่านั้น — หากนำข้อความภาษาไทยผ่านเข้าไป อักษรไทยจะไม่เปลี่ยนแปลงเลย เพราะอัลกอริทึมไม่รู้จักอักขระที่อยู่นอกช่วงแคบ ๆ นี้ตั้งแต่แรก
เหตุใดอักษรไทยจึงไม่ถูกเข้ารหัส
ROT13 แบบคลาสสิกเป็นเพียงตารางแทนที่สำหรับตัวอักษรละติน 26 ตัวเท่านั้น อักษรไทยอยู่ในช่วง Unicode ที่ต่างออกไปโดยสิ้นเชิง และไม่มีอักษรไทยตัวใดที่ตรงกับ A–Z/a–z ของละติน ดังนั้นการใช้ ROT13 กับคำว่า "สวัสดี" จะได้ผลลัพธ์เป็น "สวัสดี" เหมือนเดิมทุกประการ
ทำไมการเลื่อนตัวอักษรแบบนี้ใช้ไม่ได้กับภาษาไทย
ภาษาไทยเขียนติดกันโดยไม่มีช่องว่างระหว่างคำ และมีสระ วรรณยุกต์ที่วางเหนือหรือใต้พยัญชนะเป็นอักขระ Unicode แยกต่างหาก การจะสร้างรหัสเลื่อนแบบ ROT13 สำหรับภาษาไทยให้ได้ผลจริง จะต้องตัดสินใจว่าจะเลื่อนเฉพาะพยัญชนะ สระ หรือทั้งหมดรวมกัน ซึ่งซับซ้อนกว่าการเลื่อนตัวอักษรเดี่ยว ๆ ในภาษาที่ใช้อักษรละตินมาก
ROT13 ยังถูกใช้ที่ไหนบ้าง
- ซ่อนสปอยล์ในข้อความภาษาอังกฤษบนฟอรัมนานาชาติ
- ตัวอย่างการสอนเพื่ออธิบายรหัสแบบแทนที่
- การทำให้ข้อความละตินสับสนเล็กน้อย — ไม่มีผลใด ๆ กับภาษาไทย
เหตุใดนี่จึงไม่ใช่การปกป้องข้อมูล
ROT13 ไม่ใช้คีย์และย้อนกลับได้ทันที — นี่คือการทำให้สับสน ไม่ใช่การเข้ารหัสลับ ไม่ว่าจะเป็นภาษาไทยหรือภาษาใด การปกป้องข้อมูลจริงต้องใช้อัลกอริทึมที่มีคีย์อย่าง AES