ตรวจจับโฮโมกลิฟในโดเมน ชื่อผู้ใช้ และข้อความ
โฮโมกลิฟคืออักขระที่ดูเหมือนอักขระอื่นที่คุ้นเคยกว่า: а ซีริลลิก (U+0430) กับ a ละติน (U+0061) ดูเหมือนกันทุกประการในฟอนต์ส่วนใหญ่ แต่เป็นจุดรหัสต่างกัน ตัวตรวจจับจะตรวจทุกอักขระและแสดงอักขระเลียนแบบแต่ละตัวพร้อมตำแหน่ง จุดรหัส ระบบอักษร Unicode และอักขระที่มันเลียนแบบ
ตัวอย่างพร้อมคำอธิบาย
- ข้อความที่ป้อน
- pаypаl.com / Αdmіn
- ระบบอักษรที่พบ
- ละติน (Latn), ซีริลลิก (Cyrl), กรีก (Grek)
- อักขระที่ถูกทำเครื่องหมาย
- 4
| ตำแหน่ง | อักขระ | จุดรหัส | ระบบอักษร | อักขระแทนที่ | กฎ |
|---|---|---|---|---|---|
| 1 | а | U+0430 | ซีริลลิก | a | ตารางอักขระที่สับสนได้ |
| 4 | а | U+0430 | ซีริลลิก | a | ตารางอักขระที่สับสนได้ |
| 13 | Α | U+0391 | กรีก | A | ตารางอักขระที่สับสนได้ |
| 16 | і | U+0456 | ซีริลลิก | i | ตารางอักขระที่สับสนได้ |
- รักษา Unicode ที่อ่านได้
- paypal.com / Admin
วิธีการทำงาน
- ทุกอักขระจะถูกเทียบกับตารางในตัวที่รวบรวมอักขระเลียนแบบที่พบบ่อยจากซีริลลิก กรีก รูปแบบต่าง ๆ ของละติน และอักขระเต็มความกว้าง เมื่อตรงกัน อักขระจะถูกทำเครื่องหมายพร้อมตัวอักษร ตัวเลข หรือเครื่องหมายวรรคตอน ASCII ที่มันเลียนแบบ
- อักขระที่ไม่อยู่ในตารางจะผ่านการทำให้เป็นมาตรฐาน Unicode แบบ NFKC หาก NFKC เปลี่ยนอักขระนั้น เช่น ตัวอักษรเต็มความกว้างและอักษรควบอย่าง fi จะถูกทำเครื่องหมายว่าเป็นรูปแบบความเข้ากันได้
- ตำแหน่งนับเป็นจุดรหัส Unicode โดยเริ่มจาก 0 คำที่ผสมอักษรละตินกับอักษรซีริลลิกหรือกรีกเป็นสัญญาณเตือนที่ชัดเจน เพราะคำจริงแทบไม่เคยเปลี่ยนระบบอักษรกลางคำ
การแปลงเป็นความพยายามอย่างดีที่สุด: Confusable ที่แมปไว้และการพับ NFKC นั้นถูกกำหนดไว้ แต่ Unicode ที่ถูกต้องตามกฎหมายบางตัวจะไม่ถูกตั้งค่าสถานะ
ข้อความของคุณ
วางหรือพิมพ์ — ผลลัพธ์จะอัปเดตในขณะที่คุณพิมพ์ (หักล้างเล็กน้อยสำหรับการป้อนข้อมูลแบบยาว)
สแกน 18 อักขระแล้ว
4 รายการน่าสงสัย
รักษา Unicode ที่อ่านได้
ต้นฉบับ (ทำเครื่องหมายอักขระที่น่าสงสัย)
อักขระที่น่าสงสัยในมุมมองดั้งเดิมจะถูกขีดเส้นใต้และติดป้ายกำกับว่า "ต้องสงสัย" นอกจากจะเน้นสีแล้ว
psuspicious character аypsuspicious character аl.com / suspicious character Αdmsuspicious character іn
เอาต์พุตที่สะอาดแล้ว
การวิเคราะห์อักขระ
| ดัชนี (ตาม 0) | ต้นฉบับ | การทดแทน | จุดรหัส | เหตุผล |
|---|---|---|---|---|
| 0 | p | p | U+0070 | Not flagged as a confusable or compatibility character. |
| 1 | а | a | U+0430 | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 2 | y | y | U+0079 | Not flagged as a confusable or compatibility character. |
| 3 | p | p | U+0070 | Not flagged as a confusable or compatibility character. |
| 4 | а | a | U+0430 | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 5 | l | l | U+006C | Not flagged as a confusable or compatibility character. |
| 6 | . | . | U+002E | Not flagged as a confusable or compatibility character. |
| 7 | c | c | U+0063 | Not flagged as a confusable or compatibility character. |
| 8 | o | o | U+006F | Not flagged as a confusable or compatibility character. |
| 9 | m | m | U+006D | Not flagged as a confusable or compatibility character. |
| 10 | U+0020 | Not flagged as a confusable or compatibility character. | ||
| 11 | / | / | U+002F | Not flagged as a confusable or compatibility character. |
| 12 | U+0020 | Not flagged as a confusable or compatibility character. | ||
| 13 | Α | A | U+0391 | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 14 | d | d | U+0064 | Not flagged as a confusable or compatibility character. |
| 15 | m | m | U+006D | Not flagged as a confusable or compatibility character. |
| 16 | і | i | U+0456 | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 17 | n | n | U+006E | Not flagged as a confusable or compatibility character. |