Ir al contenido principal

Normaliza caracteres confundibles a texto seguro

Normalizar caracteres confundibles significa sustituir cada imitación por el carácter normal que imita, para que dos cadenas que se ven iguales también sean iguales al compararlas. Hazlo antes de comparar nombres de usuario, aplicar listas de bloqueo o eliminar identificadores duplicados.

Ejemplo resuelto

Entrada
Cоnfig file: аdmin2, Noёl, café
Escrituras detectadas
latino (Latn), cirílico (Cyrl)
Caracteres marcados
7
PosiciónCarácterPunto de códigoEscrituraReemplazoRegla
0CU+FF23latinoCNormalización NFKC
1оU+043EcirílicooMapa de confundibles
7fiU+FB01latinofiNormalización NFKC
10:U+FF1Acomún:Mapa de confundibles
12аU+0430cirílicoaMapa de confundibles
172U+FF12común2Mapa de confundibles
22ёU+0451cirílicoëMapa de confundibles
Preservar Unicode legible
Config file: admin2, Noël, café
Reserva ASCII estricta
Config file: admin2, Noel, café

Cómo funciona

  • Primero se sustituyen las imitaciones conocidas según el mapa incluido. Los caracteres fuera del mapa se normalizan con NFKC, que convierte formas de ancho completo, ligaduras y otros caracteres de compatibilidad en sus equivalentes estándar.
  • Preservar Unicode legible conserva una letra acentuada cuando el mapa la define, como la ё cirílica → ë. Reserva ASCII estricta usa en su lugar la letra ASCII simple (ё → e).
  • Las letras que no están en el mapa ni cambian con NFKC se conservan, así que café mantiene su tilde en ambos modos. El texto normalizado es una clave de comparación, no un veredicto de seguridad: guarda también el original y revisa los caracteres marcados.

La conversión es el mejor esfuerzo: los confusables mapeados y el plegado NFKC son deterministas, pero algunos Unicode legítimos no serán marcados.

Tu texto

Pegar o escribir: los resultados se actualizan a medida que escribe (ligeramente rebotados para entradas largas).

30 caracteres analizados
7 sospechosos
Reserva ASCII estricta
Modo de conversión

El modo ASCII estricto reemplaza agresivamente a los similares conocidos con ASCII. Puede cambiar texto legítimo no latino cuando un carácter está en el mapa incluido o plegado por NFKC.

Original (caracteres sospechosos marcados)

Los caracteres sospechosos en la vista original están subrayados y etiquetados como "sospechosos". además de resaltar el color.

suspicious character Csuspicious character оnfig suspicious character filesuspicious character : suspicious character аdminsuspicious character 2, Nosuspicious character ёl, café
Salida limpia
Análisis de caracteres
Índice (basado en 0)OriginalReemplazoPunto de códigoRazón
0CCU+FF23NFKC normalization changed this character (compatibility or width folding).
1оoU+043ENon-ASCII confusable mapped to a safer Latin ASCII equivalent.
2nnU+006ENot flagged as a confusable or compatibility character.
3ffU+0066Not flagged as a confusable or compatibility character.
4iiU+0069Not flagged as a confusable or compatibility character.
5ggU+0067Not flagged as a confusable or compatibility character.
6 U+0020Not flagged as a confusable or compatibility character.
7fifiU+FB01NFKC normalization changed this character (compatibility or width folding).
8llU+006CNot flagged as a confusable or compatibility character.
9eeU+0065Not flagged as a confusable or compatibility character.
10::U+FF1ANon-ASCII confusable mapped to a safer Latin ASCII equivalent.
11 U+0020Not flagged as a confusable or compatibility character.
12аaU+0430Non-ASCII confusable mapped to a safer Latin ASCII equivalent.
13ddU+0064Not flagged as a confusable or compatibility character.
14mmU+006DNot flagged as a confusable or compatibility character.
15iiU+0069Not flagged as a confusable or compatibility character.
16nnU+006ENot flagged as a confusable or compatibility character.
1722U+FF12Non-ASCII confusable mapped to a safer Latin ASCII equivalent.
18,,U+002CNot flagged as a confusable or compatibility character.
19 U+0020Not flagged as a confusable or compatibility character.
20NNU+004ENot flagged as a confusable or compatibility character.
21ooU+006FNot flagged as a confusable or compatibility character.
22ёeU+0451Non-ASCII confusable mapped to a safer Latin ASCII equivalent.
23llU+006CNot flagged as a confusable or compatibility character.
24,,U+002CNot flagged as a confusable or compatibility character.
25 U+0020Not flagged as a confusable or compatibility character.
26ccU+0063Not flagged as a confusable or compatibility character.
27aaU+0061Not flagged as a confusable or compatibility character.
28ffU+0066Not flagged as a confusable or compatibility character.
29ééU+00E9Not flagged as a confusable or compatibility character.

Más guías