67
Cesar Rosales, PMP ® , Ing. Project Manager CHIP CRIPTOGRAFICO Lima - 2014 CHIP CRIPTOGRAFICO DNI Electrónico Peruano

Presentacion DNIe Peruano

Embed Size (px)

Citation preview

Page 1: Presentacion DNIe Peruano

Cesar Rosales, PMP®, Ing. Project Manager

CHIP CRIPTOGRAFICO

Lima - 2014

CHIP CRIPTOGRAFICO DNI Electrónico Peruano

Page 3: Presentacion DNIe Peruano

AGENDA

• Elementos de USO

• Especificaciones y estándares

• Características del CHIP

• Arquitectura del DNI Electrónico

• Principales Applets en el DNI Electrónico

• Funcionalidad PKI del DNI Electrónico

Cesar Rosales, PMP®, Ing.

Page 4: Presentacion DNIe Peruano

ELEMENTOS DE USO

Page 5: Presentacion DNIe Peruano

Para usar el DNI Electrónico se requiere:

Smart Card Reader:

Soporte tarjetas ISO 7816. Debe poder

leer y escribir a tarjeta Smart Card compatibles con ISO 7816 1, 2, 3, 4. Protocolos T=0 y T=1.

Soporte PC/SC.

Compatibilidad con Sistemas Operativos Windows 7 (32 y 64 bits) y superior, Linux Kernel 2.6 como mínimo.

Alimentación y comunicación vía Cable USB.

Elementos de USO

Cesar Rosales, PMP®, Ing.

Page 6: Presentacion DNIe Peruano

Para usar el DNI Electrónico se requiere:

Sensor eléctrico de impresiones dactilares (para entornos presenciales)

Certificado por el FBI como dispositivo PIV

SINGLE FINGER CAPTURE DEVICES

Generación plantillas biométricas en formato estándar ISO/IEC 19794-2 COMPACT CARD.

Sensor óptico (CCD o CMOS).

Resolución: 500 dpi.

Área de captura mínima (a 500 dpi): 256 píxeles (ancho) x 360 píxeles (alto).

Generación de imágenes en Escala de Grises de 256 tonos (8 bits).

Conexión a PC por cable USB.

Compatibilidad con Windows 7 como mínimo.

Cesar Rosales, PMP®, Ing.

Elementos de USO

Page 7: Presentacion DNIe Peruano

ESPECIFICACIONES Y ESTÁNDARES

Page 8: Presentacion DNIe Peruano

ESPECIFICACIONES Y ESTÁNDARES

El DNI Electrónico esta basado es las siguientes especificaciones y estándares:

GlobalPlatform

JavaCard

Estándar ISO/IEC

PKCS

FIPS 140-3

ISO 19794-2 Compact Card

ICAO

Cesar Rosales, PMP®, Ing.

Page 9: Presentacion DNIe Peruano

GLOBAL PLATFORM

• Conjunto de especificaciones para simplificar el uso de tarjetas inteligentes, en dispositivos y sistemas (locales o remotos), y establecer los requisitos de seguridad necesarios

• Define comandos APDU, protocolos de comunicación, una interfaz de programación, perfiles de aplicación, claves, …

• Define métodos de establecimiento de canales seguros (SCP01, SCP02 – en el DNIe fue implementado el SCP01)

Cesar Rosales, PMP®, Ing.

Page 10: Presentacion DNIe Peruano

JAVACARD

Java Card es una tecnología que permite ejecutar de forma segura pequeñas aplicaciones Java (applets) en tarjetas inteligentes y similares dispositivos empotrados

Define una plataforma para Smart Card.

Actualmente se encuentra disponible la versión 2.2.2

Cesar Rosales, PMP®, Ing.

Page 11: Presentacion DNIe Peruano

ISO/IEC 7816: Define todas las características de los Smart Cards que poseen contactos eléctricos. Tiene las siguientes partes:

ISO/IEC 7816-1: Especifica características físicas para tarjetas de contacto.

ISO/IEC 7816-2: Especifica dimensiones y ubicación de contactos

ISO/IEC 7816-3: Especifica interfaz eléctrica y protocolos de comunicación

ISO/IEC 7816-4: Especifica comandos APU

ISO/IEC 7816-15: Servicios criptográficos

Estándar ISO

Cesar Rosales, PMP®, Ing.

Page 12: Presentacion DNIe Peruano

Application layer

Transport layer

Data link layer

Physical layer

ISO7816-3

T=0

Contact interface Contactless interface

ISO7816-3

T=1

ISO14443-4

T=CL

Mifare

ISO7816-4

APDU

ISO14443

Type A

ISO14443

Type B

ISO7816-12

USB

ISO7816-3

USB

interface

High-level

Low-level

ISO/IEC 7816 y Protocolos de comunicación

Cesar Rosales, PMP®, Ing.

Page 13: Presentacion DNIe Peruano

ISO/IEC 7816 - 4.- Se aplica a tarjetas de contacto, sin contacto y radio frecuencia. Define:

Sistema de ficheros y métodos de acceso

El contenido de los pares comando-respuesta que se intercambian a nivel de interfaz (APDU).

Estructuras para aplicaciones y datos en la tarjeta

Arquitectura de seguridad para derechos de acceso a los archivos y los datos en la tarjeta

Métodos para el intercambio seguro de mensajes.

Estándar ISO

Cesar Rosales, PMP®, Ing.

Page 14: Presentacion DNIe Peruano

ISO/IEC 7816 - 4.- Define el sistema de ficheros:

Estándar ISO

Cesar Rosales, PMP®, Ing.

Page 15: Presentacion DNIe Peruano

ISO/IEC 7816 - 4.- Define el sistema de ficheros:

Tienen una estructura jerárquica.

Soportan 3 tipos de archivos: Archivo Principal (MF) - es el root, se identifica por 3F 00

Archivo Dedicado(DF) – son como directorios

Archivo Elemental(EF) – son los que almacenan datos

Estándar ISO

Cesar Rosales, PMP®, Ing.

Page 16: Presentacion DNIe Peruano

CLA INS P1 P2 Lc Data Le

CLA: Byte de clasificación de la instrucción

INS: Byte de la instrucción

P1-P2: Primero y segundo byte de parámetros

Lc: Longitud del campo de datos

Data: Campo de datos

Le: Longitud esperada para la respuesta

Estándar ISO

ISO/IEC 7816 - 4.- Comandos APDU:

Cesar Rosales, PMP®, Ing.

Page 17: Presentacion DNIe Peruano

Data: datos de respuesta

SW1-SW2: status word 9000 or 61xx indica exito

Otros datos suelen indicar errores

Estándar ISO

ISO/IEC 7816 -4.- Respuestas APDU:

Data SW1 SW2

Cesar Rosales, PMP®, Ing.

Page 18: Presentacion DNIe Peruano

Estándar ISO

ISO/IEC 7816 -4.- Diferentes casos en comandos APDU:

Caso 1: no entrada no salida

Caso 2: solo salida output (response data)

Caso 3: solo entrada (command data)

Caso 4: entrada y salida

Cesar Rosales, PMP®, Ing.

Page 19: Presentacion DNIe Peruano

Es un acrónimo de Europay MasterCard VISA

Esta basada en las series de estándares de la ISO 7816 con características propietarias adicionales para cumplir las necesidades específicas de la industria financiera.

Estándar EMV

Cesar Rosales, PMP®, Ing.

Page 20: Presentacion DNIe Peruano

Public-Key Infraestructure:

Consiste en una serie de elementos hardware, software y procedimientos para ofrecer una serie de servicios basados en la criptografía asimétrica.

Se basa en la gestión de confianza, entidad raíz (CA) e intermedias SubCA.

El punto base son los certificados digitales que contienen la clave publica de los sujetos.

Cesar Rosales, PMP®, Ing.

PKI

Page 21: Presentacion DNIe Peruano

Public-Key Cryptography Standards:

Se refiere a un grupo de estándares de criptografía de clave publica.

Serie creada en la década de 1990 para promover la criptografía de clave pública

Concebidos y publicados por Laboratorios RSA

Cesar Rosales, PMP®, Ing.

Estándar PKCS

Page 22: Presentacion DNIe Peruano

PKCS

Versión Nombre Comentarios

PKCS#10 1.7 Estándar de solicitud de certificación Ver RFC 2986. Formato de los mensajes enviados a una

Autoridad de certificación para solicitar la certificación

de una clave pública. Ver CSR.

PKCS#11 2.2 Interfaz de dispositivo criptográfico

("Cryptographic Token Interface" o

cryptoki)

Define un API genérico de acceso a dispositivos

criptográficos (ver HSM).

PKCS#12 1.0 Estándar de sintaxis de intercambio de

información personal

Define un formato de fichero usado comúnmente para

almacenar claves privadas con su certificado de clave

pública protegido mediante clave simétrica.

PKCS#15 1.1 Estándar de formato de información

de dispositivo criptográfico

Define un estándar que permite a los usuarios de

dispositivo criptográficos identificarse con aplicaciones

independientemente de la implementación del PKCS#11

(crytoki) u otro API.

Cesar Rosales, PMP®, Ing.

Public-Key Cryptography Standards:

Los mas importantes son:

Page 23: Presentacion DNIe Peruano

PKCS#15

Cesar Rosales, PMP®, Ing.

Estándar de formato de mensajes para Tokens.

Define como debe ser distribuida la información dentro de la tarjeta.

Define que elementos debe o puede haber, que información pueden tener y como se pueden acceder a ellos.

Cada tarjeta necesita su propia librería PKCS#11

Page 24: Presentacion DNIe Peruano

PKCS#15

DF(PKCS #15)

EF(ODF) EF(PrKDF) EF(CDF) EF(AODF) EF(TokenInfo)

Cesar Rosales, PMP®, Ing.

Estándar de formato de mensajes para Tokens.

Page 25: Presentacion DNIe Peruano

PKCS#15

Cesar Rosales, PMP®, Ing.

Estándar de formato de mensajes para Tokens.

El sistema de ficheros emana de un MF, contiene todos los objetos que tienen que ver con PKI.

Todos los EF se referencian desde un EF básico y obligatorio (ODF)

El ODF es una tabla de punteros a todos los demás EF.

Page 26: Presentacion DNIe Peruano

EF(PrKDF)

EF(AODF)

EF(CDF)

EF(DODF)

EF(ODF)

PuKDF pointer

PrKDF pointer

CDF pointer

AODF pointer

DODF pointer

EF(PuKDF)

PKCS#15

Cesar Rosales, PMP®, Ing.

Estándar de formato de mensajes para Tokens.

Page 27: Presentacion DNIe Peruano

ARQUITECTURA DEL DNI ELECTRÓNICO

Page 28: Presentacion DNIe Peruano

EEPROMROM RAM

CPU

Random

Generator

Public-Key

Cryptography

Coprocessor

DES

Coprocessor

UART

Vcc

RST

CLK

RFU

GND

Vpp

I/O

RFU

Cesar Rosales, PMP®, Ing.

Arquitectura Física

Page 29: Presentacion DNIe Peruano

ARQUITECTURA LÓGICA

Cesar Rosales, PMP®, Ing.

Page 30: Presentacion DNIe Peruano

CARACTERÍSTICAS DEL CHIP

Page 31: Presentacion DNIe Peruano

Sistema operativo ID-One Cosmo v7

Chip:

P5CD144V0B

De contacto

144Kb EEPROM:

>200k ROM

Biometría

Biometric JavaCard API para acceder al algoritmo de Match On Card en ROM

Plantillas biométricas bajo el estándar ISO 19794-2 Compact Card.

Principales Características

Cesar Rosales, PMP®, Ing.

Page 32: Presentacion DNIe Peruano

Criptografía

DES, 3 DES

AES 128/192/256bits

RSA de 512 a 2048 bits

Algoritmo DSA GFP Curva Elíptica

SHA1, SHA-256, SHA384, SHA512

Entre otros.

Java Card 2.2.2.

GlobalPlatform 2.1.1

Mecanismos de seguridad: Criterio común y certificaciones FIPS 140-2 nivel 3 .

Cesar Rosales, PMP®, Ing.

Principales Características

Page 33: Presentacion DNIe Peruano

APLICACIONES EN EL DNI ELECTRÓNICO

Page 34: Presentacion DNIe Peruano

PRINCIPALES APPLETS

Applet Card Manager

Applet LDS

Applet Bio Manager

Applet AuthentIC

Cesar Rosales, PMP®, Ing.

Page 35: Presentacion DNIe Peruano

CARD MANAGER

Applet responsable de toda la administración de seguridad (despacha comandos), tiene privilegios especiales establecidos otorgados por el JCRE (Java Card 2.2.2 Runtime Environment).

Permite manejar el estado de la tarjeta, instalar, borrar y manejar los demás applets.

Es el primer Applet instanciado y activado en etapa de pre-perso.

Cesar Rosales, PMP®, Ing.

Page 36: Presentacion DNIe Peruano

LDS

La estructura eléctrica esta especificado por ICAO: Logical Data Structure (LDS).

Cumple con el estándar ISO 7816-4 y MRTD y ofrece 16 diferentes Data Groups (DG). El tamaño esta limitado solo por la cantidad EEPROM.

Cesar Rosales, PMP®, Ing.

Page 37: Presentacion DNIe Peruano

LDS

La estructura sigue la normativa 7816

MF

└──DF_LDS MANDATORIO

├── KENC Encryption key for BAC OPCIONAL/escondido

├── KMAC Key for MAC OPCIONAL/escondido

├── KPTAA Key for Active Authentication OPCIONAL/escondido

├── EF_COM List of existing Data Groups MANDATORIO

├── EF_SOD Security Data Object MANDATORIO

├── EF_DataGroup_N Depende de cuales

├── etc…

Cesar Rosales, PMP®, Ing.

Page 38: Presentacion DNIe Peruano

LDS

Estados

SELECTABLE Los grupos de datos son creados y cargados

PERSONALIZED Cuando la tarjeta es usada por el ciudadano

El Applet proporciona comandos para recuperar data de los grupos de datos.

Realizar BAC, AA, EAC

Cesar Rosales, PMP®, Ing.

Page 39: Presentacion DNIe Peruano

LDS

El DNIe peruano incluye:

Seguridad:

BAC: Basado en DG1 de 2 líneas

AA: Claves RSA de 1024 bits

SOD: Firmado por DS de Perú

Información:

DG1: MRZ . Resumen de datos personales

DG2: Fotografía facial en formato JP2000

DG7: Fotografía de la firma JP2000

DG11: Datos personales adicionales

DG12: Datos adicionales del documento

DG13: Grupo de formato libre propietario de RENIEC

DG15: Parte pública de la clave de Autenticación Activa

Los otros DG no son usados.

Cesar Rosales, PMP®, Ing.

Page 40: Presentacion DNIe Peruano

Contenido del DG13

Tag Nombre Descripción

0x6D DG13 Identificador del grupo de datos

0x5C TAG_LIST Lista de tags

0x5F71 CUI Long 8. Ej:"07762130".Es el número de DNI de 8 caracteres.

0x5F72 DIGITO_CUI Long 1. Ej:"5".Digito de verificación algoritmo RENIEC

0x5F73 PRIMER_APELLIDO Long 60.Ej:“ROSALEA"

0x5F74 SEGUNDO_APELLIDO Long 60.Ej:“MAQUERA"

0x5F75 PRENOMBRES Long 60.Ej:“CESAR ROBERTO"

0x5F76 DEPART_NACIMIENTO Long 40.Ej:“PUNO"

0x5F77 PROVINCIA_NACIMIENTO Long 40.Ej:“EL COLLAO"

0x5F78 DISTRITO_NACIMIENTO Long 40.Ej:“ILAVE"

0x5F79 FECHA_NACIMIENTO Long 8.Ej:"19731008" YYYYMMDD

0x5F7A ESTATURA Long 4.Ej:"1:68". Estatura en metros, usando separador :

0x5F7B SEXO Long 1.Ej:"M" M para masculino y F para femenino

0x5F7C ESTADO_CIVIL Long 3.Ej"CAS" SOL para soltero(a), CAS para casado(a), DIV para divorciado(a), VIU para viudo(a)

0x5F7D GRADO_INSTRUCCION Long 20.Ej:"SUPERIOR COMPLETA" Por confirmar

0x5F7E FECHA_EMISION Long 8.Ej:"20100807" YYYYMMDD

0x5F7F RESTRICCIONES Long 2. código según tabla de restricciones

0x5F81 NOMBRE_PADRE Long 30.Ej:“FORTUNATO"

0x5F82 NOMBRE_MADRE Long 30.Ej:“DOMITILA"

0x5F83 DIRECCION Long 60.Ej:"CALLE 29 MZ G LOT.07 URB.EL TREBOL III ETAPA"

0x5F84 DEPART_DOMICILIO Long 40.Ej:"LIMA"

0x5F85 PROVINCIA_DOMICILIO Long 40.Ej:"LIMA"

0x5F86 DISTRITO_DOMICILIO Long 40.Ej:“PUEBLO LIBRE"

0x5F87 FECHA_INSCRIPCION Long 8.Ej:"19991216" YYYYMMDD

0x5F88 OBSERVACIONES Long 60

0x5F89 DONACION_ORGANOS Long 1.Ej:"1" 1: SI, 0: NO

0x5F8A TIPO_DOCUMENTO_SUSTENTO Long 3.Ej:"LM"

0x5F8B DOCUMENTO_SUSTENTO Long 20.Ej:"1307821548"

0x5F8C PERFIL_GENETICO Long 100.Ej:"FBI CODIS - Perfil genético del ciudadano"

0x5F8D FECHA_PERFIL_GENETICO Long 8.Ej:"20100807" YYYYMMDD - Fecha en que se obtuvo de PG

Cesar Rosales, PMP®, Ing.

LDS

Page 41: Presentacion DNIe Peruano

LDS - TIPOS DE AUTENTICACIÓN

Autenticación pasiva

Incluye un objeto de seguridad SOD

SOD se guarda un hash de la data de los data groups 1 al 16.

Utiliza la firma digital para autenticar los datos almacenados en los grupos de datos del chip (EF_SOD).

La firma es generada en la etapa de personalización mediante un certificado proporcionado por PKI.

Cesar Rosales, PMP®, Ing.

Page 42: Presentacion DNIe Peruano

Control de acceso básico:

Todo el intercambio de datos es cifrada con una clave especial producto de la MRZ leída con el lector específico (lector de código MRZ).

Autenticación activa:

En el DG15 se guarda una llave, el cual es utilizado para verificar con el almacenado en el EF_SOD

LDS - Tipos de autenticación

Cesar Rosales, PMP®, Ing.

Page 43: Presentacion DNIe Peruano

BIO MANAGER

La interfaz entre algoritmos Match on Card y entre el Applet AuthentIC.

Se carga y se instancia en el proceso de pre personalización.

Plantilla ISO/IEC 19794-2, se cargan a través del AuthenthIC.

Se puede agregar hasta 10 plantillas biométricas en la credencial.

El credencial biométrico es ID=0x08

Cesar Rosales, PMP®, Ing.

Page 44: Presentacion DNIe Peruano

AUTHENTIC

Es una aplicación cuyo objetivo principal es generar firmas digitales y cifrar data con el nivel de seguridad indicado.

Provee un generador de números aleatorios y generación de par de llaves RSA en un ambiente seguro.

Encripta o desencripta información con llaves simétricas o asimétricas

Cesar Rosales, PMP®, Ing.

Page 45: Presentacion DNIe Peruano

Estados:

Authentic V3 maneja 2 estados diferentes:

Selectable: este estado es el estado en cual la estructura de ficheros se crea y se configura

Personalized: este estado es el estado de uso. Es establecida durante el proceso de personalización.

No es posible de regresar del estado Personalized al estado Selectable.

Cesar Rosales, PMP®, Ing.

AUTHENTIC

Page 46: Presentacion DNIe Peruano

Soporta un modelo de archivo PKCS#15 para permitir una interoperabilidad al nivel de software de firma digital o criptografía

Provee un sistema de archivos estándar ISO 7816-4 para almacenar datos en memoria EEPROM.

Toda la funcionalidad son provistas a través de un APDU estándar ISO 7816-4.

Puede generar llaves “on board”

Tiene un espacio dinámico reservado (la denominada cuarta aplicación). RENIEC permitirá el acceso a usuarios como:

ABI, Votación, Tarjeta de salud, Programas sociales

AUTHENTIC

Cesar Rosales, PMP®, Ing.

Page 47: Presentacion DNIe Peruano

AUTHENTIC

Seguridad:

PIN_A: PIN de autenticación (4-8 caracteres, 3 intentos)

PIN_B: PIN de firma (4-8 caracteres, 3 intentos)

PUK: PUK de desbloqueo (8 caracteres, 5 intentos)

SOK1: Clave 2DES (ABI)

SOK2: Clave 2DES (AVE)

SOK3: Clave 2DES (ASALUD)

SOK4: Clave 2DES (APS)

BIO: Minucias de los dedos índice (15 intentos)

Información:

Claves pública y privada de autenticación, firma y cifrado.

Certificados de autenticación, firma y cifrado.

Cadena de certificación (2 niveles)

Cesar Rosales, PMP®, Ing.

Page 48: Presentacion DNIe Peruano

AuthentIC

Objetos - Estructura (PKCS#15)

Cesar Rosales, PMP®, Ing.

3 tipos de objetos : MF – raíz (es único, ID=3F00h, puede tener hasta

127 DF’s y/o EF’s) DF – carpeta EF – fichero

Page 49: Presentacion DNIe Peruano

Cesar Rosales, PMP®, Ing.

Objetos - Estructura

AUTHENTIC

Estructura

de Objetos

PKCS#15

en el DNI

electrónico

(Completa)

Estándar PKCS#15

Page 50: Presentacion DNIe Peruano

MF(3F00), representa el root de la estructura de archivos del AuthentIC.

Auth PIN, credencial para identificar al usuario.

Sig PIN, esta credencial es usado por el usuario para firmar.

PUK, esta credencial es usado cuando no hay credencial BIO.

SO Key Reniec, Clave para identificar a un oficial de seguridad.

SO key2, SO key3, SO key 4 son claves para autenticar una segunda, tercera y cuarta entidad en la tarjeta.

Biometric PIN, para las plantillas biométricas.

AuthentIC

Cesar Rosales, PMP®, Ing.

Page 51: Presentacion DNIe Peruano

EF CiaInfo, contiene información acerca de la aplicación PKI.

EF.OD(5031) Object Directory, contiene puntero a otros elementos(Pks, CDs) – según PKCS#15

EF.AOD, contiene atributos del objeto de autenticación como longitud de los pines, de este depende si es BIO o PUK.

EF.PrKD, atributos de la clave privada, como labels.

EF.PuKD, atributos de la clave publica, como labels identificadores.

Auth Key, contiene la parte privada de la clave de autenticación.

Sig Key, contiene la parte privada de la clave de firma.

Auth Certificate, contiene el certificado de autenticación en formato X509.

Sig Certificate, contiene el certificado de firma en formato X509.

AuthentIC

Cesar Rosales, PMP®, Ing.

Page 52: Presentacion DNIe Peruano

Credenciales

Existen 3 tipos de credenciales :

PIN – código a entrar

BIO PIN – huella dactilar

SO Key – clave simétrica

AuthentIC

Cesar Rosales, PMP®, Ing.

Page 53: Presentacion DNIe Peruano

Características:

Esta credencial es usado para autenticar a una persona, comúnmente al titular de la tarjeta o a un oficial de seguridad.

Limite de intentos = 3

Digitos de 4 a 64.

AuthentIC soporta solo hasta 7 pins o SO (en una instancia)

AuthentIC

Cesar Rosales, PMP®, Ing.

Credenciales : PIN

Page 54: Presentacion DNIe Peruano

Clave de autenticación externa, es usado para autenticar a un usuario o una organización mediante mecanismo de reto / respuesta.

La autenticación externa se realiza con claves DES, 3DEs y AES

La modificación no esta soportado

La autenticación es realizado usando el comando GET CHALLENGE seguido por el comando EXTERNAL AUTENTICATE, ver ejemplo:

AuthentIC

Credenciales : SOKEY

Cesar Rosales, PMP®, Ing.

Page 55: Presentacion DNIe Peruano

Autenticación externa

AuthentIC

Credenciales : SOKEY

Cesar Rosales, PMP®, Ing.

Page 56: Presentacion DNIe Peruano

Se utiliza el formato ISO 19794-2, en formato compacto.

Pueden ser modificados, borrados pero nunca leídos

La autenticación se realiza mediante comparación en la tarjeta

Las plantillas son cargados durante la personalización.

Solo puede existir un credencial biométrico ID=0x80, en el cual se puede cargar varias templates

No es posible leer o extraer los templates, estos son usados solo para realizar match on card

FRM: 0.01%, valor del umbral 5931 = 172Bh

Credenciales: BIO PIN

AuthentIC

Cesar Rosales, PMP®, Ing.

Page 57: Presentacion DNIe Peruano

Autenticación

Autenticación externa

Autenticación interna

Firma Digital

Cálculos de cheksums simétrico y verificación se puede realizar con algoritmos DES, 3DES y AES.

Para algoritmos asimétricos, según estándar PKCS#1

Mecanismos criptográficos

AuthentIC

Cesar Rosales, PMP®, Ing.

Page 58: Presentacion DNIe Peruano

Autenticación externa (External Authenticate)

AuthentIC

Cesar Rosales, PMP®, Ing.

Page 59: Presentacion DNIe Peruano

Canal seguro

AuthentIC

Cesar Rosales, PMP®, Ing.

Page 60: Presentacion DNIe Peruano

FUNCIONALIDAD PKI DEL DNI ELECTRÓNICO

Page 61: Presentacion DNIe Peruano

Funcionalidad PKI

Cesar Rosales, PMP®, Ing.

ICAO

MoC

PKI

ED

Estructura PKCS#15

Certificado raíz

ECERNEP

Certificado

digital ECEP

Certificado de

Firma Digital

Certificado

de Autenticación

Clave privada

de Firma Digital

Clave privada

de Autenticación

Para hacer uso de las

claves privadas del

ciudadano

se necesita conocer el

PIN respectivo

PIN 2

PIN 1

Page 62: Presentacion DNIe Peruano

Master File (MF) Dirección 3F00 Elementary File (EF) de la estructura PKI : 5015

CERTIFICADOS DIGITALES

Certificado Autenticación: EF-3401 Certificado Firma: EF-3402. Certificado CA : EF-3407 Certificado CA intermedia: EF-3408

Descripción de los certificados contenidos en el

token (ISO/IEC 7816-15) : EF-70050

Funcionalidad PKI Estructura Lógica Básica (PKCS#15)

Cesar Rosales, PMP®, Ing.

Page 63: Presentacion DNIe Peruano

Funcionalidad PKI Operaciones PKI con el CHIP

Cesar Rosales, PMP®, Ing.

Seleccionar Applet Authentic en el DNIe.

(Id Authentic: A0 00 00 00 77 01 00 70 0A 10 00 F1 00 00 01 00)

APDU Input Output (SW1 SW2)

00 A4 04 00 10 A0 00 00 00 77 01 00 70 0A 10 00 F1 00 00 01 00 90 00

• Iniciar Contexto PKI

Comando APDU

Page 64: Presentacion DNIe Peruano

Funcionalidad PKI Operaciones PKI con el CHIP

• Obtener certificado de autenticación 1. Iniciar contexto

2. Seleccionar el master file: MF-3F00

3. Seleccionar el EF-5015 (contenedor de la estructura PKI del DNIe)

4. Seleccionar el EF-3401.

5. Obtener tamaño del certificado de autenticación (EF-3401).

6. Lectura del EF-3401 (según el tamaño del certificado).

Cesar Rosales, PMP®, Ing.

Input (p.e Certificado de 1736 bytes) Output (SW1 SW2)

1.- APDU: 00 A4 04 00 10 A0 00 00 00 77 01 00 70 0A 10 00 F1 00 00 01 00

2.- APDU: 00 A4 00 00 02 3F 00

3.- APDU: 00 A4 00 00 02 50 15

4.- APDU: 00 A4 02 00 02 34 01

5.- APDU: 00 B0 00 00 00 //lectura primeros 256 bytes

00 B0 01 00 00 //lectura del 256 al 512 bytes

00 B0 06 00 C8 //lectura del 1536 al 1736 bytes

1.- 90 00

2.- 90 00

3.- 90 00

4.- 90 00

5.- 90 00

90 00

90 00

Page 65: Presentacion DNIe Peruano

Funcionalidad PKI Operaciones PKI con el CHIP

• Obtener certificado de Firma

Cesar Rosales, PMP®, Ing.

1. Iniciar contexto

2. Seleccionar el master file: MF-3F00

3. Seleccionar el EF-5015 (contenedor de la estructura PKI del DNIe)

4. Seleccionar el EF-3402.

5. Obtener tamaño del certificado de autenticación (EF-3402).

6. Lectura del EF-3402 (según el tamaño del certificado).

Input (p.e Certificado de 1892 bytes) Output (SW1 SW2)

1.- APDU: 00 A4 04 00 10 A0 00 00 00 77 01 00 70 0A 10 00 F1 00 00 01 00

2.- APDU: 00 A4 00 00 02 3F 00

3.- APDU: 00 A4 00 00 02 50 15

4.- APDU: 00 A4 02 00 02 34 02

5.- APDU: 00 B0 00 00 00 //lectura primeros 256 bytes

00 B0 01 00 00 //lectura del 256 al 512 bytes

00 B0 07 00 64 //lectura del 1792 al 1892 bytes

1.- 90 00

2.- 90 00

3.- 90 00

4.- 90 00

5.- 90 00

90 00

90 00

Page 66: Presentacion DNIe Peruano

Funcionalidad PKI Operaciones PKI con el CHIP

• Obtener certificados CA Raiz y CA intermedia

Cesar Rosales, PMP®, Ing.

Lectura del EF-3407

1. Iniciar contexto

2. Seleccionar el master file: MF-3F00

3. Seleccionar el EF-5015 (contenedor de la estructura PKI del DNIe)

4. Seleccionar el EF-3407.

5. Obtener tamaño del certificado de autenticación (EF-3407).

6. Lectura del EF-3407 (según el tamaño del certificado).

Lectura del EF-3408

1. Iniciar contexto

2. Seleccionar el master file: MF-3F00

3. Seleccionar el EF-5015 (contenedor de la estructura PKI del DNIe)

4. Seleccionar el EF-3408.

5. Obtener tamaño del certificado de autenticación (EF-3408).

6. Lectura del EF-3408 (según el tamaño del certificado).

CA Raíz: EF-3407

CA Intermedia: EF-3408

Page 67: Presentacion DNIe Peruano

Cesar Rosales Maquera

PMP®

CIP 77540

Especialista en Biometría, PKI, eID

[email protected]

[email protected]

https://www.linkedin.com/in/crosalesm

Lima - 2014