Erratas detectadas en la documentación del DNIe (Dni Electrónico)
La comunicación cifrada del DNI electrónico – Autenticación externa (External Authenticate)
Indice del artículo
- La comunicación cifrada del DNI electrónico
- La normativa EN-14890-1:2009. Normativa Europea
- Autenticación interna (Internal Authenticate)
- Autenticación externa (External Authenticate)
- Todas las páginas
Autenticación interna (Internal Authenticate)
Autenticación Externa
La autenticación externa es el proceso mediante el cual el terminal se autentica ante la tarjeta y ésta confía en él.
Dentro del proceso de establecimiento de canal seguro que tiene lugar entre la tarjeta y el terminal, la autenticación, tal y como se muestra en la imagen es la fase posterior a la autenticación interna.

Fase de autenticación externa en el establecimiento de canal seguro
El proceso que se sigue se muestra en la siguiente imagen:

Secuencia de la Autenticación Externa
El terminal solicita a la tarjeta un reto C (o challenge). La tarjeta genera un valor de 32 bytes 32 bytes aleatorio denominado RND.ICC y lo devuelve al terminal.
El terminal genera un valor aleatorio de 32 bytes denominado Kifd .
Como ejemplo se considera que el resumen que genera el terminal es de 32 bytes.
A continuación el terminal debe generar un conjunto de bytes aleatorios denominados PRND2 y que serán utilizados como caracteres de relleno. El número de bytes a generar son el resultado de restar a la longitud del módulo de la clave privada del certificado de autenticación del terminal (denominado N.IFD), la longitud de Kifd, la longitud del reto y 2, es decir:
Longitud (PRND2) = N.IFD - Longitud(Kifd) - Longitud(C) - 2
El terminal firma sobre los siguientes datos concatenados (||):
'6A' || PRND2 || Kifd || Hash(PRND2 || Kifd || RND.IFD RND.ICC || SN.IFD SN.ICC) || 'BC'
Es decir:
SIG = DS('6A' || PRND2 || Kifd || Hash(PRND2 || Kifd || RND.IFD RND.ICC || SN.IFD SN.ICC) || 'BC')
A continuación se comparan SIG y N.IFD menos SIG y se utiliza el menor de ellos:
SIGMIN = min( SIG, N.IFD - SIG )
Finalmente se envía SIGMIN cifrado (E, del inglés Encipher) con la clave pública de la tarjeta (PK.ICC.AUT):
E[PK.ICC.AUT]( SIGMIN )
La tarjeta descifra los datos recibidos y valida la firma. En caso de ser todo correcto, la tarjeta confía en el terminal.
Términos y siglas:
- C: reto
- RND.IFD: valor aleatorio de 32 bytes
- SN.IFD: Número de serie del terminal
- Kifd : valor aleatorio de 32 bytes generado por el terminal
- PRND2: conjunto de bytes aleatorios usados como caracteres de relleno
- N.IFD: módulo de la clave privada del certificado de autenticación de la tarjeta
- SIG: datos firmados
- SIGMIN: mínima expresión de datos
- PK.IFD.AUT: clave pública del terminal
Related posts:
About this entry
You’re currently reading “Erratas detectadas en la documentación del DNIe (Dni Electrónico),” an entry on Smultron POTENCIA !!
- Published:
- 01.12.12 / 6pm
- Category:
- General

No comments
Jump to comment form | comments rss [?] | trackback uri [?]