Informática Aplicada a las Ciencias Sociales
Grado en Ciencias Políticas y Gestión Pública. Universidad de Murcia
um.es/docencia/barzana > IACCSS > Criptografia.html

Criptografía

Introducción


Gracias a las tecnologías en informática y telecomunicaciones (TIC), casi no existe la privacidad y las comunicaciones pueden ser interceptadas fácilmente, por lo que añadir seguridad extra a los datos se hace imprescindible, siendo habituales los servicios de encriptación.

Encriptar no es nada nuevo y forma parte de lo que es la criptología, técnica que tuvo su inicios en el antiguo Egipto en el año 2000 a.n.e. y que tiene como objetivo "esconder información" para evitar que sea interceptada y, en caso de serlo, que no se pueda descifrar, ya que solo el verdadero receptor tiene las claves para entenderla.

Criptografía
El objetivo de encriptar es:
  • Garantizar el secreto en la comunicación entre dos entidades (personas, organizaciones, etc.).
  • Asegurar que la información que se envía es auténtica en doble sentido, lo cual indica que también se ha de verificar que el remitente es realmente quien dice ser.
  • Impedir que el contenido del mensaje enviado (criptograma) sea modificado en el proceso de comunicación.
Criptología, proviene del griego, une los términos kriptos (escondido, oculto) con logos (discurso, estudio). La criptología entonces vendría a ser el estudio del sentido oculto o lo que se esconde en determinados mensajes.

Los campos en los que se divide la criptología son:
  • Criptografía. Se ocupa del estudio de los algoritmos, protocolos y sistemas que se utilizan para proteger la información y dotar de seguridad a las comunicaciones y a las entidades que se comunican.
  • Criptoanálisis. Se ocupa de conseguir capturar el significado de mensajes construidos mediante criptografía sin estar legitimado para ello. Tiene un objetivo opuesto al de la criptografía. Su finalidad es buscar el punto débil de las técnicas criptográficas para explotarla y así reducir o eliminar la seguridad que teóricamente aportaba esa técnica. A cualquier intento de criptoanálisis se le llama ataque. Tiene éxito, y se dice que el sistema ha sido roto, cuando el atacante consigue romper la seguridad que la técnica criptográfica aporta al sistema.
  • Esteganografía. Trata de ocultar mensajes con información privada por un canal inseguro, de forma que el mensaje no sea percibido. Habitualmente el mensaje se oculta dentro de datos con formatos de vídeo, imágenes, audio o mensajes de texto. Los usos más frecuentes de estas técnicas son: transmitir información entre entidades sin que sea detectada por terceros, inclusión de información imperceptible en objetos digitales (como imágenes, vídeos, audios) para permitir un mayor control del uso de esos objetos digitales (por ejemplo para implementar huellas digitales o marcas de agua).
  • Estegoanálisis. Se ocupa de detectar mensajes ocultos con técnicas esteganograficas. Su objetivo es opuesto al de la esteganografía. Intenta encontrar el punto débil de las técnicas esteganográficas para explotarlas y así reducir o eliminar la seguridad que teóricamente aportaba esa técnica. A cualquier intento de estegoanálisis se le llama ataque, y si tiene éxito se dice que el sistema ha sido roto, cuando el atacante detecta que se ha usado esteganografía y por tanto puede obtener el mensaje.
    Hay quienes utilizan el término estegología para denominar al compendio de esteganografía y estegoanálisis.

Historia

  • La criptografía es casi tan antigua como la escritura.
  • Los egipcios usaron métodos criptográficos (jeroglíficos).
  • En el siglo V a.n.e. es Esparta se ideó el escitalo.
  • El cifrador de Polybios es el primer cifrado por sustitución de caracteres. Se atribuye al historiador griego Polybios.
  • A quien se le atribuye el primer método de encriptado es al general Julio César.
  • El libro más antiguo de criptografía data del siglo XIV.
  • En el siglo XV destaca Leon Battista Alberti, considerado por muchos como el padre de la criptografía.
  • En 1470 Leon Battista publicó Tratado de cifras y en 1530 publicó Poligrafía.
  • En el siglo XVI destacó Girolamo Cardano.
  • En el siglo XIX se utilizó mucho el método de transposición.
  • La primera patente data de 1919 registrada por el holandes Alexander Koch y el alemán Arthur Sherbius.
  • Arthur Sherbius inventó la máquina ENIGMA.
  • El mayor desarrollo de la criptografía se dió en el período de entreguerras.
  • En 1975 Diffie y Hellman establecieron las bases teóricas de los algoritmos de clave pública.

Algoritmos antiguos


ESPARTA Y LA DIFUSIÓN

Una de las primeras técnicas criptográficas fue la empleada en Esparta en el Siglo V a.n.e. Para establecer comunicaciones militares, se empleaba un papiro alargado en forma de cinta y un bastón llamado escitalo. El papiro se enrollaba en el bastón y se escribía el texto a lo largo de éste último, de forma transversal al papiro. Para poder leer el mensaje, el receptor necesitaba un bastón con el mismo diámetro.

Si se desea cifrar un mensaje empleando este método, y no se dispone de un bastón ni de una cinta de papiro, será suficiente con escribir el texto por columnas de tamaño fijo y luego leerlo por filas. A modo de ejemplo, el mensaje "LOS ESPARTANOS SON LOS MAS GUAPOS DEL PELOPONESO". Si se supone que el diámetro del bastón permite escribir seis signos en cada vuelta, se emplearían columnas de seis letras:

Resultando:

"LPO APLPOASLSO OSR O SPN TSSG EEEAO UDLSSNNMAEOO"

Escitalo, ejemplo de criptografía Este criptosistema responde a un esquema de transposición, ya que lo único que se hace es cambiar de sitio los símbolos del mensaje original, por lo que si se calcula las frecuencias relativas de aparición de cada símbolo, serán iguales en el texto claro y en el criptograma. Si se tiene un texto cifrado cualquiera, y se conocen las frecuencias relativas de aparición de cada letra en el idioma del mensaje, bastará con comparar dichas frecuencias con las del criptograma para saber si ha sido codificado mediante transposiciones.

¿Se puede criptoanalizar este método? Obviamente, se puede decodificar el mensaje en columnas de diferentes longitudes hasta dar con el mensaje original, pero habría que leer todos los posibles resultados para saber cuál es el bueno. El interés será automatizar este proceso, y para ello se puede recurrir a la redundancia. En este caso, no sirven las probabilidades de aparición de cada símbolo, puesto que, como ya se ha dicho, son las mismas en el mensaje original y en el mensaje cifrado. Sin embargo, a poco que se observe, las frecuencias relativas de las parejas y tríos de letras en el mensaje original y el criptograma sí que son diferentes, así que se explotará esa posibilidad.

La idea es muy simple, en el mensaje cifrado previo hay combinaciones de letras que no son en absoluto frecuentes (o no permitidas) en castellano, como por ejemplo "TSS", "EEE" o "SR". Si se precalculan en una tabla las frecuencias de aparición de parejas y tríos de letras en castellano, se tendrá una distribución de probabilidad a la que deberá ajustarse el texto que dio lugar al mensaje cifrado. Esto permitirá "puntuar" cada posible texto claro en función de que su distribución se ajuste mejor o peor a la distribución estándar de pares y tríos.

En el ejemplo, el mensaje tiene 48 caracteres, por lo que las columnas pueden ser de 2,3,4,6,8,12,16 o 24 caracteres de altura.


Columnas de altura 2: Los símbolos de 24 en 24: "L PTOS SAGP..." No es necesario seguir, ya que por ejemplo hay una 'L' sola, que no tiene sentido en castellano.

Columnas de altura 3: Los símbolos de 16 en 16: "LSEPRAO O O A UPSDLPL...". Descartada.

Columnas de altura 4: Símbolos de 12 en 12: "LS UPOTDO SL OSS...". Descartada.

Columnas de altura 6: Símbolos de 8 en 8: "LOS ESPARTANOS SON LOS MAS GUAPOS...". Posible solución.

Columnas de altura 8: Símbolos de 6 en 6: "LLS EUNPPOO...". Descartada.

Se podrían determinar todas las posibilidades y la respuesta más verosímil es la que corresponde a columnas de altura 6. En general, en casi todas las demás posibles soluciones aparecerán combinaciones de letras muy poco probables o ilegales en castellano, por lo que el nivel de confianza es mucho menor. Un programa que realice estos cálculos y que presente las posibles soluciones ordenadas de mayor a menor verosimilitud, devolverá la solución correcta siempre en las primeras posiciones.

Casi 2500 años después, Claude Shannon definió el concepto de difusión como el proceso que "dispersa la redundancia del texto plano repartiéndola a lo largo del texto cifrado". La transposición es el mecanismo más simple para llevar a cabo una difusión sobre el texto en claro. De hecho, al cambiar de sitio las cosas, pero sin alterar su valor, estamos esparciendo a lo largo del criptograma los patrones redundantes del texto original.

A continuación se accede a un programa que permite simular el proceso.

Mensaje:
Ancho de la vara (n)






El cifrador de Polybios

Es el cifrador por sustitución de caracteres más antiguo que se conoce. Es bastante rudimentario, consistía en conseguir una correspondencia de una letra con otro par mediante una matriz en la que estaba el alfabeto completo, según el siguiente esquema:

Polybios Para adaptarlo al lenguaje español hay que fijarse en que hay algunas combinaciones de letras como serían “ij” y “nñ”a las que le correspondería el mismo código de cifrado, pero son lo suficientemente diferentes para poder salir de dudas sobre el carácter correcto desencriptando el mensaje.

El método, consistía en hacer corresponder la letra que se deseaba ocultar con otras dos según la fila y la columna de la matriz a la que pertenecía. Por ejemplo, la letra “a” sería “AA”, la “s” sería “DC”.

ROMA Y LA CONFUSION

Varios siglos después, el dictador romano Cayo Julio César (100-44 a.n.e.) desarrolló su propio mecanismo de codificación de mensajes, un método que ha conservado el nombre de quien lo ideó hasta nuestros días. Este algoritmo consistía en la sustitución de cada letra por la que aparece tres posiciones a su derecha en el alfabeto, así la A se convierte en D, la B en E y así sucesivamente.

Claude Shannon acuñó también un término que tiene mucho que ver con los mecanismos involucrados en este algoritmo: la confusión, que es el proceso que "oculta la relación entre el texto claro y el texto cifrado". Y como de nuevo cabría esperar, el método más simple para aplicar confusión es, precisamente, la sustitución. Para percatarse de esto basta con pensar en una sustitución global, que a cada posible mensaje le haga corresponder un criptograma diferente, mediante una simple tabla de traducción. Como es de esperar, semejante tabla sería inconcebiblemente grande, ya que tendría que tener una entrada para cada posible mensaje susceptible de ser codificado, pero proporcionaría un nivel de seguridad total, ya que no queda ningún tipo de relación entre cada mensaje y su criptograma correspondiente al margen de la gigantesca tabla.

Algoritmos modernos


Criptografía simétrica

La criptografía simétrica se refiere al conjunto de métodos que permiten lograr una comunicación segura entre las partes siempre y cuando anteriormente se hayan intercambiado la clave correspondiente que se denomina clave simétrica. La simetría se refiere a que ambas partes tienen la misma llave tanto para cifrar como para descifrar. Este tipo de criptografía se conoce también como criptografía de clave privada o criptografía de llave privada.

Existe una clasificación de este tipo de criptografía en tres familias, la criptografía simétrica de bloques (block cipher), la criptografía simétrica de lluvia (stream cipher) y la criptografía simétrica de resumen (hash functions). Aunque con ligeras modificaciones un sistema de criptografía simétrica de bloques puede modificarse para convertirse en alguna de las otras dos formas, sin embargo es importante considerarlas por separado dado que se usan en diferentes aplicaciones.

La criptografía simétrica ha sido la más usada en toda la historia, ésta ha podido ser aplicada en diferentes dispositivos, manuales, mecánicos, eléctricos, hasta los algoritmos actuales que son programables en cualquier ordenador. La idea general es aplicar diferentes funciones al mensaje que se quiere cifrar de tal modo que solo conociendo una clave pueda aplicarse de forma inversa para poder así descifrar.

Aunque no existe un tipo de diseño estándar, quizá el más popular es el de Fiestel, que consiste esencialmente en aplicar un número finito de interacciones de cierta forma, que finalmente da como resultado el mensaje cifrado. Este es el caso del sistema criptográfico simétrico más conocido, DES (Data Encryption Standard), aunque no es el más seguro.

Criptografía Asimétrica

La criptografía asimétrica (también llamada criptografía de clave pública), es la que emplea dos claves diferentes para cada usuario, una para cifrar, denominada clave pública y otra para descifrar que es la clave privada. El nacimiento de la criptografía asimétrica se logró al estar buscando un modo más práctico de intercambiar las llaves simétricas. Diffie y Hellman, propusieron una forma para hacer esto, sin embargo no fue hasta que el popular método de Rivest Shamir y Adleman, conocido como RSA y publicado en 1978, cuando toma forma la criptografía asimétrica, su funcionamiento esta basado en la imposibilidad computacional de factorizar números enteros grandes.

Esquema criptografía asimétrica

Actualmente la criptografía asimétrica es muy usada, sus dos principales aplicaciones son el intercambio de claves privadas y la firma digital, una firma digital se puede definir como una cadena de caracteres que se agrega a un archivo digital que hace el mismo papel que la firma convencional que se escribe en un documento de papel ordinario. Los fundamentos de la criptografía asimétrica pertenecen a la teoría de números.

En la actualidad la criptografía asimétrica o de clave pública se divide en tres familias según el problema matemático del cual basan su seguridad. La primera familia es la que basa su seguridad en el Problema de Factorización Entera PFE, los sistemas que pertenecen a esta familia son, el sistema RSA, y el de Rabin Williams RW. La segunda familia es la que basa su seguridad en el Problema del Logaritmo Discreto PLD, a esta familia pertenece el sistema de Diffie Hellman DH de intercambio de claves y el sistema DSA de firma digital. La tercera familia es la que basa su seguridad en el Problema del Logaritmo Discreto Elíptico PLDE, en este caso hay varios esquemas tanto de intercambio de claves como de firma digital que existen como el DHE (Diffie Hellman Elíptico), DSAE, (Nyberg-Rueppel) NRE, (Menezes, Qu, Vanstone) MQV, etc.

Aunque los sistemas asimétricos más conocidos pertenecen a las familias anteriores, existen otro tipo de sistemas que basan su seguridad en problemas diferentes como por ejemplo, en el "Problema del Logaritmo Discreto Hiperelíptico", sobre problemas de retículas y sobre subconjuntos de clases de campos numéricos reales y complejos.

Certificados digitales


Los certificados digitales, tienen una similitud con los carnés de conducir o de identidad, los primeros permiten viajar por las carreteras o ser identificados y los certificados digitales permiten navegar por internet, la principal característica es que da identidad al usuario y puede navegar con seguridad. De igual forma que la licencia de conducir o un pasaporte sirve para dar identidad a quien la porta en ciertos casos, el certificado digital da identidad a una clave pública y se comporta como una persona en las redes.

El nacimiento del certificado digital fue a raíz de resolver el problema de administrar las claves públicas y que la identidad del propietario no pueda ser falsificada. La idea es que una tercera entidad intervenga en la administración de las claves públicas y asegure que tengan asociado un usuario claramente identificado. Esto fue inicialmente planteado por Kohnfelder del MIT en su tesis de licenciatura.

Las tres partes más importantes de un certificado digital son:
  • Una clave pública
  • La identidad del implicado: nombre y datos generales
  • La firma privada de una tercera entidad llamada autoridad certificadora reconocida y que valida la asociación de la clave pública en cuestión con el tipo que dice ser.

En la actualidad todas las aplicaciones de comercio electrónico y transacciones seguras requieren un certificado digital, se ha propagado tanto su uso que se tiene ya un formato estándar de certificado digital, este es conocido como X509 v.3

Algunos de los datos más importantes de este formato son los siguientes:

Versión: 1,2 o 3
Número de Serie: 0000000000000000
Emisor del Certificado: VeriMex
Identificador del Algoritmo usado en la firma: RSA, DSA o CE
Período de Validez: De Enero 2013 a Dic 2015
Sujeto: Maco048
Información de la clave pública del sujeto: la clave, longitud, y demás parámetros
Algunos datos opcionales, extensiones que permite la v3
Firma de la Autoridad Certificadora

Un certificado digital entonces se reduce a un archivo de uno o dos kbit de tamaño, que autentica a un usuario de la red.

Certificado digital

Infraestructura de claves públicas


Teniendo ya un certificado digital que es generado con la ayuda de un algoritmo de clave pública ahora el problema es como administración todos estos, la estructura más básica es la siguiente:


El papel de la autoridad certificadora (AC) es de firmar los certificados digitales de los usuarios, generar los certificados, mantener el estatus correcto de los certificados, esto cumple el siguiente ciclo:
    La generación del certificado se hace primero por una solicitud de un usuario, el usuario genera sus claves pública y privada y manda junto con los requerimientos de la solicitud su clave pública para que esta sea certificada por la AC.

    Una vez que la AR (es la AC regional) verifica la autenticidad del usuario, la AC vía la AR firma el certificado digital y es mandado al usuario

    El status del usuario puede estar en: activo, inactivo o revocado. Si es activo el usuario puede hacer uso del certificado digital durante todo su periodo válido

    Cuando termina el período de activación del certificado el usuario puede solicitar su renovación.

Entre las operaciones que pudiera realizar una AC están:

  • Generar certificados
  • Revocar certificados
  • Suspender certificados
  • Renovar certificados
  • Mantener un respaldo de certificados ..

Entre las que pudiera realizar una AR están:
  • Recibir las solicitudes de certificación
  • Proceso de la autenticación de usuarios
  • Generar las claves
  • Respaldo de las claves
  • Proceso de Recobrar las claves
  • Reportar las revocaciones.

Y las actividades de los usuarios:

  • Solicitar el certificado
  • Solicitar la revocación del certificado
  • Solicitar la renovación del certificado.
Una vez que algún usuario tiene un certificado digital este puede usarlo para poder navegar por internet con nombre y apellidos en forma de bits, esto permite entrar al mundo del comercio electrónico, de las finanzas electrónicas y en general a la vida cibernética con personalidad certificada. El usuario dueño de un certificado digital tiene la potencialidad de poder autentificarse con cualquier otra entidad usuaria, también puede intercambiar información de forma confidencial y estar seguro de que esta es íntegra, así como estar seguro que los contactos vía el certificado digital no serán rechazados. Los primeros usuarios de certificados digitales fueron los servidores, actualmente son quienes más los usan, sin embargo también se ha incrementado el número de personas que los usan.

Si suponemos un tipo de aplicación funciona con certificados digitales, esta tendrá una AC y las correspondientes AR, sin embargo es común que haya más autoridades certificadoras y que sus usuarios puedan interoperar con sus respectivos certificados, a esto se le conoce como certificación cruzada y opera de la siguiente forma:

  • Las diferentes AC pueden estar certificadas enviándose una a otra sus respectivos certificados que ellas mismas generan
  • Entonces la AC X tendrá el certificado de la AC Y y viceversa, podiendo generar un certificado para Y que genera X y otro para X que genera Y
  • Ahora como un usuario A de la AC X puede comunicarse con un usuario B de la AC Y
  • El usuario B envía a A el certificado de B que genera Y ( Cert y B) junto con el certificado de Y que el mismo se genera (Cert y Y)
  • Ahora A puede validar a B ( Cert y B) usando el certificado de Y que genera X
En la práctica se ha demostrado que el estatus de un certificado cambia con frecuencia, entonces la cantidad de certificados digitales revocados crece considerablemente, el problema esta en que cada vez que se piensa realizar una comunicación y es necesario validar un certificado se debe de comprobar que no esta revocado. La solución que se ha venido usando es la de crear una lista de certificados revocados LCR y así verificar que el certificado no esta en esa lista, para poder iniciar la comunicación. El manejo de las listas de certificados revocados ha llegado a tener un gran costo que sin embargo aún no se ha reemplazado por otra técnica a pesar que se han propuesto ya salidas al problema.

Las operaciones de la administración de los certificados digitales pueden cambiar de acuerdo a las leyes de cada país o entidad.

Tutorial facturación electrónica


Fuente del tutorial e factura (CECARM)

DNI electrónico

En España se expide desde marzo del año 2006 un tipo de documento de identidad denominado Documento Nacional de Identidad electrónico (DNIe). Es la evolución del Documento Nacional de Identidad pensada para adaptar su uso a la sociedad de la información y para que sus portadores puedan darle uso para determinados servicios electrónicos. El proyecto se ejecuta a través de la unión temporal de empresas, compuesta por Indra Sistemas, Telefónica, Safelayer y Software AG.

El DNI electrónico incorpora tres niveles de seguridad. En un primero, hologramas (imágenes tridimensionales a todo color, diagramadas mediante un proceso especial de láser), letras táctiles, imágenes láser cambiantes...; en un segundo nivel, imágenes codificadas, microtextos, kinegramas (proceso desarrollado por la empresa suiza Kinegram y, como el holograma, consiste en una estructura de difracción microscópica. La imagen, no obstante, no es tridimensional, como en el holograma, sino que al moverla muestra animaciones gráficas)...; y, por último, medidas criptográficas y biométricas. El circuito integrado (chip), que constituye la principal novedad perceptible por el usuario, almacena la siguiente información: datos de filiación del titular, imagen digitalizada de la fotografía, imagen digitalizada de la firma manuscrita, plantilla de la impresión dactilar de los dedos índice de cada mano, un certificado cualificado para autenticación y otro para firma, certificado electrónico de la autoridad emisora y el par de claves (pública y privada) de cada certificado electrónico (el DNI electrónico contiene dos certificados X.509 de ciudadano, uno de autenticación y otro de firma y las claves privadas asociadas a cada uno. Cada pareja de claves se genera dentro del chip durante el proceso de expedición). El hecho de que haya dos certificados persigue que el ciudadano pueda distinguir entre las actividades de autenticación y firma electrónica cuando se produzcan, al margen de la similitud de los procesos criptográficos implicados en ambas.

Recientemente el Ministerio del Interior presentó el nuevo "DNI 3.0", que permite transmitir datos a través de una antena de radiofrecuencia (como las nuevas tarjetas bancarias) y vía NFC; sinedo de utilidad su comunicación con teléfonos inteligentes, el usuario se podrá identificar en internet con solo acercar su DNI al reverso de su smartphone o tableta,

Utilización del DNIe

Se requiere que el usuario recuerde la clave que se le asignó cuando lo obtuvo, que se puede cambiar en sistemas automatizados (puntos de actualización del DNI) instalados en las dependencias policiales en las que se expide el DNI o a través de la página oficial del DNI electrónico. En caso de olvido de la contraseña, en los terminales de las dependencias policiales, es posible identificarse con la huella dactilar y proceder al desbloqueo y cambio de clave. Los elementos necesarios para poder usar el DNI electrónico son los siguientes:

    - DNI electrónico

    Obviamente, se debe sustituir el DNI tradicional por el electrónico. Se debe recordar la clave personal, que, además de ser alfanumérica, acepta símbolos y diferencia las mayúsculas de las minúsculas.

    - Lector de tarjetas inteligentes.

    El lector de tarjetas inteligentes debe ser válido para el uso del DNI electrónico. Para ello debe ser compatible con la norma ISO 7816.

    - Programa informático.

    Por último, el usuario deberá descargar el software que proporciona la Dirección General de la Policía en el área de descargas del portal del DNI electrónico.

    Transcurridos varios años, la utilización del DNI electrónico es muy escasa y las pocas personas que usan certificados digitales prefieren usar el de la FNMT.



Leyenda urbana sobre un número en el DNIe

Cuenta una leyenda urbana de las de "Que sí, que sí, que mi cuñado es policía y me lo ha dicho", como si los policías no fuesen personas y no tuviesen internet, que en la parte de atrás del DNI (o del pasaporte) hay un número que indica cuantas personas hay que se llaman igual que nosotros.

De ser esto cierto, tendríamos que cambiarnos el DNI cada vez que nace un niño con el mismo nombre, o al menos si se saca el DNI por primera vez, con lo que utilidad poca. Pero además, ¿a quién le interesa saber cuántas personas hay que se llaman igual que tú? ¿A la policía? ¿A tí? ¿Para qué el estado iba a hacer un algoritmo así y con fecha de caducidad?

Y lo más curioso, siempre es un número del 1 al 9. En España por lo visto no hay más de 9 José García Pérez o María Sánchez Rodríguez. Pero no, hay gente cabezona que lo afirma rotundamente, como afirman que las pulseras power balance funcionan, que la leche caducada se recicla, o que los Riddex Plus ahuyentan a los insectos.

¿ Y qué es ese número entonces?
Es un dígito de control, para que los escáneres de DNI reconozcan que los datos introducidos son los correctos. Hace una suma de todos los dígitos multiplicados por un factor patrón y lo reduce a un sólo número, si el número coincide, el texto es correcto.

Así que para despejar las dudas vamos a explicar el algoritmo que se usa, y facilitaremos una tabla de hoja de cálculo para obtener el número de control del DNI.

En la parte posterior aparece algo como esto IDESPADH185624812345678Z< <<<<<<<<<<<<<<
7904093M1112255ESP<<<<<<<<<<<9
<<<<<<

Siendo


    ID el tipo de documento

    ESP la nación del documento

    ADH185624 el IDESP, o número de serie del soporte físico de la tarjeta 

    4 el dígito de control del campo 3

    12345678Z el número de DNI

    790409 la fecha de nacimiento en formato americano (09/04/79)

    3 el dígito de control del campo "Fecha de nacimiento"

    M el sexo Masculino o Femenino

    111225 la validez (25/12/11)

    5 el digito control campo "validez"

    ESP la nacionalidad

    9 el dígito de control de los campos 3, 4, 6, 7, 9 y 10

    SANCHEZ PEREZ, JOSE el nombre

Para calcular la letra del DNI hay que dividir el número de DNI entre 23 y como es número primo, el resto que de corresponderá a una letra según esta tabla:

RESTO 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
LETRA T R W A G M Y F P D X B N J Z S Q V H L C K E

A cada letra del IDESP le asignamos un número:A0 B1 C2 D3 E4 F5 G6 H7 I8 J9 K10 L11 M12 N13 O14 P15 Q16 R17 S18 T19 U20 V21 W22 X23 Y24 Z25

El dígito de control se averigua multiplicando cada número por 7, 3 o 1 dependiendo del orden, es decir:
CALCULAR DC DEL IDESP
(A) 0 x 7 = 0
(D) 3 x 3 = 9
(H) 7 x 1 = 7
1 x 7 = 7
8 x 3 = 24
5 x 1 = 5
6 x 7 = 42
2 x 3 = 6
4 x 1 = 4
suma= 104 el dígito de control sería el último número de la suma, en este caso el 4.
Habría que hacer lo mismo con la validez y la fecha de nacimiento y así calcular los demás dígitos de control. Y con el último debes hacerlo con la suma de todos los demás:

(A) 0 x 7 = 0 IDESP
(D) 3 x 3 = 9
(H) 7 x 1 = 7
1 x 7 = 7
8 x 3 = 24
5 x 1 = 5
6 x 7 = 42
2 x 3 = 6
4 x 1 = 4

9 x 7 = 63 Dígito control del IDESP anteriormente sacado

7 x 3 = 21 FECHA NACIMIENTO
9 x 1 = 9
0 x 7 = 0
4 x 3 = 12
7 x 1 = 1
9 x 7 = 63

3 x 3 = 9 Dígito control  de la fecha de nacimiento anteriormente sacado

1 x 1 = 1 FECHA VALIDEZ
1 x 7 = 7
1 x 3 = 3
2 x 1 = 2
2 x 7 = 14
5 x 3 = 15

5 x 1 = 5 Dígito control de la fecha de validez anteriormente sacado

total = 329 por lo que el número que debería salir en este DNI sería 9


Fuente: Gobernar el Mundo

Página de inicio