Un código QR ( código de respuesta rápida ) es un tipo de código de barras matricial bidimensional , inventado en 1994 por la empresa japonesa Denso Wave para etiquetar piezas de automóviles. [1] [2] Presenta cuadrados negros sobre un fondo blanco con marcadores fiduciales , legibles mediante dispositivos de imágenes como cámaras y procesados mediante la corrección de errores Reed-Solomon hasta que la imagen pueda interpretarse adecuadamente. Luego, los datos requeridos se extraen de los patrones que están presentes tanto en el componente horizontal como en el vertical de la imagen QR. [3]
Mientras que un código de barras es una imagen óptica legible por máquina que contiene información específica del artículo etiquetado, el código QR contiene datos para un localizador, un identificador y un seguimiento web. Para almacenar datos de manera eficiente, los códigos QR utilizan cuatro modos estandarizados de codificación: (i) numérico, (ii) alfanumérico, (iii) byte o binario y (iv) kanji . [4] En comparación con los códigos de barras UPC estándar , el sistema de etiquetado QR se aplicó más allá de la industria del automóvil debido a una lectura más rápida de la imagen óptica y una mayor capacidad de almacenamiento de datos en aplicaciones como seguimiento de productos, identificación de artículos, seguimiento del tiempo, gestión de documentos y marketing general. [3]
El sistema de códigos QR fue inventado en 1994, en la empresa de productos automotrices Denso Wave , en Japón. [5] [6] [7] El diseño inicial de cuadrados alternos presentado por el equipo de investigadores, encabezado por Masahiro Hara , fue influenciado por las fichas negras y las fichas blancas jugadas en un tablero de Go ; [8] el patrón de detección de posición se encontró y determinó aplicando la proporción menos utilizada (1:1:3:1:1) en áreas en blanco y negro en material impreso, que no pueden ser identificadas erróneamente por un escáner óptico. [9] [5] El propósito funcional del sistema de códigos QR era facilitar el seguimiento de los tipos y números de piezas de automóviles, reemplazando las etiquetas de códigos de barras escaneadas individualmente en cada caja de piezas de automóviles con una sola etiqueta que contenía el datos de cada etiqueta. La configuración cuadrangular del sistema de códigos QR consolidó los datos de las distintas etiquetas de códigos de barras con códigos Kanji, Kana y alfanuméricos que se imprimieron en una sola etiqueta. [10] [9] [5]
A partir de 2024, [actualizar]los códigos QR se utilizan en un contexto mucho más amplio, incluidas aplicaciones de seguimiento comerciales y aplicaciones orientadas a la comodidad dirigidas a usuarios de teléfonos móviles (denominadas etiquetas móviles). Los códigos QR se pueden usar para mostrar texto al usuario, para abrir una página web en el dispositivo del usuario, para agregar un contacto vCard al dispositivo del usuario, para abrir un Identificador uniforme de recursos (URI), para conectarse a una red inalámbrica o para redactar un correo electrónico o un mensaje de texto. Hay una gran cantidad de generadores de códigos QR disponibles como software o como herramientas en línea que son gratuitas o requieren una suscripción paga. [11] El código QR se ha convertido en uno de los tipos de código bidimensional más utilizados. [12]
Durante el mes de junio de 2011, 14 millones de usuarios de dispositivos móviles estadounidenses escanearon un código QR o un código de barras. Alrededor del 58% de esos usuarios escanearon un QR o código de barras desde sus hogares, mientras que el 39% escanearon desde tiendas minoristas; El 53% de los 14 millones de usuarios eran hombres de entre 18 y 34 años. [13]
En 2022, 89 millones de personas en Estados Unidos escanearon un código QR utilizando sus dispositivos móviles, un 26 por ciento más en comparación con 2020. La mayoría de los usuarios de códigos QR los utilizaron para realizar pagos o acceder a información de productos y menús . [14]
En septiembre de 2020, una encuesta encontró que el 18,8 por ciento de los consumidores en los Estados Unidos y el Reino Unido estaban totalmente de acuerdo en que habían notado un aumento en el uso de códigos QR desde que las entonces activas restricciones relacionadas con el COVID-19 habían comenzado varios meses antes. [15]
Existen varios estándares que cubren la codificación de datos como códigos QR: [16]
En la capa de aplicación , existe cierta variación entre la mayoría de las implementaciones. NTT DoCoMo de Japón ha establecido estándares de facto para la codificación de URL, información de contacto y varios otros tipos de datos. [20] El proyecto de código abierto " ZXing " mantiene una lista de tipos de datos de códigos QR. [21]
Los códigos QR se han vuelto comunes en la publicidad para el consumidor. Normalmente, un teléfono inteligente se utiliza como escáner de códigos QR, muestra el código y lo convierte a alguna forma útil (como una URL estándar para un sitio web, evitando así que el usuario tenga que escribirlo en un navegador web ).
El código QR se ha convertido en un foco de estrategia publicitaria, ya que proporciona una forma de acceder al sitio web de una marca más rápidamente que ingresando manualmente una URL. [22] [23] Más allá de la mera conveniencia para el consumidor, la importancia de esta capacidad es que aumenta la tasa de conversión : la posibilidad de que el contacto con el anuncio se convierta en una venta. Convence a los prospectos interesados en el embudo de conversión con poco retraso o esfuerzo, llevando al espectador al sitio web del anunciante inmediatamente, mientras que un discurso de venta más largo y específico puede hacer perder el interés del espectador.
Aunque inicialmente se utilizaron para rastrear piezas en la fabricación de vehículos, los códigos QR se utilizan en una gama mucho más amplia de aplicaciones. Entre ellos se incluyen el seguimiento comercial, el control de existencias en el almacén, la emisión de billetes de transporte y entretenimiento, el marketing de productos y fidelización y el etiquetado de productos en las tiendas. [ cita necesaria ] Los ejemplos de marketing incluyen cuando el descuento y el porcentaje de descuento de una empresa se pueden capturar utilizando un decodificador de código QR que es una aplicación móvil, o almacenar la información de una empresa, como la dirección y la información relacionada, junto con sus datos de texto alfanuméricos, como puede ser visto en las páginas amarillas del directorio telefónico . [ cita necesaria ]
También se pueden utilizar para almacenar información personal para uso de organizaciones. Un ejemplo de esto es la Oficina Nacional de Investigaciones (NBI) de Filipinas, donde las autorizaciones de la NBI ahora vienen con un código QR. Muchas de estas aplicaciones están dirigidas a usuarios de teléfonos móviles (mediante etiquetado móvil ). Los usuarios pueden recibir mensajes de texto, agregar un contacto vCard a su dispositivo, abrir una URL o redactar un correo electrónico o un mensaje de texto después de escanear códigos QR. Pueden generar e imprimir sus propios códigos QR para que otros los escaneen y utilicen visitando uno de varios sitios o aplicaciones de generación de códigos QR gratuitos o de pago. Google tenía una API , ahora obsoleta, para generar códigos QR, [24] y se pueden encontrar aplicaciones para escanear códigos QR en casi todos los dispositivos de teléfonos inteligentes. [25]
Los códigos QR que almacenan direcciones y URL pueden aparecer en revistas, carteles, autobuses, tarjetas de visita o casi cualquier objeto sobre el que los usuarios puedan querer información. Los usuarios con un teléfono con cámara equipado con la aplicación de lectura correcta pueden escanear la imagen del código QR para mostrar texto, información de contacto, conectarse a una red inalámbrica o abrir una página web en el navegador del teléfono. Este acto de vincular objetos del mundo físico se denomina enlace físico o hipervínculo de objetos . Los códigos QR también pueden vincularse a una ubicación para rastrear dónde se ha escaneado un código. O la aplicación que escanea el código QR recupera la información geográfica mediante el uso de GPS y triangulación de torres de telefonía celular (aGPS) o la URL codificada en el código QR está asociada con una ubicación. En 2008, un cantero japonés anunció planes para grabar códigos QR en lápidas, lo que permitiría a los visitantes ver información sobre los fallecidos y a los familiares realizar un seguimiento de las visitas. [27] El psicólogo Richard Wiseman fue uno de los primeros autores en incluir códigos QR en un libro, en Paranormality: Why We See What Isn't There (2011). [28] [ verificación fallida ] Microsoft Office y LibreOffice tienen una funcionalidad para insertar códigos QR en documentos. [29] [30]
Los códigos QR se han incorporado a la moneda. En junio de 2011, la Casa de la Moneda Real Holandesa ( Koninklijke Nederlandse Munt ) emitió la primera moneda oficial del mundo con un código QR para celebrar el centenario de su edificio e instalaciones actuales. La moneda puede escanearse con un teléfono inteligente y vincularse originalmente a un sitio web especial con contenidos sobre el evento histórico y el diseño de la moneda. [31] En 2014, el Banco Central de Nigeria emitió un billete de 100 nairas para conmemorar su centenario, el primer billete que incorpora un código QR en su diseño. Cuando se escanea con un dispositivo móvil con acceso a Internet, el código accede a un sitio web que cuenta la historia centenaria de Nigeria. [32]
En 2015, el Banco Central de la Federación Rusa emitió un billete de 100 rublos para conmemorar la anexión de Crimea por parte de la Federación Rusa . [33] Contiene un código QR en su diseño, y cuando se escanea con un dispositivo móvil con acceso a Internet, el código va a un sitio web que detalla los antecedentes históricos y técnicos de la nota conmemorativa. En 2017, el Banco de Ghana emitió un billete de 5 cedis para conmemorar los 60 años de la Banca Central en Ghana y contiene un código QR en su diseño que, cuando se escanea con un dispositivo móvil con acceso a Internet, ese código va al banco oficial. del sitio web de Ghana.
La funcionalidad de tarjeta de crédito está en desarrollo. En septiembre de 2016, el Banco de la Reserva de la India (RBI) lanzó el Bharat QR del mismo nombre, un código QR común desarrollado conjuntamente por las cuatro principales empresas de pagos con tarjeta: la Corporación Nacional de Pagos de la India, que gestiona las tarjetas RuPay junto con MasterCard, Visa y American. Expresar. También tendrá la capacidad de aceptar pagos en la plataforma de interfaz de pagos unificada (UPI) . [34] [35]
Los códigos QR se utilizan en algunos sistemas de realidad aumentada para determinar las posiciones de objetos en un espacio tridimensional. [10]
Los códigos QR se pueden utilizar en varios sistemas operativos de dispositivos móviles. Tanto los dispositivos Android como iOS pueden escanear códigos QR de forma nativa sin descargar una aplicación externa. [36] La aplicación de la cámara puede escanear y mostrar el tipo de código QR junto con el enlace. Estos dispositivos admiten la redirección de URL , que permite que los códigos QR envíen metadatos a aplicaciones existentes en el dispositivo. Hay muchas aplicaciones gratuitas disponibles con la capacidad de escanear los códigos y vincularlos a una URL externa.
Los códigos QR se han utilizado para establecer "tiendas virtuales", donde se presenta al cliente una galería de información de productos y códigos QR, por ejemplo, en la pared de una estación de tren. Los clientes escanean los códigos QR y los productos se entregan en sus domicilios. Este uso comenzó en Corea del Sur [37] y Argentina, [38] pero actualmente se está expandiendo a nivel mundial. [39] Walmart, Procter & Gamble y Woolworths ya han adoptado el concepto de tienda virtual. [40]
Los códigos QR se pueden utilizar para almacenar información de cuentas bancarias o de tarjetas de crédito, o pueden diseñarse específicamente para funcionar con aplicaciones de proveedores de pagos particulares. Existen varias aplicaciones de prueba de pagos con códigos QR en todo el mundo. [41] [42] En los países en desarrollo, incluidos China, [43] [44] India [45] y Bangladesh, el pago con código QR es un método muy popular y conveniente para realizar pagos. Desde que Alipay diseñó un método de pago con código QR en 2011, [46] el pago móvil se ha adoptado rápidamente en China. En 2018, alrededor del 83% de todos los pagos se realizaron mediante pagos móviles. [47]
En noviembre de 2012, los pagos con códigos QR se implementaron a mayor escala en la República Checa cuando la Asociación Bancaria Checa introdujo y respaldó un formato abierto para el intercambio de información de pagos (un Descriptor de Pago Corto ) como la solución local oficial para pagos QR. [48] [49] En 2013, el Consejo Europeo de Pagos proporcionó directrices para el código QR EPC que permite el inicio de SCT dentro de la zona euro .
En 2017, Singapur creó un grupo de trabajo que incluía agencias gubernamentales como la Autoridad Monetaria de Singapur y la Autoridad de Desarrollo de Medios de Infocomm para encabezar un sistema de pagos electrónicos utilizando especificaciones de códigos QR estandarizados. Estas dimensiones específicas están especializadas para Singapur. [50]
El sistema de pago electrónico, Código de Respuesta Rápida de Singapur (SGQR), esencialmente fusiona varios códigos QR en una etiqueta que pueden utilizar ambas partes en el sistema de pago. Esto permite que varias aplicaciones bancarias faciliten los pagos entre múltiples clientes y un comerciante que muestra el código QR único. El esquema SGQR es copropiedad de MAS e IMDA. [51] Una única etiqueta SDQR contiene pagos electrónicos y combina múltiples opciones de pago. Las personas que realizan compras pueden escanear el código y ver qué opciones de pago acepta el comerciante. [51]
Los códigos QR se pueden utilizar para iniciar sesión en sitios web: se muestra un código QR en la página de inicio de sesión en la pantalla de una computadora , y cuando un usuario registrado lo escanea con un teléfono inteligente verificado, iniciará sesión automáticamente. La autenticación la realiza el teléfono inteligente, que contacta con el servidor. Google implementó un esquema de inicio de sesión de este tipo en 2012. [52]
Existe un sistema mediante el cual se puede mostrar un código QR en un dispositivo como un teléfono inteligente y utilizarlo como boleto de entrada . [53] [54] Su uso es común para las entradas de la J1 League y Nippon Professional Baseball en Japón. [55] [56] En algunos casos, los derechos pueden transferirse a través de Internet. En Letonia , se pueden escanear códigos QR en el transporte público de Riga para validar los billetes electrónicos de Rīgas Satiksme . [57]
Los restaurantes pueden presentar un código QR cerca de la puerta principal o en la mesa, lo que permite a los huéspedes ver un menú en línea, o incluso redirigirlos a un sitio web o aplicación de pedidos en línea, lo que les permite ordenar y/o posiblemente pagar su comida sin tener que usarla. un cajero o camarero. Los códigos QR también pueden vincular a especialidades diarias o semanales que no están impresas en los menús estandarizados, [58] y permiten al establecimiento actualizar todo el menú sin necesidad de imprimir copias. En los restaurantes con servicio de mesa, los códigos QR permiten a los clientes ordenar y pagar sus comidas sin la participación de un camarero: el código QR contiene el número de la mesa para que los camareros sepan dónde llevar la comida. [59] Esta aplicación ha crecido especialmente desde que la necesidad de distanciamiento social durante la pandemia de COVID-19 de 2020 provocó una reducción del contacto entre el personal de servicio y los clientes. [59]
Al especificar el SSID, el tipo de cifrado, la contraseña/frase de contraseña y si el SSID está oculto o no, los usuarios de dispositivos móviles pueden escanear y unirse a redes rápidamente sin tener que ingresar los datos manualmente. [60] Android e iOS 11+ admiten un formato similar a MeCard . [61]
WIFI:S:<SSID>;T:<WEP|WPA|nopass>;P:<PASSWORD>;H:<true|false|blank>;;
WIFI:S:MySSID;T:WPA;P:MyPassW0rd;;
Un código QR puede vincularse a un obituario y puede colocarse en una lápida . En 2008, Ishinokoe en la prefectura de Yamanashi, Japón, comenzó a vender lápidas con códigos QR producidos por IT DeSign, donde el código conduce a una tumba virtual del difunto. [62] [63] [64] Otras empresas, como Interactive Headstones, con sede en Wisconsin, también han comenzado a implementar códigos QR en lápidas. [65] En 2014, el Cementerio Judío de La Paz en Uruguay comenzó a implementar códigos QR para lápidas. [66]
Los códigos QR se pueden utilizar para generar contraseñas de un solo uso basadas en el tiempo para la autenticación electrónica .
Los códigos QR han sido utilizados por varios puntos de venta que tienen programas de fidelización . A veces se accede a estos programas con una aplicación que se carga en un teléfono e incluye un proceso desencadenado por el escaneo de un código QR. Los códigos QR de los programas de fidelización suelen encontrarse impresos en el recibo de una compra o en los propios productos. Los usuarios de estos programas acumulan puntos de premio escaneando un código.
Las marcas [67] y los gobiernos [68] han utilizado códigos QR serializados para permitir a los consumidores, minoristas y distribuidores verificar la autenticidad de los productos y ayudar a detectar productos falsificados, como parte de un programa de protección de marcas . [69] Sin embargo, el nivel de seguridad de un código QR normal es limitado ya que los códigos QR impresos en productos originales se reproducen fácilmente en productos falsos, aunque el análisis de los datos generados como resultado del escaneo de códigos QR se puede utilizar para detectar falsificaciones y actividad ilícita. [70] Se puede lograr un nivel de seguridad más alto incorporando una marca de agua digital o un patrón de detección de copias en la imagen del código QR. Esto hace que el código QR sea más seguro contra intentos de falsificación; Los productos que muestran un código falso, aunque válido como código QR, se pueden detectar escaneando el código QR seguro con la aplicación adecuada. [71]
El tratado que regula las apostillas (documentos que llevan un sello de autenticidad), ha sido actualizado para permitir la emisión de apostillas digitales por parte de los países; una apostilla digital es un documento PDF con una firma criptográfica que contiene un código QR para una URL canónica del documento original, lo que permite a los usuarios verificar la apostilla a partir de una versión impresa del documento.
Se han realizado diferentes estudios para evaluar la eficacia de los códigos QR como medio para transmitir información en el etiquetado y su uso como parte de un sistema de trazabilidad de alimentos. En un experimento de campo, se descubrió que cuando se les proporcionaba acceso gratuito a un teléfono inteligente con una aplicación de escaneo de códigos QR, el 52,6% de los participantes lo usaría para acceder a la información del etiquetado. [72] Un estudio realizado en Corea del Sur demostró que los consumidores aprecian el código QR utilizado en el sistema de trazabilidad de alimentos, ya que proporcionan información detallada sobre los alimentos, así como información que les ayuda en su decisión de compra. [73] Si los códigos QR están serializados, los consumidores pueden acceder a una página web que muestra la cadena de suministro de cada ingrediente, así como información específica de cada lote relacionado, incluidos los procesadores y fabricantes de carne, lo que ayuda a abordar las inquietudes que tienen sobre el origen de su comida. [74]
Después de que la pandemia de COVID-19 comenzó a extenderse, los códigos QR comenzaron a usarse como un sistema "sin contacto" para mostrar información, mostrar menús o proporcionar información actualizada al consumidor, especialmente en la industria hotelera. Los restaurantes reemplazaron los menús de papel o plástico laminado con calcomanías con códigos QR en la mesa, lo que abrió una versión en línea del menú. Esto evitó la necesidad de deshacerse de menús en papel de un solo uso o instituir procedimientos de limpieza y desinfección para menús permanentes después de cada uso. [75] Las estaciones de televisión locales también han comenzado a utilizar códigos en los noticieros locales para permitir a los espectadores un acceso más rápido a historias o información relacionada con la pandemia, incluidos sitios web de programación de pruebas y vacunas, o enlaces dentro de las historias mencionadas en los noticieros en general.
En Australia, los clientes debían escanear códigos QR en tiendas, clubes, supermercados y otros establecimientos minoristas y de servicios al ingresar para ayudar a rastrear contactos . Singapur, Taiwán , el Reino Unido y Nueva Zelanda utilizaron sistemas similares. [76]
Los códigos QR también están presentes en los certificados de vacunación COVID-19 en lugares como Canadá y la UE ( certificado COVID digital de la UE ), donde se pueden escanear para verificar la información del certificado. [77]
A diferencia de los códigos de barras unidimensionales más antiguos, que fueron diseñados para ser escaneados mecánicamente por un haz de luz estrecho, un código QR es detectado por un sensor de imagen digital bidimensional y luego analizado digitalmente por un procesador programado. El procesador ubica los tres cuadrados distintivos en las esquinas de la imagen del código QR, utilizando un cuadrado más pequeño (o varios cuadrados) cerca de la cuarta esquina para normalizar la imagen en cuanto a tamaño, orientación y ángulo de visión. Los pequeños puntos a lo largo del código QR se convierten en números binarios y se validan con un algoritmo de corrección de errores.
La cantidad de datos que se pueden representar mediante un símbolo de código QR depende del tipo de datos ( modo o conjunto de caracteres de entrada), versión (1,..., 40, que indica las dimensiones generales del símbolo, es decir, 4 × número de versión + 17 puntos en cada lado) y nivel de corrección de errores. Las capacidades máximas de almacenamiento ocurren para la versión 40 y el nivel de corrección de errores L (bajo), indicado por 40-L: [12] [78]
Aquí hay algunos ejemplos de códigos QR:
Los códigos QR utilizan la corrección de errores de Reed-Solomon sobre el campo finito o GF(2 8 ) , cuyos elementos están codificados como bytes de 8 bits ; el byte con un valor numérico estándar codifica el elemento de campo donde se considera un elemento primitivo que satisface . El polinomio primitivo es , correspondiente al polinomio número 285, con raíz inicial = 0.
El código Reed-Solomon utiliza uno de los 37 polinomios diferentes , con grados que van del 7 al 68, dependiendo de cuántos bytes de corrección de errores agregue el código. La forma utilizada por Reed-Solomon ( vista BCH sistemática ) implica que todos estos polinomios están en la forma ; sin embargo, las reglas para seleccionar el grado son específicas del estándar QR.
Por ejemplo, el polinomio generador utilizado para el código QR Versión 1 (21×21), cuando se utilizan 7 bytes de corrección de errores, es:
La potencia más alta de en el polinomio (el grado , del polinomio) determina el número de bytes de corrección de errores. En este caso el grado es 7.
Cuando se habla de la fase del código Reed-Solomon existe cierto riesgo de confusión, ya que el estándar QR ISO/IEC utiliza el término palabra clave para los elementos de , que con respecto al código Reed-Solomon son símbolos , mientras que utiliza el término bloque. porque con respecto al código Reed-Solomon son las palabras clave. La cantidad de datos versus bytes de corrección de errores dentro de cada bloque depende de (i) la versión (longitud lateral) del símbolo QR y (ii) el nivel de corrección de errores, de los cuales hay cuatro. Cuanto mayor sea el nivel de corrección de errores, menor será la capacidad de almacenamiento. La siguiente tabla enumera la capacidad aproximada de corrección de errores en cada uno de los cuatro niveles:
En símbolos QR más grandes, el mensaje se divide en varios bloques de código Reed-Solomon. El tamaño del bloque se elige de modo que no se intente corregir más de 15 errores por bloque; esto limita la complejidad del algoritmo de decodificación. Luego, los bloques de código se entrelazan, lo que hace menos probable que un daño localizado en un símbolo QR abrume la capacidad de cualquier bloque individual.
El símbolo QR Versión 1 con corrección de errores de nivel L, por ejemplo, consta de un único bloque de corrección de errores con un total de 26 bytes de código (compuesto por 19 bytes de mensaje y siete bytes de corrección de errores). Puede corregir errores de hasta 2 bytes. Por lo tanto, este código se conoce como código de corrección de errores (26,19,2) sobre GF(2 8 ) .
Debido a la corrección de errores, es posible crear códigos QR artísticos con adornos para hacerlos más legibles o atractivos para el ojo humano, e incorporar colores, logotipos y otras características en el bloque de códigos QR; los adornos se tratan como errores, pero los códigos aún se escanean correctamente. [80] [81]
También es posible diseñar códigos QR artísticos sin reducir la capacidad de corrección de errores mediante la manipulación de las construcciones matemáticas subyacentes. [82] [83] Los algoritmos de procesamiento de imágenes también se utilizan para reducir errores en el código QR. [84]
La información de formato registra dos cosas: el nivel de corrección de errores y el patrón de máscara utilizado para el símbolo. El enmascaramiento se utiliza para dividir patrones en el área de datos que podrían confundir al escáner, como grandes áreas en blanco o características engañosas que se parecen a las marcas de localización. Los patrones de máscara se definen en una cuadrícula que se repite según sea necesario para cubrir todo el símbolo. Los módulos correspondientes a las zonas oscuras de la máscara están invertidos. La información en formato de 5 bits está protegida de errores con un código BCH , y en cada símbolo QR se incluyen dos copias completas. [3] Se utiliza un código BCH de triple corrección de errores (15,5) sobre GF(2 4 ) , que tiene el polinomio generador . Puede corregir como máximo 3 errores de bits de los 5 bits de datos. Hay un total de 15 bits en este código BCH (se agregan 10 bits para corrección de errores). Este código de 15 bits tiene una operación X-OR con un patrón de máscara fijo de 15 bits ( 101010000010010 ) para evitar una cadena de ceros.
El conjunto de datos del mensaje se coloca de derecha a izquierda en un patrón de zigzag, como se muestra a continuación. En símbolos más grandes, esto se complica por la presencia de patrones de alineación y el uso de múltiples bloques de corrección de errores entrelazados.
La estructura general de una codificación QR es una secuencia de indicadores de 4 bits con una longitud de carga útil que depende del modo del indicador (por ejemplo, la longitud de la carga útil de la codificación de bytes depende del primer byte). [85]
Se utilizan indicadores de cuatro bits para seleccionar el modo de codificación y transmitir otra información.
Los modos de codificación se pueden combinar según sea necesario dentro de un símbolo QR. (por ejemplo, una URL con una larga cadena de caracteres alfanuméricos)
[ Indicador de modo][ Modo flujo de bits ] --> [ Indicador de modo][ Modo flujo de bits ] --> etc... --> [ 0000 Fin del mensaje (Terminator) ]
Después de cada indicador que selecciona un modo de codificación hay un campo de longitud que indica cuántos caracteres están codificados en ese modo. El número de bits en el campo de longitud depende de la codificación y de la versión del símbolo.
El modo de codificación alfanumérica almacena un mensaje de forma más compacta que el modo de bytes, pero no puede almacenar letras minúsculas y solo tiene una selección limitada de signos de puntuación, que son suficientes para direcciones web rudimentarias . Dos caracteres se codifican en un valor de 11 bits mediante esta fórmula:
Esto tiene la excepción de que el último carácter de una cadena alfanumérica con una longitud impar se lee como un valor de 6 bits.
Las siguientes imágenes ofrecen más información sobre el código QR.
El código QR del modelo 1 es una versión anterior de la especificación. Es visualmente similar a los códigos del modelo 2 ampliamente vistos, pero carece de patrones de alineación. Las diferencias están en la esquina inferior derecha, y en las secciones medias de los bordes inferior y derecho hay regiones funcionales adicionales.
El código Micro QR es una versión más pequeña del código QR estándar para aplicaciones donde el tamaño del símbolo es limitado. Hay cuatro versiones (tamaños) diferentes de códigos Micro QR: el más pequeño es de 11×11 módulos; el más grande puede contener 35 caracteres numéricos, [86] o 21 caracteres alfanuméricos ASCII , o 15 bytes (128 bits).
El código Micro QR rectangular (también conocido como código rMQR) es un código de barras matricial bidimensional (2D) inventado y estandarizado en 2022 por Denso Wave como ISO/IEC 23941. El código rMQR está diseñado como una variación rectangular del código QR y tiene los mismos parámetros. y aplicaciones como código QR original. Pero el código rMQR es más adecuado para áreas rectangulares y tiene una diferencia entre ancho y alto de hasta 19 en la versión R7x139.
El código iQR es una alternativa a los códigos QR cuadrados existentes desarrollados por Denso Wave. Los códigos iQR se pueden crear en formaciones cuadradas o rectangulares; Esto está pensado para situaciones en las que una forma rectangular más larga y estrecha es más adecuada, como en objetos cilíndricos. Los códigos iQR pueden contener la misma cantidad de información en un 30% menos de espacio. Hay 61 versiones de códigos iQR cuadrados y 15 versiones de códigos rectangulares. Para cuadrados, el tamaño mínimo es de 9×9 módulos; Los rectángulos tienen un mínimo de 19 × 5 módulos. Los códigos iQR añaden un nivel de corrección de errores S, que permite una corrección de errores del 50%. [87] A los códigos iQR no se les había otorgado una especificación ISO/IEC a partir de 2015, y solo los productos patentados de Denso Wave podían crear o leer códigos iQR. [88]
El código Secure Quick Response (SQR) es un código QR que contiene un segmento de "datos privados" después del terminador en lugar de los bytes de relleno especificados "ec 11". [89] Este segmento de datos privados debe descifrarse con una clave de cifrado. Esto se puede utilizar para almacenar información privada y para gestionar la información interna de una empresa. [90]
Frame QR es un código QR con un "área de lienzo" que se puede utilizar de forma flexible. En el centro de este código está el área del lienzo, donde se pueden organizar de manera flexible gráficos, letras y más, lo que permite diseñar el código sin perder el diseño de ilustraciones, fotografías, etc. [91]
Los investigadores han propuesto un nuevo código bidimensional coloreado de alta capacidad (HCC2D), que se basa en un código QR para preservar la robustez del QR ante las distorsiones y utiliza colores para aumentar la densidad de datos (a partir de 2014 todavía se encuentra en la fase de creación de prototipos). La especificación del código HCC2D se describe en detalle en Querini et al. (2014), [92] mientras que las técnicas para la clasificación de colores de las celdas del código HCC2D se describen en detalle en Querini e Italiano (2014), [93], que es una versión ampliada de Querini e Italiano (2013). [94]
Introducir colores en los códigos QR requiere abordar cuestiones adicionales. En particular, durante la lectura de códigos QR solo se tiene en cuenta la información de brillo, mientras que los códigos HCC2D tienen que hacer frente a distorsiones cromáticas durante la fase de decodificación. Para asegurar la adaptación a las distorsiones cromáticas que surgen en cada código escaneado, los códigos HCC2D hacen uso de un campo adicional: el Patrón de Paleta de Colores. Esto se debe a que se supone que las celdas de color de un patrón de paleta de colores están distorsionadas de la misma manera que las celdas de color de la región de codificación. Se utilizan paletas de colores replicadas para entrenar clasificadores de aprendizaje automático.
QR accesible es un tipo de código QR que combina un código QR estándar con un patrón de puntos y rayas colocado alrededor de una esquina del código para proporcionar información del producto a personas ciegas y con discapacidad visual. Los códigos anuncian categorías de productos y detalles del producto, como instrucciones, ingredientes, advertencias de seguridad e información sobre reciclaje. Los datos están estructurados para las necesidades de los usuarios ciegos o deficientes visuales y ofrecen una salida de texto o audio más grande. Puede leer códigos QR a un metro de distancia, activando las funciones de accesibilidad del teléfono inteligente, como VoiceOver, para anunciar detalles del producto.
El uso de la tecnología de códigos QR tiene licencia gratuita siempre que los usuarios sigan los estándares para códigos QR documentados con JIS o ISO / IEC . Los códigos no estandarizados pueden requerir una licencia especial. [95]
Denso Wave posee varias patentes sobre tecnología de códigos QR, pero ha optado por ejercerlas de forma limitada. [95] Con el fin de promover el uso generalizado de la tecnología, Denso Wave decidió renunciar a sus derechos sobre una patente clave en su poder únicamente para códigos estandarizados . [16] En los EE. UU., la patente del código QR concedida es 5726435, y en Japón 2938338, las cuales han expirado. La Oficina Europea de Patentes concedió la patente 0672994 a Denso Wave, que luego fue validada en patentes francesas, británicas y alemanas, todas las cuales expiraron en marzo de 2015. [96]
El texto del Código QR en sí es una marca registrada y una marca denominativa de Denso Wave Incorporated. [97] En el Reino Unido, la marca está registrada como E921775, el término Código QR , con fecha de presentación del 3 de septiembre de 1998. [98] La versión británica de la marca se basa en la marca Kabushiki Kaisha Denso (DENSO CORPORATION), registrada como Marca 000921775, el término Código QR , el 3 de septiembre de 1998 y registrada el 16 de diciembre de 1999 en la OAMI (Oficina de Armonización del Mercado Interior) de la Unión Europea. [99] La marca registrada estadounidense para el término Código QR es la marca registrada 2435991 y fue presentada el 29 de septiembre de 1998 con una fecha de registro modificada del 13 de marzo de 2001, asignada a Denso Corporation. [100] En Corea del Sur, la solicitud de marca presentada el 18 de noviembre de 2011 fue rechazada el 20 de marzo de 2012, porque la Oficina de Propiedad Intelectual de Corea consideró que la frase estaba genérica entre los surcoreanos para referirse a códigos de barras matriciales en general. [101]
El único contexto en el que los códigos QR comunes pueden transportar datos ejecutables es el tipo de datos URL. Estas URL pueden alojar código JavaScript , que puede usarse para explotar vulnerabilidades en aplicaciones en el sistema host, como el lector, el navegador web o el visor de imágenes, ya que un lector normalmente enviará los datos a la aplicación asociada con el tipo de datos. utilizado por el código QR.
En el caso de que no haya vulnerabilidades de software, los códigos QR maliciosos combinados con un lector permisivo aún pueden poner en riesgo el contenido de una computadora y la privacidad del usuario. Esta práctica se conoce como "tagging", un acrónimo de "tagging tagging". [102] Se crean fácilmente y se pueden colocar sobre códigos QR legítimos. [103] En un teléfono inteligente, los permisos del lector pueden permitir el uso de la cámara, acceso completo a Internet, lectura/escritura de datos de contacto, GPS , lectura del historial del navegador, lectura/escritura del almacenamiento local y cambios globales del sistema. [104] [105] [106]
Los riesgos incluyen vincular a sitios web peligrosos con vulnerabilidades del navegador, habilitar el micrófono/cámara/GPS y luego transmitir esas transmisiones a un servidor remoto, análisis de datos confidenciales (contraseñas, archivos, contactos, transacciones), [107] y envío de correo electrónico/ Mensajes o paquetes SMS /IM para DDoS como parte de una botnet , corrompiendo la configuración de privacidad, robando identidad [108] e incluso conteniendo lógica maliciosa como JavaScript [109] o un virus. [110] [111] Estas acciones podrían ocurrir en segundo plano mientras el usuario solo ve al lector abriendo una página web aparentemente inofensiva. [112] En Rusia, un código QR malicioso provocó que los teléfonos que lo escanearan enviaran mensajes de texto premium a una tarifa de 6 dólares cada uno. [102] Los códigos QR también se han relacionado con estafas en las que se colocan pegatinas en los parquímetros , haciéndose pasar por opciones de pago rápido, como se ha visto en Austin , San Antonio y Boston , entre otras ciudades de Estados Unidos y Australia. [113] [114] [115]