อ่าน 5 นาที
โฮโมกลิฟ
ในวิชาการเขียนและการจัดพิมพ์ตัวอักษรโฮโมกลิฟ หมายถึง กลุ่ม ของตัวอักษรหรือสัญลักษณ์สองตัวขึ้นไปที่มีรูปร่างเหมือนกันหรือคล้ายกันมาก แต่มีความหมายแตกต่างกัน
โฮโมกลิฟ

ในวิชาการเขียนและการจัดพิมพ์ตัวอักษรโฮโมกลิฟ หมายถึง กลุ่ม ของตัวอักษรหรือสัญลักษณ์สองตัวขึ้นไปที่มีรูปร่างเหมือนกันหรือคล้ายกันมาก แต่มีความหมายแตกต่างกัน นอกจากนี้ยังใช้คำนี้กับลำดับของตัวอักษรที่มีคุณสมบัติเหล่านี้ด้วย
ในปี พ.ศ. 2551 Unicode Consortiumได้เผยแพร่รายงานทางเทคนิคฉบับที่ 36 [ 1 ]เกี่ยวกับประเด็นต่างๆ ที่เกิดจากความคล้ายคลึงกันทางภาพของตัวอักษรทั้งในสคริปต์เดียว และความคล้ายคลึงกันระหว่างตัวอักษรในสคริปต์ที่แตกต่างกัน
ตัวอย่างของสัญลักษณ์โฮโมกลิฟิก ได้แก่ (ก) ไดแอรีซิสและอุมเลาต์ (ทั้งคู่เป็นจุดสองจุด แต่มีความหมายต่างกัน แม้ว่าจะใช้รหัสจุดเดียวกัน) และ (ข) เครื่องหมาย ยัติภังค์และเครื่องหมายลบ (ทั้งคู่เป็นเส้นแนวนอนสั้นๆ แต่มีความหมายต่างกัน แม้ว่ามักจะใช้รหัสจุดเดียวกัน ) ในบรรดาตัวเลขและตัวอักษรตัวเลข1และตัวl ตัวเล็ก จะถูกเข้ารหัสแยกกันเสมอ แต่ในแบบอักษร หลายแบบ จะใช้สัญลักษณ์ที่คล้ายคลึงกันมาก และตัวเลข0และตัวO ตัวใหญ่ จะถูกเข้ารหัสแยกกันเสมอ แต่ในแบบอักษรหลายแบบจะใช้สัญลักษณ์ที่คล้ายคลึงกันมาก แทบทุกตัวอย่างของคู่ตัวอักษรโฮโมกลิฟิกสามารถแยกแยะได้ด้วยกราฟิกโดยใช้สัญลักษณ์ที่แตกต่างกันอย่างชัดเจนและรหัสจุดแยกกัน แต่ก็ไม่ได้ทำเช่นนั้นเสมอไปแบบอักษรที่ไม่ได้แยกความแตกต่างระหว่างเลขหนึ่ง (1/el) และเลขศูนย์ (0/oh) อย่างชัดเจน ถือว่าไม่เหมาะสมสำหรับการเขียนสูตรทางคณิตศาสตร์ URL รหัสโปรแกรมรหัสประจำตัว และข้อความอื่นๆ ที่ตัวอักษรไม่สามารถแยกแยะได้เสมอไปหากไม่มีบริบทแบบอักษรที่แยกความแตกต่างระหว่างเลขหนึ่งและเลขศูนย์โดยใช้เครื่องหมาย ทับ เช่น ขีดกลาง จะเป็นที่นิยมมากกว่าสำหรับการใช้งานเหล่านั้น
คำศัพท์ที่เกี่ยวข้อง
บางครั้ง คำว่าhomographถูกใช้ผิดในความหมายเดียวกับhomoglyphแต่ในความหมายทางภาษาศาสตร์ทั่วไป homograph คือคำที่สะกดเหมือนกันแต่มีความหมายต่างกัน ซึ่งเป็นคุณสมบัติของคำ ไม่ใช่ตัวอักษร
อัลโลกราฟคือ รูปแบบการออกแบบ ตัวอักษรที่ดูแตกต่างกันแต่มีความหมายเหมือนกัน เช่น⟨g⟩และ⟨g⟩หรือเครื่องหมายดอลลาร์ที่มีเส้นขีดหนึ่งหรือสองเส้น คำว่า ไซโน ก ลิฟ มีความหมายคล้ายกันแต่ค่อนข้างนามธรรมกว่า เช่น สัญลักษณ์⟨£⟩และตัวอักษร⟨L⟩ (ในLsd ) ต่างก็หมายถึงเงินปอนด์สเตอร์ลิง [ 2 ] แต่เฉพาะในบริบทนั้นเท่านั้น อัลโลกราฟและไซโนกลิฟยังเรียกกันอย่างไม่เป็นทางการว่ารูปแบบการแสดงผล
0 และ O; 1, l และ I
ชุดอักษรเหมือนกันสองชุดที่ใช้กันทั่วไปและสำคัญในปัจจุบัน ได้แก่ เลขศูนย์ ⟨0⟩ และตัวอักษรพิมพ์ใหญ่ ⟨O⟩; และเลขหนึ่ง ⟨1⟩ ตัวอักษรพิมพ์เล็กL ⟨l⟩ และตัวอักษรพิมพ์ใหญ่i ⟨I⟩ ในยุคแรกๆ ของเครื่องพิมพ์ดีดแบบกลไก มักจะละเว้นแป้นสำหรับตัวเลข ⟨1⟩ และ ⟨0⟩ และแป้นสำหรับตัวอักษร ⟨l⟩ และ ⟨O⟩ จะสร้างอักษรที่ใช้สำหรับทั้งสองตัวอักษร เมื่อผู้พิมพ์ดีดที่เคยใช้เครื่องพิมพ์ดีดดังกล่าวเปลี่ยนมาใช้แป้นพิมพ์คอมพิวเตอร์ในช่วงทศวรรษ 1970 และ 1980 นิสัยการพิมพ์แบบเก่าของพวกเขายังคงอยู่และเป็นสาเหตุของความสับสนเป็นครั้งคราว
การออกแบบตัวอักษรส่วนใหญ่ในปัจจุบันแยกแยะความแตกต่างระหว่างตัวอักษรที่เหมือนกันเหล่านี้อย่างระมัดระวัง โดยปกติจะวาดเลขศูนย์ให้แคบลงและวาดเลขหนึ่งด้วยเซริฟ ที่เด่นชัด การพิมพ์จากคอมพิวเตอร์ในยุคแรกๆ ไปไกลกว่านั้นอีก โดยทำเครื่องหมายเลขศูนย์ด้วยเส้นทับหรือจุด ซึ่งนำไปสู่ความขัดแย้งใหม่ที่เกี่ยวข้องกับตัวอักษรสแกนดิเนเวีย⟨ Ø ⟩และตัวอักษรกรีก⟨Φ⟩ ( phi ) การแยกแยะการออกแบบของกลิฟที่ใช้สำหรับกราฟีม เหล่านี้ หมายถึงความเสี่ยงต่อความสับสนที่ลดลง[ 3 ]
การออกแบบตัวอักษรบางแบบเป็นไปตาม มาตรฐานความชัดเจน DIN 1450 โดยการออกแบบตัวอักษรอย่างระมัดระวังเพื่อให้แยกแยะได้ง่าย เช่นเลขศูนย์ที่มีขีดทับเพื่อแยกความแตกต่างจากตัวพิมพ์ใหญ่ ⟨O⟩ ตัวพิมพ์เล็ก ⟨I⟩ ที่มีหางและตัวพิมพ์ใหญ่ ⟨I⟩ ที่มีเชิงเพื่อแยกความแตกต่างจากตัวเลข ⟨1⟩ การแยกความแตกต่างระหว่างตัวเลข ⟨5⟩ กับตัวพิมพ์ใหญ่ ⟨S⟩ เป็นต้น[ 4 ]
ตัวอย่างของความสับสนเนื่องจากตัวอักษรที่ใกล้เคียงกันเกิดขึ้นจากการใช้⟨y⟩แทน⟨þ⟩ ( thorn ) ช่างพิมพ์ชาวอังกฤษในยุคแรกนำเข้าชุดตัวพิมพ์ของชาวดัตช์ที่ไม่มีตัวอักษรดังกล่าว จึงใช้ตัวอักษร⟨y⟩แทนเพราะ (ใน แบบตัวพิมพ์ Blackletter ) ตัวอักษรทั้งสองดูคล้ายกันมากพอ[ 5 ] [ 6 ]ในยุคปัจจุบันจึงเกิดปรากฏการณ์เช่นYe olde shoppeซึ่งคำว่าtheเขียนว่าye / j iː /แทนที่จะเป็นþeเนื่องจากธรรมเนียมปฏิบัติในอดีตนี้ การสะกดชื่อMenzies (ออกเสียงว่าMengisและเดิมสะกดว่าMenȝies ) ก็เกิดขึ้นด้วยเหตุผลเดียวกัน คือ ตัวอักษร⟨z⟩ถูกแทนที่ด้วย⟨ȝ⟩ ( yogh )
โฮโมกลิฟหลายตัวอักษร


ตัวอักษรบางตัวที่รวมกันแล้วดูคล้ายกัน เช่น ⟨rn⟩ ดูคล้ายกับ ⟨m⟩, ⟨cl⟩ ดูคล้ายกับ ⟨d⟩ และ ⟨vv⟩ ดูคล้ายกับ ⟨w⟩
ในแบบอักษรบางแบบที่มีระยะห่างแคบ (เช่นTahoma ) การวางตัวอักษร ⟨c⟩ ไว้ข้างตัวอักษร เช่น ⟨j⟩, ⟨l⟩ หรือ ⟨i⟩ จะสร้างโฮโมกลิฟขึ้นมา เช่น ⟨ cj cl ci ⟩ (⟨gda⟩)
เมื่อตัวอักษรบางตัวถูกวางติดกัน เมื่อมองแวบเดียวจะทำให้เกิดความรู้สึกว่าเป็นตัวอักษรอื่นที่ไม่เกี่ยวข้องกัน วิธีที่แม่นยำกว่าในการอธิบายเรื่องนี้คือตัวอักษรที่เชื่อมต่อกัน บางตัว อาจดูคล้ายกับตัวอักษรเดี่ยวๆ ตัวอย่างเช่น ตัวอักษรที่เชื่อมต่อกัน ⟨fi⟩ (ของ ⟨f⟩ และ ⟨i⟩) อาจดูคล้ายกับ ⟨A⟩ ในบางแบบอักษรหรือฟอนต์ ความสับสนที่อาจเกิดขึ้นนี้บางครั้งเป็นข้อโต้แย้งในการใช้ตัวอักษรที่เชื่อมต่อกัน
การทำให้เป็นมาตรฐาน
สามารถตรวจจับโฮโมกลิฟทุกชนิดได้ผ่านกระบวนการที่เรียกว่า 'การกำหนดมาตรฐานคู่' [ 3 ]ขั้นตอนแรกในกระบวนการนี้คือการระบุชุดโฮโมกลิฟ กล่าวคือ ตัวอักษรที่ปรากฏเหมือนกันสำหรับผู้สังเกตที่กำหนด จากนั้น จะมีการระบุโทเค็นเดียวเพื่อแสดงถึงชุดโฮโมกลิฟ โทเค็นนี้เรียกว่ามาตรฐาน ขั้นตอนต่อไปคือการแปลงตัวอักษรแต่ละตัวในข้อความให้เป็นมาตรฐานที่สอดคล้องกันในกระบวนการที่เรียกว่าการกำหนดมาตรฐานหากมาตรฐานของข้อความสองชุดเหมือนกัน แต่ข้อความต้นฉบับแตกต่างกัน แสดงว่ามีโฮโมกลิฟอยู่ในข้อความนั้น
โฮโมกลิฟยูนิโค้ด

Unicodeมีรหัสจุดสำหรับอักขระโฮโมกลิฟิกจำนวนมากที่เรียกว่า "ตัวที่ทำให้เกิดความสับสน" [ 1 ]สิ่งเหล่านี้ก่อให้เกิดความเสี่ยงด้านความปลอดภัยในสถานการณ์ต่างๆ (กล่าวถึงใน UTR#36) [ 7 ]และได้รับความสนใจเป็นพิเศษในส่วนที่เกี่ยวกับชื่อโดเมนระหว่างประเทศในทางทฤษฎีอย่างน้อยที่สุด บุคคลหนึ่งอาจจงใจปลอมแปลงชื่อโดเมนโดยการแทนที่อักขระหนึ่งตัวด้วยโฮโมกลิฟิกของมัน จึงสร้างชื่อโดเมนที่สองที่ไม่สามารถแยกแยะได้ง่ายจากชื่อแรก ซึ่งสามารถนำไปใช้ประโยชน์ในการฟิชชิ่งได้ ( ดูบทความหลักการโจมตีโฮโมกราฟ IDN ) ในแบบอักษร หลายแบบ ตัว อักษร กรีก ⟨Α⟩ ตัวอักษร ซีริลลิก ⟨А⟩ และ ตัวอักษร ละติน ⟨A⟩ มีลักษณะเหมือนกันทุกประการ เช่นเดียวกับตัวอักษรละติน ⟨a⟩ และตัวอักษรซีริลลิก ⟨а⟩ (เช่นเดียวกันนี้สามารถนำไปใช้กับตัวอักษรละติน "aBceHKopTxy" และตัวอักษรซีริลลิก " аВсеНКорТху " ได้ด้วย) ชื่อโดเมนสามารถถูกปลอมแปลงได้ง่ายๆ โดยการแทนที่รูปแบบใดรูปแบบหนึ่งเหล่านี้ด้วยอีกรูปแบบหนึ่งในชื่อที่จดทะเบียนแยกต่างหาก นอกจากนี้ยังมีตัวอย่างมากมายของอักษรที่คล้ายคลึงกันในอักษรเดียวกัน เช่น ⟨í⟩ (มีเครื่องหมายเน้นเสียง ) และ ⟨i⟩ (มี เครื่องหมายเน้นเสียงที่หัว ), ⟨É⟩ ( E - เน้น เสียง ) และ ⟨Ė⟩ (⟨E⟩ มีจุดอยู่ด้านบน) และ ⟨È⟩ ( E - เน้นเสียงต่ำ), ⟨Í⟩ (ตัวพิมพ์ใหญ่ ⟨I⟩ มีเครื่องหมายเน้นเสียง) และ ⟨ĺ⟩ (ตัวพิมพ์เล็ก ⟨L⟩ มีเครื่องหมายเน้นเสียง) เมื่อพูดถึงประเด็นด้านความปลอดภัยเฉพาะนี้ ลำดับของตัวอักษรที่คล้ายกันสองลำดับใดๆ อาจถูกประเมินในแง่ของศักยภาพที่จะถูกมองว่าเป็นคู่ของอักษรที่ คล้ายคลึงกัน หรือหากลำดับนั้นปรากฏให้เห็นว่าเป็นคำอย่างชัดเจน ก็อาจถูกมองว่าเป็นอักษรที่คล้ายคลึงกันเทียม (โดยต้องสังเกตอีกครั้งว่าคำศัพท์เหล่านี้อาจทำให้เกิดความสับสนในบริบทอื่นๆ ได้) ในภาษาจีนอักษรจีนตัวย่อหลาย ตัว เป็นอักษรที่มีลักษณะเหมือนกันกับอักษรจีนตัวเต็มที่ สอดคล้อง กัน
ความพยายามของหน่วยงานจดทะเบียน TLDและ นักออกแบบ เว็บเบราว์เซอร์มีเป้าหมายเพื่อลดความเสี่ยงของความสับสนที่เกิดจากตัวอักษรที่เหมือนกัน โดยทั่วไปแล้ว จะทำได้โดยห้ามชื่อที่ผสมชุดตัวอักษรจากหลายภาษา ( toys-Я-us.orgซึ่งใช้ตัวอักษรซีริลลิก ⟨ Я ⟩ จะไม่ถูกต้อง แต่wíkipedia.orgและwikipedia.orgยังคงมีอยู่เป็นเว็บไซต์ที่แตกต่างกัน) [ a ] หน่วยงานจดทะเบียน .caของแคนาดาก้าวไปอีกขั้นโดยกำหนดให้ชื่อที่แตกต่างกันเฉพาะในเครื่องหมายกำกับเสียงต้องมีเจ้าของและผู้จดทะเบียนเดียวกัน[ 8 ]การจัดการตัวอักษรจีนแตกต่างกันไป: ใน การจดทะเบียน .orgและ.infoของรูปแบบหนึ่งจะทำให้รูปแบบอื่นไม่สามารถใช้งานได้สำหรับทุกคน ในขณะที่ใน.bizเวอร์ชันดั้งเดิมและเวอร์ชันตัวย่อของชื่อเดียวกันจะถูกส่งเป็นชุดสองโดเมนซึ่งทั้งสองชี้ไปยังเซิร์ฟเวอร์ ชื่อโดเมน เดียวกัน
เอกสารที่เกี่ยวข้องจะพบได้ทั้งบนเว็บไซต์ของผู้พัฒนาและในฟอรัม IDN [ 9 ] ที่จัด ทำ โดยICANN

อักษรซีริลลิก⟨С⟩ ( U+0421 С CYRILLIC CAPITAL LETTER ES ) ไม่เพียงแต่มีรูปลักษณ์คล้ายกับอักษรละติน⟨C⟩ ( U+0043 C LATIN CAPITAL LETTER C ) เท่านั้น แต่ยังใช้ปุ่มเดียวกันในแป้นพิมพ์แบบผสม JCUKEN-QWERTY อีกด้วย ความแตกต่างเล็กน้อยในการออกแบบนี้สามารถเห็นได้จากปุ่ม C/С ที่จัดแสดงอยู่ในอนุสาวรีย์แป้นพิมพ์ในเมืองเยคาเทรินบูร์ก
ดูเพิ่มเติม
- การโจมตีด้วยโฮโมกราฟในชื่อโดเมน – ตัวอักษรที่คล้ายคลึงกันในชื่อโดเมน
- อักขระซ้ำในยูนิโค้ด – อักขระยูนิโค้ดที่ถูกเข้ารหัสสองครั้ง
- ป้ายทะเบียนรถของบอสเนียและเฮอร์เซโกวีนาใช้เฉพาะตัวเลขและตัวอักษรที่มีลักษณะเหมือนกันทั้งในอักษรละตินและอักษรซีริลลิก
- ยามินจองอึม (Yaminjeongeum)คือเกมภาษาเกาหลีใต้ที่จงใจแทนที่ฮันกุลด้วยตัวอักษรที่มีความหมายเหมือนกัน
หมายเหตุ
- ^ตัวอักษร ⟨í⟩ในคำว่า "Wíkipedia" ตัวแรก มีเครื่องหมายเน้นเสียง (acute accent ) ไม่ใช่ เครื่องหมายเน้นเสียงเล็ก (tittle )
ลิงก์ภายนอก
- https://www.unicode.org/Public/security/latest/confusables.txt - แผนผังการจับคู่คำที่อาจทำให้เกิดความสับสนที่แนะนำสำหรับ IDN