Cómo leer la MRZ de un pasaporte o DNI, línea por línea

Qué significa cada bloque de caracteres, cómo funcionan los dígitos de control y por qué una franja tapada a medias sigue filtrando.

Respuesta corta

La MRZ de un pasaporte son dos líneas de 44 caracteres; la de un DNI o cédula son tres líneas de 30, impresas en el reverso. La primera línea lleva el tipo de documento, el país emisor y tu nombre. La segunda lleva el número de documento, la nacionalidad, la fecha de nacimiento, el sexo y la fecha de caducidad — cada uno seguido de un dígito de control, más un dígito compuesto final que cubre el conjunto. Las fechas van en formato AAMMDD y < es el carácter de relleno.
  • Cada campo de la segunda línea va seguido de un dígito de control, así que tapar un número y dejar su dígito permite comprobar conjeturas.
  • < no es decoración: es el carácter de relleno y vale cero al calcular un dígito de control.
  • En una tarjeta de identidad la franja está en el reverso, así que censurar solo el anverso deja intacto todo el registro legible por máquina.

Casi todas las guías — la nuestra incluida — te dicen que tapes la zona de lectura mecánica y ahí lo dejan. Esta la descifra, porque en cuanto ves qué es cada bloque de caracteres resulta evidente por qué tapar casi toda la franja no equivale a taparla.

Todo lo que sigue procede de ICAO Doc 9303, el estándar que sigue cualquier documento de viaje legible por máquina. Es público, y es la razón por la que un lector de un país puede leer un pasaporte emitido en otro.

Dónde está la franja y qué tamaño tiene

Dos formatos cubren casi todo lo que llevas en la cartera:

DocumentoLíneasCaracteres por líneaDónde
Pasaporte (TD3)244Parte inferior de la página de datos
DNI, NIE o cédula (TD1)330Reverso de la tarjeta

La Parte 3 del estándar enuncia la regla sin ambigüedad: los datos legibles por máquina se disponen «en dos líneas (superior e inferior), salvo en los documentos de viaje de tamaño TD1, donde hay tres líneas». Y la Parte 5, que cubre los documentos del tamaño de una tarjeta, es igual de tajante sobre su ubicación: la MRZ está en el reverso del TD1.

Esa frase explica por qué se filtran tantos DNI censurados. La gente fotografía el anverso, tapa el número y nunca da la vuelta a la tarjeta.

Qué campos tapar en la página de datos de un pasaporteEsquema de la página de datos de un pasaporte. La foto, los apellidos, el nombre y la nacionalidad aparecen marcados como visibles; el número de documento, la fecha de nacimiento, la fecha de caducidad, el lugar de nacimiento, la firma y las dos líneas de la zona de lectura mecánica al pie de la página aparecen marcados para tapar.PASAPORTE / PÁGINA DE DATOSFotoApellidosNombreNúmero de documentoNacionalidadFecha de nacimientoFecha de caducidadFirmaLugar de nacimientoZona de lectura mecánica (MRZ)
  • Tapar antes de compartir
  • Normalmente se puede dejar visible
La página de datos de un pasaporte, campo a campo. La misma división vale para un DNI: solo cambia la disposición.

Línea 1 — la línea del nombre

En un pasaporte, la primera línea se descompone así:

  • Posiciones 1–2 — el código de documento. P para pasaporte, rellenado con <.
  • Posiciones 3–5 — el Estado u organización emisor, en un código de tres letras.
  • Posiciones 6–44 — tu nombre, 39 caracteres para todo.

El nombre no va escrito como lo escribes tú. Primero los apellidos, después dos caracteres de relleno (<<), después los nombres, con un solo < entre cada componente. Lo que sobra se rellena con < hasta la posición 44. Los signos diacríticos se eliminan: el estándar no los permite porque «confundirían a los equipos de lectura mecánica».

Un nombre largo, por tanto, se trunca en lugar de continuar en otra línea — y el estándar precisa que, cuando eso ocurre, el último carácter debe ser una letra, lo que es en sí la señal de que hubo truncamiento.

Línea 2 — la línea de datos

Esta es la que importa. En un pasaporte, cada campo tiene un sitio fijo:

PosicionesQué contiene
1–9Número de documento
10Dígito de control del número de documento
11–13Nacionalidad (código de tres letras)
14–19Fecha de nacimiento, en formato AAMMDD
20Dígito de control de la fecha de nacimiento
21Sexo — F, M o < si no se especifica
22–27Fecha de caducidad, en formato AAMMDD
28Dígito de control de la fecha de caducidad
29–42Número personal u otros datos opcionales
43Dígito de control de ese campo opcional
44Dígito de control compuesto sobre las posiciones 1–10, 14–20 y 22–43

Las fechas son seis dígitos, empezando por el año: el 12 de julio de 1942 es 420712 — el ejemplo del propio estándar. Es decir, año de dos cifras y sin siglo. Esa ambigüedad es problema de la máquina, no tuyo.

Cómo funcionan los dígitos de control

Cinco de los 44 caracteres de esa línea son dígitos de control, y no son un hash ni una firma. El cálculo se puede hacer a mano, y la Parte 3, sección 4.9 lo detalla en cuatro pasos: de izquierda a derecha, multiplica cada carácter por una ponderación que se repite 7, 3, 1; suma los productos; divide entre 10; el resto es el dígito de control.

Dos reglas hacen que funcione también con texto:

  • Las letras valen de A = 10 a Z = 35.
  • El relleno < vale cero.

Ese es todo el algoritmo. Existe para que un lector sepa que ha interpretado bien la franja.

Por qué esto cambia cómo censurar

Aquí está la parte que ninguna explicación de la MRZ escrita para desarrolladores se molesta en tratar.

Un dígito de control no contiene el valor que protege. Pero sí permite comprobar una conjetura y descartar gratis nueve de cada diez intentos fallidos. Si tapas el número de documento pero dejas visible su dígito de control en la posición 10, has entregado una forma de puntuar intentos. Si dejas visible la posición 44 — el dígito compuesto, calculado a la vez sobre el número, la fecha de nacimiento y la de caducidad —, has entregado una forma de puntuar intentos contra los tres.

Nada de esto convierte una copia censurada a medias en algo legible al instante. La convierte en algo verificable, que es justo la propiedad que querías eliminar.

Así que la regla sigue siendo la misma, y ahora tiene un motivo detrás: tapa la franja entera, todas las líneas, de borde a borde. No los números dejando asomar los dígitos de control. No dos líneas de tres. Para el resto del documento, consulta cómo censurar un pasaporte o DNI — y recuerda que una caja opaca es mejor que un desenfoque, por motivos que tratamos aparte.

Anonymize my ID tapa la franja completa por ambas caras de la tarjeta, en el propio dispositivo y sin subir la foto a ningún sitio.

Preguntas frecuentes

¿Cuántas líneas y caracteres tiene una MRZ?

Depende del tamaño del documento definido por ICAO Doc 9303. Un pasaporte (TD3) tiene dos líneas de 44 caracteres en la parte inferior de la página de datos. Un documento del tamaño de una tarjeta (TD1) tiene tres líneas de 30 caracteres, impresas en el reverso. La Parte 3 del estándar lo dice sin rodeos: los datos se disponen en dos líneas, salvo en los documentos de tamaño TD1, donde hay tres.

¿Qué significan los caracteres < de la MRZ?

El < es el carácter de relleno. Rellena cualquier campo que no ocupe todas sus posiciones, separa los componentes de tu nombre y marca un campo de sexo sin especificar. Dos seguidos (<<) separan los apellidos de los nombres. No es un error ni una censura — y al calcular un dígito de control, cada < vale cero.

¿Cómo se calcula un dígito de control de la MRZ?

ICAO Doc 9303 Parte 3 lo especifica: se toman los caracteres del campo, se multiplica cada uno por una ponderación que se repite 7, 3, 1, se suman los productos, se divide entre 10 y el resto es el dígito de control. Las letras valen de A=10 a Z=35, y el relleno < cuenta como cero.

¿Por qué importa una MRZ tapada solo en parte?

Porque los dígitos de control se quedan. Un dígito de control no revela el valor que protege, pero sí permite verificar una conjetura y descartar nueve de cada diez intentos erróneos — y el dígito compuesto del final se calcula sobre el número de documento, la fecha de nacimiento y la de caducidad a la vez. Tapa la franja entera, de borde a borde, en todas las líneas.