El Identificador de recursos internacionalizado ( IRI ) es un protocolo de Internet estándar que se basa en el protocolo Identificador uniforme de recursos (URI) al expandir en gran medida el conjunto de caracteres permitidos. [1] [2] [3] Fue definido por el Grupo de trabajo de ingeniería de Internet (IETF) en 2005 en RFC 3987. Si bien los URI están limitados a un subconjunto del juego de caracteres US-ASCII (los caracteres fuera de ese conjunto deben asignarse a octetos de acuerdo con alguna codificación de caracteres no especificada, luego codificados en porcentaje ), los IRI pueden contener adicionalmente la mayoría de los caracteres del Juego de caracteres universal (Unicode /ISO 10646 ), [4] [5] incluidos los caracteres chinos , japoneses , coreanos y cirílicos .
Sintaxis
Los IRI amplían los URI mediante el uso del conjunto de caracteres universal , donde los URI se limitaban a ASCII , con muchos menos caracteres. Los IRI pueden estar representados por una secuencia de octetos, pero por definición se definen como una secuencia de caracteres, porque los IRI pueden ser hablados o escritos a mano. [6]
Compatibilidad
Los IRI se asignan a los URI para mantener la compatibilidad con versiones anteriores de los sistemas que no admiten el nuevo formato. [6]
Para aplicaciones y protocolos que no permiten el consumo directo de IRI, el IRI debe convertirse primero a Unicode utilizando la normalización de composición canónica (NFC) , si no está ya en formato Unicode.
Todos los puntos de código no ASCII en el IRI deben codificarse como UTF-8 y los bytes resultantes codificados porcentualmente para producir un URI válido.
Ejemplo: el IRI https://en.wiktionary.org/wiki/Ῥόδος se convierte en el URI https://en.wiktionary.org/wiki/%E1%BF%AC%CF%8C%CE%B4%CE%BF % CF% 82
Los puntos de código ASCII que son caracteres URI no válidos pueden codificarse de la misma manera, según la implementación. [6]
Esta conversión es fácilmente reversible; por definición, convertir un IRI en un URI y viceversa producirá un IRI que es semánticamente equivalente al IRI original, aunque puede diferir en la representación exacta. [7]
Algunos protocolos pueden imponer más transformaciones; por ejemplo, Punycode para etiquetas DNS .
Ventajas
Hay razones para ver los URI mostrados en diferentes idiomas; sobre todo, lo hace más fácil para los usuarios que no están familiarizados con el alfabeto latino (A – Z). Suponiendo que no sea demasiado difícil para cualquiera replicar Unicode arbitrario en sus teclados, esto puede hacer que el sistema URI sea más accesible. [8]
Desventajas
La combinación de IRI y ASCII URI puede facilitar mucho la ejecución de ataques de phishing que engañan a alguien haciéndole creer que está en un sitio diferente al que realmente se encuentra. Por ejemplo, se puede reemplazar un ASCII "a" www.myfictionalbank.com
por el " α " similar a Unicode para dar www.myfictionαlbank.com
y señalar ese IRI a un sitio malicioso. Esto se conoce como ataque homógrafo IDN .
Si bien un URI no proporciona a las personas una forma de especificar los recursos web utilizando sus propios alfabetos, un IRI no aclara cómo se puede acceder a los recursos web con teclados que no son capaces de generar los caracteres internacionalizados necesarios. Esto significa que los IRI ahora se manejan de una manera muy similar a muchos otros programas de software que pueden requerir el uso de un método de entrada sin teclado cuando se trata de textos en varios idiomas.
Ver también
- IDN (nombre de dominio internacionalizado)
- Web semántica
- Punycode
- XRI (Identificador de recursos extensible)
Referencias
- ^ Gangemi, Aldo; Presutti, Valentina (2006). "La identidad bourne de un recurso web" (PDF) . Proceedings of Identity Reference y el Web Workshop (IRW) . Laboratorio de Ontología Aplicada: 3.
Tenga en cuenta que se supone que los IRI (Identificador de recursos internacionalizados) [11] reemplazarán a los URI en el próximo futuro.
- ^ Suignard, Michel. "Identificadores de recursos internacionalizados (IRI)" . tools.ietf.org . Consultado el 9 de junio de 2018 .
Este documento define un nuevo elemento de protocolo, el Identificador de recursos internacionalizados (IRI), como complemento del Identificador uniforme de recursos (URI). Un IRI es una secuencia de caracteres del juego de caracteres universal (Unicode / ISO 10646). Se define un mapeo de IRI a URI, lo que significa que se pueden usar IRI en lugar de URI, cuando corresponda, para identificar recursos. Se eligió el enfoque de definir un nuevo elemento de protocolo en lugar de ampliar o cambiar la definición de URI.
- ^ Suignard, Michel. "Identificadores de recursos internacionalizados (IRI)" . tools.ietf.org . Consultado el 9 de junio de 2018 .
Este documento define un nuevo elemento de protocolo llamado Identificador de recursos internacionalizado (IRI) al extender la sintaxis de los URI a un repertorio de caracteres mucho más amplio. También define versiones "internacionalizadas" correspondientes a otras construcciones de [RFC3986], como referencias URI. La sintaxis de los IRI se define en la sección 2 y la relación entre los IRI y los URI en la sección 3.
- ^ Suignard, Michel. "Identificadores de recursos internacionalizados (IRI)" . tools.ietf.org . Consultado el 9 de junio de 2018 .
- ^ Suignard, Michel. "Identificadores de recursos internacionalizados (IRI)" . tools.ietf.org . Consultado el 9 de junio de 2018 .
- ^ a b c Duerst, M. (2005). "RFC 3987" . Grupo de trabajo en red . Seguimiento de estándares . Consultado el 12 de octubre de 2014 .
- ^ Hendler, Hrsg. Dieter Fensel; Hrsg. John Domingue; Hrsg. James A. (2010). Manual de Tecnologías de Web Semántica (1. Ed. Aufl.). Berlín: Springer-Verlag GmbH. ISBN 978-3-540-92912-3. Consultado el 12 de octubre de 2014 .
- ^ Clark, Kendall (7 de mayo de 2003). "Internacionalización de la URI" . O'Reilly Media, Inc . Consultado el 12 de octubre de 2014 .
enlaces externos
- Actividad de internacionalización del W3C
- RFC 3987: Estándar propuesto de identificadores de recursos internacionalizados (IRI)
- Lista IANA de esquemas URI registrados