• No se han encontrado resultados

Generador de seudónimos y credenciales para transacciones en internet

N/A
N/A
Protected

Academic year: 2023

Share "Generador de seudónimos y credenciales para transacciones en internet"

Copied!
337
0
0

Texto completo

(1)

GE G EN NE E R R A A D D OR O R D DE E S S EU E UD ÓN NI IM M OS O S Y Y C C R R E E DE D EN NC CI IA AL L E E S S

PA P AR RA A T T RA R AN NS SA AC CC CI IO ON NE E S S E E N N IN I NT T ER E RN NE E T T

(2)
(3)

I I N N S S T T I I T T U U T T O O P P O O L L I I T T É É C C N N I I C C O O N N A A C C I I O O N N A A L L

ESESCCUUEELLAA SSUUPPEERRIIOORR DDEE IINNGGEENNIIEERRÍÍAA MMEECCÁÁNNIICCAA YY EELLÉÉCCTTRRIICCAA U

UNNIIDDAADD CCUULLHHUUAACCAANN

SESECCCCIIÓÓNN DDEE EESSTTUUDDIIOOSS DDEE PPOOSSGGRRAADDOO EE IINNVVEESSTTIIGGAACCIIÓÓNN LALABBOORRAATTOORRIIOO DDEE SSEEGGUURRIIDDAADD IINNFFOORRMMÁÁTTIICCAA

Ge G en ne er ra a do d o r r d de e S Se eu ud ón ni im mo o s s y y C Cr re ed de en nc c ia i al le es s pa p ar r a a T Tr r an a ns sa a cc c ci io on ne es s e en n I In nt te er r ne n et t

ASASEESSOORR::

M.M. eenn CC.. RRUUBBÉÉNN VVÁÁZZQQUUEEZZ MMEEDDIINNAA

MÉMÉXXIICCOO,, DD..FF.. DDIICCIIEEMMBBRREE 22000066

T T E E S S I I S S

P P A A R R A A O O B B T T E E N N E E R R E E L L G G R R A A D D O O D D E E

M M A A E E S S T T R R O O E E N N C C I I E E N N C C I I A A S S D D E E I I N N G G E E N N I I E E R R Í Í A A

E E N N M M I I C C R R O O E E L L E E C C T T R R Ó Ó N N I I C C A A

P P R R E E S S E E N N T T A A : :

IN I NG G. . B BE ER RN NA AB É H H UM U MB BE ER RT TO O N NA AV VA A C CO OR RR RE EA A

(4)
(5)
(6)
(7)
(8)
(9)

A MIS PADRES ROBERTO Y EMMA Quienes con su cariño, apoyo, fuerza de voluntad y fe me han demostrado que hay que luchar por lo que anhelamos.

A MIS HERMANOS MARI CARMEN, BERTHA Y ENRIQUE Quienes con su apoyo y consejos, enriquecen mi camino.

A MIS SOBRINOS Que con su presencia inquieta y desesperante algunas veces, me enseñaron a ser más tolerante, a mis mounstros con cariño.

A MA. ELENA Quien con su alegría, comprensión, amor y esperanza, me ha enseñado a no darme por vencido fácilmente y a luchar por ser cada día mejor. Por acompañarme al final de un gran principio

y al principio de un gran camino sin final.

(10)
(11)

Siempre ten presente que: la piel se arruga, El pelo se vuelve blanco, los días se convierten en

años… Pero lo importante no cambia;

tú fuerza y convicción no tiene edad.

Tú espíritu es el plumero de cualquier telaraña.

Detrás de cada línea de llegada, hay una de partida.

Detrás de cada logro, hay otro desafío.

Mientras estés vivo, siéntete vivo.

Si extrañas lo que hacías, vuelve a hacerlo.

No vivas de fotos amarillas…

Sigue aunque todos esperen que abandones.

No dejes que se oxide el hierro que hay en ti.

Haz que en ves de lástima, te tengan respeto.

Cuando por los años no puedas correr, trota.

Cuando no puedas trotar, camina.

Cuando no puedas caminar, usa el bastón, pero

¡¡¡Nunca, nunca te detengas!!!

Madre Teresa de Calcuta.

(12)
(13)

A DIOS:

POR PERMITIRME VIVIR, POR SER MI GUÍA DÍA CON DÍA, POR DARME FE PARA ENFRENTAR LOS PROBLEMAS, POR FORMARME COMO EL SER HUMANO QUE SOY Y

POR SER EL ARTÍFICE DE ESTA OBRA.

A LOS MAESTROS DE LA SECCIÓN DE ESTUDIOS DE POSGRADO E INVESTIGACIÓN:

POR LOS CONOCIMIENTOS QUE ME TRANSMITIERON DURANTE LA ESTANCIA EN LA MAESTRÍA EN CIENCIAS DE INGENIERÍA EN MICROELECTRÓNICA.

A LA ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACAN:

POR LA OPORTUNIDAD DE REALIZAR MIS ESTUDIOS DE MAESTRÍA A TRAVÉS DE SUS INSTALACIONES, Y POR SER AQUELLA QUE ME FORMÓ COMO INGENIERO EN

COMUNICACIONES Y ELECTRÓNICA.

AL INSTITUTO POLITÉCNICO NACIONAL:

POR SER LA CASA QUE ME ABRIÓ SUS PUERTAS PARA CONTINUAR MIS ESTUDIOS Y DESARROLLARME ACADÉMICAMENTE.

A MI ASESOR, M. en C. RUBÉN VÁZQUEZ MEDINA:

POR EL PROFESIONALISMO Y PACIENCIA EN LA REALIZACIÓN DE ÉSTE TRABAJO, POR HABERME BRINDADO SU AMISTAD Y SOBRETODO POR ENSEÑARME A VER LA VIDA

DESDE OTRA PERSPECTIVA.

A LOS MIEMBROS DEL JURADO:

POR EL TIEMPO QUE DEDICARON COADYUVANDO PARA EL MEJORAMIENTO DE ÉSTA TESIS.

AL CONSEJO NACIONAL DE CIENCIA Y TECNOLOGÍA:

POR EL APOYO OTORGADO A TRAVÉS DE LA BECA DE ESTUDIOS DE MAESTRÍA CON NÚMERO DE REGISTRO 170618.

(14)
(15)

La falta de privacidad se ha convertido en un gran problema ante lo conveniente de Internet. Si no se tiene la debida atención para tomar medidas de seguridad y cuidados pertinentes, principalmente en el manejo de información personal, se tiene el riesgo de caer en afectaciones económicas, sociales o personales1.

Actualmente existen varios métodos que aseguran la información que viaja a través de la red y la protegen ante terceros2. Sin embargo, existen usuarios que no sólo están interesados y tranquilos al contar con métodos que protejan su información ante terceros, sino que buscan alternativas que les permitan, además, tener privacidad en el manejo de su información personal. Éste requerimiento es importante en el manejo de información vía Internet, y una alternativa que permite solucionarlo es el uso de Sistemas Seudónimos.

El anonimato se podría utilizar para realizar operaciones electrónicas a través de Internet, lo cual convendría principalmente al usuario porque se establece una comunicación en la que se conoce el destino pero no la fuente. Sin embargo, esto se convierte en una desventaja para el comerciante o destino al no tener las mismas garantías que el usuario. El anonimato en Internet puede llegar a ser una barrera para el crecimiento de los negocios electrónicos, por eso se debe diseñar la infraestructura necesaria para garantizar la privacidad del usuario sin olvidar que el beneficio de la seguridad debe involucrar a ambas partes usuario-destino y no sólo a una.

Una solución basada en Sistemas Seudónimos es útil debido a que Internet es una fuente de recursos de información (conocimientos compartidos a nivel mundial), de comunicación, de operaciones de negocios/publicidad, de venta de bienes y servicios, la cual está cambiando los viejos esquemas de ver las cosas, rompiendo así con los modelos tradicionales. En definitiva, Internet ha atraído los intereses de una multitud de empresas de todos los sectores, que ven en esta red un vehículo ideal para realizar actividades comerciales, técnicas o de marketing.

Por último, se debe considerar que un sistema seudónimo requiere de una infraestructura importante y una fuerte inversión en recursos humanos y materiales. Sin embargo, un aspecto relevante de dicho sistema es el diseño y la puesta en operación de protocolos seguros de comunicaciones para este

1 http://www.cert.org.

2 http://www.buzan.com.mx.

(16)

escenario, así como la implementación y evaluación de dichos protocolos que a la fecha no han sido puestos en práctica. Por ello, con esta tesis se pretende contribuir a la resolución de este problema investigando el estado del arte en el diseño de protocolos seguros de comunicaciones que puedan aplicarse a estos escenarios y evaluarlos en consecuencia.

(17)

La solución al problema planteado a través de un sistema seudónimo, es una alternativa poco conocida, pero otorga seguridad y tranquilidad para realizar operaciones en Internet. Con una elección como esta, no sólo se brinda la solución al problema de falta de privacidad en el manejo de información personal, sino que también se otorga confidencialidad, autenticación efectiva de origen sin la necesidad de revelar la identidad real del usuario.

Un sistema seudónimo conformado además con mecanismos que refuercen la privacidad, permitiría en una comunicación evitar la rastreabilidad por parte del destino y de terceras personas, es decir, no saber realmente de dónde se está conectando un usuario, así como también no se conocería de inicio la identidad real del mismo. La importancia de un sistema seudónimo radica esencialmente del argumento de que en los negocios en general y el negocio electrónico en particular, la anonimidad puede conllevar a una persona a cometer fraude, mientras que la seudonimidad sería un requisito para una plataforma confiable. Por lo tanto, las soluciones en materia de seguridad se hacen imprescindibles no solo para consolidar la confianza del usuario, sino también para poder establecer una legislación en materia de protección de datos.

Aunque no es sencilla la construcción de un sistema seudónimo completo resulta deseable tener herramientas que nos ayuden o contribuyan a su implementación y entendimiento. De esta manera, en este trabajo se analiza y propone un esquema teórico de aplicación, para darle contexto, mejora e implementación a un generador de seudónimos y credenciales, como la principal aportación, ya que es el elemento fundamental de un sistema seudónimo y es el que realmente da privacidad en el manejo de la información personal. Este generador se basa en el algoritmo criptográfico de Lysyanskaya, Rivest y Sahai.

(18)
(19)

En este trabajo se analiza y construye un método de generación de seudónimos y credenciales, fundamentado en el modelo de sistema seudónimo de Lysyanskaya, Rivest y Sahai. Cuya finalidad es otorgar privacidad a la información personal, protegiendo la identidad de los usuarios mediante la asignación de un seudónimo, previniendo así el tráfico de información confidencial, para que no sea manipulado por personas malintencionadas. Además, una de sus ventajas es que en caso de ocurrir algún ilícito la organización emisora puede establecer el enlace entre el seudónimo y la identidad real del usuario, sólo si le es requerido; de tal forma que se protege a ambas partes involucradas en la transacción.

Para conseguir dichos fines, se hace uso de la teoría de números, a través de lo que se conoce como el problema del logaritmo discreto, que por sus características sigue siendo factible en cuanto a seguridad se refiere. De igual forma se utilizan funciones hash, como un medio de autenticación adicional.

Lo primordial en el manejo del seudónimo es que el usuario debe hacer uso correcto de él. Por lo tanto, tal método propuesto busca coadyuvar con su aplicación en cualquier sistema seudónimo que se le requiera, siempre y cuando cumpla con la finalidad de seguridad en el manejo de información personal.

(20)
(21)

In this work a generation method of pseudonyms and credentials, based in the model of pseudonym system of Lysyanskaya, Rivest and Sahai, is analyzed and constructed. The purpose is to grant privacy to the personal information, protecting the identity of the users by means of the assignment of a pseudonym, preventing this way the traffic of confidential information so that is not manipulated by malicious people. Also, one of their advantages is that in case of some illicit the issuing organization can establish the link between the pseudonym and the user’s real identity, only if is required. In such way that both parts involved in the transaction is protected.

To get this objective, the theory of numbers is used through the problem of the discreet logarithm, that for its characteristics yet is feasible for security. Of equal form is used the hash functions, as a means of additional authentication.

The primordial in the handling of the pseudonym is that the user should make correct use of him.

Therefore, the method proposed contribute with their application in any pseudonym system that is required, providing security in the handling of personal information.

(22)
(23)

Ob O bj je et ti iv vo o G Ge en ne er ra al l

Analizar y construir un método de generación de seudónimos y credenciales, con la finalidad de mostrar la viabilidad de otorgar privacidad a los usuarios en sus transacciones comerciales por Internet, reduciendo así el tráfico de información confidencial. Para lo cual, se emplea como base el Modelo de sistema seudónimo de Lysyanskaya, Rivest y Sahai (LRS), así como la teoría de números.

O

Ob bj je et ti iv vo os s E Es sp pe ec íf fi ic co os s

• Investigar y analizar los diferentes sistemas seudónimos que han sido planteados.

• Proponer un esquema teórico de sistema seudónimo que ofrezca mejoras en cuanto a la seguridad de la información personal de los usuarios y la comunicación a través de Internet.

• Implementar un algoritmo generador de seudónimos y credenciales basado en el Modelo de LRS, en Matlab®.

• Establecer subprotocolos de verificación del generador.

• Verificar y comparar que el proceso de funcionamiento de las implementaciones se desarrolló de acuerdo con lo esperado en la prueba de escritorio.

• Analizar la seguridad y factibilidad de uso de los resultados obtenidos de la implementación.

• Publicar los avances y resultados derivados de esta investigación en congresos nacionales y extranjeros.

(24)
(25)

La presente tesis pretende dar a conocer al lector interesado en el área de seguridad de la información, lo que se denomina Sistema Seudónimo, permitiéndole analizar de forma esencial los aspectos inherentes a éste. Se ha planteado en cuatro capítulos, de tal forma que en el capítulo 1, se inicie con una introducción de algunos conceptos indispensables, para la correcta comprensión del tema central de ésta investigación.

En el segundo capítulo, se proporciona el marco teórico de sistemas seudónimos, así como una propuesta teórica para el comercio electrónico. Aquí se conocerá la definición de sistema seudónimo y cuál es su importancia dentro de la actividad comercial, además del análisis de la estructura de funcionamiento de la propuesta.

El tercer capítulo, contiene el método propuesto para generar seudónimos y credenciales, el cual se caracteriza por brindar privacidad en el manejo de información personal a través de redes electrónicas.

En el cuarto y último capítulo, se muestran los resultados de la implementación del método propuesto, que es la primordial aportación de este trabajo. Además, se describe la adaptación de tal método con la propuesta teórica de sistema seudónimo, con el fin de contextualizarlo.

Cada capítulo incluye al final una serie de conclusiones, con las cuales el lector puede comprender y reafirmar en forma breve algunos de los aspectos más importantes del capítulo. Además, se incluye la conclusión general, estado actual y trabajo a futuro, tres apéndices, acrónimos, glosario, bibliografía, referencias, índice de figuras e índice de tablas.

El apéndice A describe los protocolos criptográficos que se mencionan en los antecedentes de sistemas seudónimos, propuesta teórica y método propuesto. El apéndice B contiene las rutinas de cómputo generadas para obtener protección en el manejo de información personal. El apéndice C contiene los artículos publicados en congresos nacionales e internacionales derivados de esta investigación.

Bernabé Humberto Nava Correa México, D.F.

(26)
(27)

Págs.

Planteamiento del Problema

………....………...…... xv

Motivación

………....………....………... xvii

Resumen

………. xix

Abstract

………...……..………. xxi

Objetivos

………..…….………. xxiii

Organización de la Tesis

………...………. xxv

Contenido

………...…………..………. xxvii

Capítulo 1

Conceptos Indispensables

1

1.1 Introducción ………..………. 1

1.2 Mecanismos de Autenticación …………...………..………... 2 1.2.1 Funciones Hash ……...……...………..………... 5

1.2.2 Firma Digital ………....………. 12

1.3 Autoridades de Certificación (AC’s) ………..………... 17

1.3.1 Definición ………....………. 19

1.3.2 Funciones de las Autoridades de Certificación …... 20 1.3.3 Políticas de Certificación de las Autoridades de Certificación ……...…………. 20

1.3.4 Certificado ...………....………. 21

1.3.5 Topología de una Red de Confianza ………. 32 1.3.6 Ejemplos de Autoridades de Certificación ………...………....………. 37 1.4 Análisis de Tráfico ... 38

1.4.1 Definición ………..……..………. 38

1.4.2 Objetivos que Pretende Alcanzar ………..……..…...………. 39 1.4.3 Limites y Alcances ... 39 1.5 Anonimidad …...………...………... 40

1.5.1 Definición ………..……..………. 41

(28)

1.5.2 Navegación Anónima ………...………...……. 41

1.5.3 Correo Anónimo ………..………. 47

1.5.4 Tipos de Anonimidad ………...………. 51 1.5.5 ¿Hay que Regular el Anonimato en Internet? ... 52

1.6 Conclusiones ………...……..………. 55

Capítulo 2

Sistemas Seudónimos

57

2.1 Introducción …………..………. 57

2.2 ¿Qué entendemos por Seudónimo Digital? ……..………...…... 59 2.3 ¿Qué es un Sistema Seudónimo? ……….………... 63 2.4 Ejemplo de la Vida Cotidiana …………...…..………....………. 75 2.5 Antecedentes ………...………..………..…...……. 76 2.6 Propuesta Teórica de Sistema Seudónimo Aplicado al Comercio Electrónico ………... 79 2.6.1 Introducción …...………. 79 2.6.2 Partes del Sistema Seudónimo ………….………. 86 2.6.3 Requisitos de Seudonimidad ……..…..………. 87 2.6.4 El Servicio de Seudonimidad ………...………. 87 2.7 Análisis ... 93

2.8 Conclusiones ………...…..………. 99

Capítulo 3

Método Propuesto para Generar Seudónimos y Credenciales

101

3.1 Visión Global …...………...………..………. 101

3.2 Modelo de Seudonimidad ….………...……...… 103 3.2.1 Procedimientos …... 103 3.2.2 Requisitos …... 104 3.2.3 Otras Características ... 105 3.3 Aspectos Prácticos ………...………... 108 3.3.1 Preliminares …... 108 3.3.2 Construcción de Bloques …... 108 3.3.3 La Construcción …... 110 3.3.4 Credenciales de Múltiple Uso …... 116 3.4 Conclusiones ………...………. 118

(29)

Capítulo 4

Implementación del Método Propuesto

119

4.1 Introducción ………..………. 119

4.2 Desarrollo .……..………...………. 120 4.2.1 Descripción de Implementaciones ...……….………. 120 4.2.2 Requerimientos Operativos ………...……..………. 128 4.3 Resultados ... 129 4.3.1 Pruebas ... 139 4.3.2 Validación ... 144 4.3.3 Garantías ... 144 4.3.4 Recursos Computacionales ... 145 4.4 Adaptación ...………...………. 145 4.4.1 Diagrama de Composición de la Propuesta General ...………. 145 4.4.2 Últimas Consideraciones ... 148 4.4.3 Diagrama de Secuencia de la Adaptación (UML) ... 150

4.5 Conclusiones ………..………..……….………. 152

Conclusión General

………..………. 155

Estado Actual y Trabajo a Futuro

………..………...………. 159

Apéndice A

Protocolos Criptográficos

... 171

Apéndice B

Programas

... 195

Apéndice C

Artículos Publicados en Congresos Nacionales e Internacionales

... 189

Acrónimos

………...………..………...……. 273

Glosario

………..……….………...……. 277

Referencias

………...………...……. 293

(30)

Bibliografía Básica

………....………..………... 301

Índice de Figuras

………...………...……. 305

Índice de Tablas

……….……..………...……. 307

(31)

Co C on n ce c ep pt to os s I In nd d is i s pe p en ns sa ab bl le es s

La educación es al hombre lo que el molde al barro: le da la forma.

(Anónimo)

En este capítulo se abordarán conceptos básicos del trabajo en general, con la finalidad de tener una mejor comprensión de lo realizado en este trabajo. A grandes rasgos tales términos son: mecanismos de autenticación, autoridades de certificación (AC’s), análisis de tráfico y anonimato.

1.1 Introducción

El número de servicios y los contenidos disponibles en Internet crecen día a día. Podemos encontrar cualquier tema de nuestro interés: noticias, diccionarios, enciclopedias, deportes, tiendas, viajes, etc.

Los usuarios podemos reservar boletos de avión, hacer compras, consultar nuestro banco, comprar, enviar mensajes y archivos a otros usuarios, etc. Diariamente, millones de personas intercambian mensajes, boletines, información a través del e-mail; establecen contactos con otros usuarios, comparten ideas, hacen nuevos amigos, etc.

También podemos utilizar la red para jugar, aprender, realizar actividades o ejercicios solos, con otros usuarios o contra nuestra computadora. Podemos tener acceso, a través de Internet, a miles de programas de dominio público o shareware.

En el caso de los niños y adolescentes pueden conseguir muchos beneficios si utilizan adecuadamente la Red. Para ellos Internet es una ventana a un mundo (virtual, pero también real) que quieren descubrir apresuradamente. Para que esta experiencia sea positiva necesitan, la supervisión y el sentido común de los padres y educadores. Sólo con este apoyo sus viajes a través del ciberespacio serán divertidos, saludables y educativos.

(32)

La mayor parte de la gente que utiliza Internet tiene experiencias muy positivas, pero también existen riesgos. Internet, como nuestras ciudades y nuestra sociedad, está formada por individuos con virtudes y defectos. Los riesgos que pudieran llegar a ocurrir, son realmente un peligro latente para la seguridad de un sistema de cómputo, de las redes, de dispositivos y de las personas. Estos riesgos están relacionados con virus, errores en respaldos, configuraciones defectuosas, accesos no autorizados o intrusiones, falta de protección de información (necesidad de confidencialidad, integridad, disponibilidad, autenticación, no repudio, etc.), infraestructura deficiente, fallas eléctricas, obsolescencia, robo de equipo, distintas amenazas, etc. En otras palabras, los riesgos sin atender afectan a los ambientes sociales, de negocio, de información y de tecnología. Ante estos peligros se hace evidente la necesidad de tener seguridad en Internet. La seguridad de cierta manera es el conjunto de recursos (metodologías, documentos, programas y dispositivos físicos) encaminados a lograr que los recursos de cómputo disponibles en un ambiente dado, sean accedidos única y exclusivamente por quienes tienen la autorización para hacerlo.

Por lo tanto y como consecuencia de esta necesidad de seguridad en Internet, han surgido una variedad de prevenciones, métodos, para diferentes aspectos que involucran a la misma, entre los cuales podemos mencionar: a los sistemas de autenticación, las autoridades de certificación (AC’s), el análisis de tráfico, el anonimato, los protocolos criptográficos, etc.

1.2 Mecanismos de Autenticación

A los sistemas que conllevan a la realización de la autenticación como el proceso que permite determinar, si alguien o algo es quien o qué declara ser, se les conoce como sistemas de autenticación.

Se emplean sistemas de autenticación en la mayoría de las actividades diarias de negocios en general.

En las transacciones electrónicas relacionadas con información personal o financiera, como requisito comúnmente se necesita mostrar una prueba de identidad, he aquí su importancia, para que estas transacciones no sean mermadas.

La autenticación puede tomarse en dos contextos diferentes:

Autenticación de Usuario. Es el proceso de determinar si una persona o una empresa está autorizada para llevar a cabo una acción dada. Algunos sistemas de autenticación incluyen tanto identificación como autorización, mientras que otros solamente incluyen uno u otro. El objetivo es permitirle a una persona autorizada el acceso a un recurso físico, telemático o informático, con previa verificación de que cumple con las condiciones exigidas para dicho acceso.

(33)

Los métodos de autenticación de usuario existentes son numerosos y muy variados, es decir, basados en distintas técnicas, no sólo criptográficas:

Métodos basados en «algo conocido por el usuario».

- Passwords

- PINs o NIP’s (Números de Identificación Personal) - Certificados de clave pública

El principal problema de estos métodos de autenticación es que las claves para ser seguras deben ser complejas, y si son complejas, son difíciles de recordar para el usuario, quien fácilmente termina escribiendo el NIP en un papelito que mantendrá junto a la tarjeta bancaria, o claves de acceso en post- it pegados en la CPU o en la pantalla del PC.

Métodos basados en «algo que posee el usuario».

- Tarjetas plásticas de banda magnética - Tarjetas inteligentes

- Tokens o módulos de seguridad - Etc.

Proporcionan una mayor seguridad que el método anterior, pero siempre y cuando sea el usuario autorizado quien las o los tenga en su poder. Para evitar su uso por personas no autorizadas, estos dispositivos por lo general se usan en combinación con datos conocidos por el usuario, reduciendo así la posibilidad de acceso indebido si caen en manos equivocadas.

Métodos basados en «algún atributo propio».

- PIN biológico (huella dactilar, reconocimiento del iris, etc.)

Deben existir factores que sean intrínsecos de la persona y que no cambien, y que puedan utilizarse para identificar a la persona en forma efectiva. Estos factores se denominan Biométricos y son características que poseen las personas.

Los métodos anteriores verifican si un usuario está o no autorizado para tener acceso a un recurso pero no nos dicen nada relacionado con su identidad. Los métodos biométricos verifican la identidad del usuario, y con base en esta identificación proporcionan acceso a los recursos autorizados para ese

(34)

usuario en particular. Podemos dividir los métodos biométricos en los que se basan en rasgos físicos del usuario y aquellos basados en patrones de comportamiento del usuario:

Tabla 1-1. Métodos Biométricos.

Rasgos Físicos Escaneo de retina

Reconocimiento de huella digital Reconocimiento de patrón de iris Reconocimiento de rostros Geometría de la mano Patrón de venas Análisis de DNA Comportamiento Análisis de firma

Reconocimiento de voz Ritmo de uso del teclado

Los métodos biométricos tienden a generalizarse, usados en combinación con otros métodos de autenticación.

Autenticación de Mensajes o Datos. El mecanismo de verificación de que el documento o mensaje proviene de una entidad específica se denomina autenticación de mensajes o autenticación del origen del mensaje. Informalmente, esto es verificar que el autor del mensaje es quien dice ser.

Es importante notar que la autenticación de mensajes necesariamente implica la integridad del mensaje, puesto que si el mensaje es modificado, su autor ha cambiado. Por ello, la autenticación de mensajes es un objetivo deseable de implementar donde quiera que se necesite verificación de tanto la autoría como la integridad de la información almacenada.

En los sistemas de procesamiento automatizado de datos, a menudo es casi imposible que alguien determine si los datos han sido modificados. Esta revisión llevaría demasiado tiempo si se tiene en cuenta la enorme cantidad de datos que manejan hoy en día las aplicaciones de procesamiento de datos.

Existen varios métodos para garantizar que los datos no hayan sido modificados por error o intencionalmente. Se trata de generar un código único asociado a determinados datos, de tal forma que si se modificaran los datos, dicho código sería diferente al original. Entre ellos podemos citar el chequeo de redundancia cíclica (CRC) y el chequeo de suma (Checksum). Estos dos métodos son

(35)

adecuados para asegurar que no se hayan presentado modificaciones involuntarias, sin embargo no evitan modificaciones intencionales, ya que el atacante podría generar el código correcto después de modificar los datos. Una manera de proteger los datos contra modificaciones no autorizadas es mediante un Algoritmo de Autenticación de Datos (Data Authentication Algorithm, DAA) criptográfico. Dicho con otras palabras, a fin de detectar modificaciones intencionales, se utilizan técnicas basadas en distintos mecanismos.

Uno de ellos es el uso de valores de verificación criptográficos (Cryptographic Check Values, CCV).

Estos valores son similares a los “Checksum”, pero con la diferencia que son generados usando Funciones Criptográficas Hash (o de Dispersión). Otro mecanismo similar para preservar no sólo la integridad de la información transmitida sino garantizar la autenticación correcta del emisario son los Códigos de Autenticación de Mensajes (MAC). Un mecanismo aún más poderoso lo constituyen las Firmas Digitales. Una firma digital permite a cualquier receptor verificar la autenticidad e integridad de un documento.

1.2.1 Funciones Hash

Una función de Hash o de dispersión es un algoritmo que toma una secuencia de caracteres (bytes) de cualquier largo y entrega como resultado una secuencia de caracteres de largo fijo (160 bits o 20 caracteres, por ejemplo). El resultado usualmente es denominado valor Hash, código Hash o simplemente Hash. Además de “resumir” su entrada, la principal propiedad de estas funciones es que sea infactible encontrar dos secuencias de caracteres distintas (esto es, dos documentos distintos) cuyo valor de Hash sea el mismo.

Definición. Una función Hash es una función computable que aplica a un mensaje m de tamaño variable, una representación de tamaño fijo del propio mensaje: H(m), que es llamado su valor Hash.

Así pues, las funciones Hash se definen como sigue:

m' H(m) :

H M→ M, =

En general, H(m) es mucho menor que m; por ejemplo, m puede tener una longitud de un megabyte, mientras que H(m) se puede reducir a 128, 160, 256 o 512 bits, generalmente [1]. En el caso de que se transforme una cadena de megabits en un digesto de 128 bits, potencialmente hay 2128 digestos posibles.

(36)

Es inevitable que en esta clase de funciones que transforman cadenas de longitud arbitraria (las preimágenes) en cadenas de longitud fija (las imágenes), más de una preimagen dará lugar a una misma imagen (en caso contrario existiría al menos una función biunívoca entre conjuntos de cardinalidades distintas). Esa clase de conflictos se conoce como “colisiones” entre valores Hash. Es decir, el par formado por dos diferentes secuencias de caracteres m1 y m2 con el mismo valor de Hash H(m1) = H(m2) recibe el nombre de colisión. Por otro lado, una operación es computacionalmente no factible si no existe un algoritmo de tiempo polinomial para resolverla (complejidad Clase P), o sea esa operación es prácticamente irrealizable con los recursos computacionales disponibles en su momento (complejidad Clase NP) [2].

Las propiedades usualmente asociadas a una función Hash son las siguientes:

1. Compresión: el largo del resultado es fijo y en general mucho menor que el largo de la entrada.

Matemáticamente, esto significará que es inevitable que un buen número de secuencias de caracteres (mensajes) den lugar a un mismo valor Hash. Las propiedades siguientes indican que, si bien existen colisiones, no son fáciles de encontrar.

2. Encontrar una preimagen es infactible: aún si uno posee un valor Hash Y correctamente calculado en base a un mensaje m, esto es, Y = H(m), es infactible encontrar m. Funciones con esta propiedad se denominan “de un sentido”. Una función Hash unidireccional no es más que una función Hash que es también una función unidireccional. Por lo tanto, no es posible a través del resumen de salida obtener el texto de entrada, también resultará computacionalmente imposible obtener un valor de salida igual a otro valor de entrada, así como tampoco desde un valor de salida ya calculado, obtener otro valor de entrada diferente al verdadero. Una función Hash de un solo sentido puede ser privada o pública, y tener la opción para un posterior cifrado.

3. Resistencia al cálculo de una segunda preimagen: no es factible encontrar cualquier mensaje m2 cuyo valor Hash H(m2) es igual al valor Hash de un mensaje predeterminado m1. En otras palabras, dado un documento m1 encontrar un documento m2 (distinto de m1) tal que H(m2) = H(m1).

4. Resistencia a la colisión: Es infactible encontrar dos mensajes distintos m1 y m2 tales que sus valores Hash son iguales, esto es, H(m1) = H(m2).

Toda función Hash fuertemente libre de colisiones es unidireccional.

(37)

La idea detrás de estas propiedades es que el valor Hash de un documento en la práctica “represente” al documento completo en forma resumida y unívoca. En este contexto, el valor Hash se denomina también “resumen”, “huella dactilar digital” o “compendio del mensaje” [3].

De las numerosas categorías en semejante clasificación funcional, dos tipos de funciones Hash son considerados en detalle a continuación (Clasificación Simplificada):

Figura 1-1. Clasificación Simplificada de Funciones Hash Criptográficas y Aplicaciones.

Una función Hash suele implicar una función Hash sin clave. Sin embargo en términos genéricos, esta ambigüedad está limitada por el contexto, ya que se tiene funciones Hash sin clave y con clave.

Códigos de Detección de Modificación (Modification Detection Codes, MDCs)

También conocidos como Códigos de Detección de Manipulación, y menos comúnmente como Códigos de Integridad de Mensajes, Messages Integrity Codes (MICs), el propósito de un MDC es (informalmente) proporcionar una imagen representativa o Hash de un mensaje, satisfaciendo las

(38)

propiedades mencionadas anteriormente. La meta final es facilitar, junto con mecanismos adicionales, convicciones de integridad y autenticidad de datos como requisitos para las aplicaciones específicas.

Los MDCs son una subclase de funciones Hash sin clave, y estos a la vez se pueden clasificar en:

(1) Funciones Hash de un Solo Sentido, One-Way Hash Functions (OWHFs): para éstas, encontrar una entrada que descubra a un valor Hash pre-especificado es difícil;

(2) Funciones Hash Resistentes a Colisión, Collision Resistant Hash Functions (CRHFs): para éstas, encontrar dos entradas cualquiera teniendo el mismo valor Hash es difícil.

Nota

La terminología alternada para OWHF, CRHF usada en la literatura, es como sigue: OWHF función Hash de un solo sentido débil (pero aquí la resistencia de preimagen no es considerada a menudo explícitamente); CRHF función Hash de un solo sentido fuerte.

También, los MDCs pueden clasificarse en función de su estructura interna que involucra funciones de compresión: funciones Hash basadas en cifrado de bloques, funciones Hash personalizadas y funciones Hash basadas en aritmética modular. El proceso de estos códigos consiste en aplicar un MDC (una función Hash) al mensaje y se envía junto con el propio mensaje a través de un canal inseguro, cuando el receptor lo recibe aplica nuevamente la función Hash al mensaje y comprueba que sea igual al Hash que le enviaron, si es igual se consigue así la integridad de los datos. Dicho de otra manera, se aplica una Hash al mensaje, que es H(m) y se envía con el mensaje (m, H(m)), cuando esto es recibido por el receptor éste aplica de nuevo la función Hash al mensaje original y compara el Hash obtenido h(m) con el enviado, si H(m) = h(m), entonces sabe que el mensaje ha sido transmitido sin ninguna alteración, en caso contrario detectará que el mensaje ha sufrido algún tipo de modificación (véase la figura siguiente) [4].

Figura 1-2. Esquema General del Proceso de una Función MDC [4].

(39)

La desventaja de este esquema es que, si el mecanismo de confidencialidad se ve comprometido, entonces no puede haber ninguna seguridad de la integridad del mensaje.

A continuación, se mencionan algunos ejemplos de funciones hash sin clave (MDC) o funciones hash:

MD2, MD4, MD5 (MD, Message Digest)

SHA-0, SHA-1, SHA-2 (SHA, Secure Hash Algorithm)

RIPEMD-128, RIPEMD-160 (RACE Integrity Primitives Evaluation Message Digest) Haval

Snefru Tiger

En la tabla siguiente se mencionan de forma resumida las principales características de las funciones hash más difundidas actualmente.

Tabla 1-2. Principales Funciones Hash en Uso en el Ámbito Mundial.

Función Bits Rondas Velocidad

Relativa

(1)estimado

Fuerza Preimagen

Fuerza contra ataque de colisión(2)

(2)ataque cumpleaños

MD5 128 64 0.68 2128 264

SHA-1 160 80 0.28 2160 280

(*)SHA-224 224 64 (1)0.20 2224 2112

(*)SHA-256 256 64 (1)0.20 2256 2128

(*)SHA-384 384 80 (1)0.15 2384 2192

(*)SHA-512 512 80 (1)0.15 2512 2256

RIPEMD 128 128 64 0.39 2128 264

RIPEMD 160 160 80 0.24 2160 280

Las fuerzas ideales corresponden a los valores conocidos antes de la publicación de los últimos ataques (1).

(*) Estos algoritmos emparentados se conocen genéricamente como SHA-2 [2].

Existen diferentes funciones Hash como ya se ha podido apreciar, pero actualmente las más utilizadas con fines criptográficos son MD5 y SHA-1. Por razones de consideración dentro del proyecto de tesis, se hablará un poco más de éstas dos funciones Hash.

(40)

MD5 (Message Digest version 5)

Algoritmo que forma parte de la familia MDx, llamado recopilación de mensaje, se desarrolló en 1991 por Ron Rivest en el MIT [5, 6]. Es una versión mejorada (aunque algo más lenta) de MD4. Cuando surgieron los ataques de fuerza bruta y criptoanálisis, MD5 fue el algoritmo hash seguro más ampliamente usado. Este algoritmo toma como entrada un mensaje de longitud arbitraria para producir como salida un compendio del mensaje de 128 bits de longitud (fija), resultante de fraccionar la entrada en bloques de 512 bits, que a su vez están divididos en 16 sub-bloques de 32 bits [7].

Este algoritmo tiene optimizaciones y sugerencias de varios revisores, y aunque la obtención del valor hash es un poco lento se considera más seguro. Está especificado como un estándar de Internet (RFC- 1321), por lo que es usado en diversos protocolos de autenticación como PGP (Pretty Good Privacy).

Se han realizado multitud de ataques a este algoritmo mediante técnicas de fuerza bruta, destacando el de Van Oorschot y Wiener [8], quienes estimaron que diseñando una máquina con hardware de alto nivel específicamente para encontrar colisiones en MD5, sería capaz de encontrar una colisión en 24 días.

SHA-1 (Secure Hash Algorithm version 1)

El Algoritmo Hash Seguro como es llamado, se desarrolló por el gobierno de los Estados Unidos, específicamente por el NIST en colaboración con la NSA, para implementarlo en los sistemas informáticos de alta seguridad del estado como un estándar de protección de documentos y en firmas digitales. Fue en 1993 cuando se publicó como un estándar federal de procesamiento de información (FIPS 180); pero en 1995 se emitió una versión revisada como FIPS 180-1 y es generalmente llamada SHA-1. Aunque también se especifica en RFC 3174, que esencialmente reproduce el material del FIPS 180-1, pero agrega una implementación en lenguaje C [9]. Pero el documento del estándar actual se denomina Estándar Hash Seguro (Secure Hash Standard, SHS).

El diseño de este algoritmo también esta basado en MD4 y por lo tanto el proceso global de un mensaje sigue la estructura de MD5, con la diferencia que el ciclo principal de procesamiento ahora tiene cuatro rondas de 20 pasos cada una, para un total de 80 pasos; debido a que el buffer esta constituido por cinco registros de 32 bits con valores hexadecimales preestablecidos que son los valores iniciales del proceso. El algoritmo SHA-1 toma como entrada un mensaje con una longitud máxima de menos de 264 bits y se procesa en bloques de 512 bits para producir como salida una huella digital o resumen de 160 bits de longitud (20 bytes).

(41)

En el 2001 el NIST emitió una revisión de la propuesta FIPS 180-1, conocida como FIPS 180-2, que añade tres algoritmos Hash adicionales para el algoritmo SHA-1. Los tres miembros nuevos del estándar son SHA-256, SHA-384 y SHA-512, que tienen longitudes de valor Hash de 256, 384 y 512 bits respectivamente [10].

Comparación de MD5 y SHA-1

La principal diferencia entre MD5 y SHA-1 es la longitud de la salida, que en el caso de MD5 es de 128 bits y para SHA-1 de 160 bits, diferencia de 32 bits más. La fortaleza de las funciones Hash frente a los ataques de fuerza bruta reside principalmente en la longitud del código o valor Hash generado por dichas funciones, la dificultad de obtener un mensaje a partir de su código Hash es del orden de 2128 operaciones para MD5 y de 2160 para SHA-1. A partir de este dato se puede calcular la dificultad de que dos mensajes generen el mismo código Hash, que sería de 264 operaciones para MD5 y 280 para SHA-1. En cuanto a la velocidad de procesamiento bajo el mismo hardware, la ejecución del algoritmo SHA-1 resulta significativamente más lento que MD5, debido a que debe procesar 160 bits de buffer en comparación con los 128 bits de MD5, pero en contraparte se considera más seguro ante ataques de fuerza bruta y de inversión de la función Hash, debido a que la longitud de su salida es de 32 bits más y por tanto a mayor longitud de salida, menor número de colisiones.

Finalmente hay que destacar que estos algoritmos se encuentran en el dominio público y por tanto no se ven afectados por problemas de patentes.

Ataques a funciones Hash

Como parte de esto, el riesgo de concretarse posibles ataques, es latente. Por lo cual a continuación se mencionará información sobre los ataques realizables sobre los algoritmos que empleen funciones Hash.

Generalmente se cuenta con dos tipos de ataques a las funciones Hash, que son:

• Ataques por Fuerza Bruta: La fortaleza de las funciones hash frente a este tipo de ataques, reside principalmente en la longitud del código o valor hash generado por dichas funciones.

• Ataques por Criptoanálisis: En esta variante, se han invertido grandes esfuerzos en investigación y desarrollo, centrándose inicialmente en la estructura interna de la función para encontrar técnicas eficientes que produzcan colisiones, puesto que la longitud del código hash generalmente será menor

(42)

que la longitud del mensaje. Estos ataques son complejos y generalmente dependen del tipo de función hash sobre la que actúen. Sin embargo, se conocen dos tipos de ataques concretos [11]:

- El Ataque del Cumpleaños

- El Ataque por Encuentro a Medio Camino

En la reunión anual de criptología CRYPTO’04 surgieron a la luz una serie de vulnerabilidades de las funciones Hash actuales empleando variantes computacionalmente eficientes del ataque de colisiones diferenciales [12] de Chabaud-Joux. Un equipo chino publicó un trabajo interesante [13]: donde halló una variante computacional eficiente para generar colisiones reales. Los algoritmos involucrados fueron el MD4, MD5, HAVAL-128 y RIPEMD-128. Además se comprometieron los algoritmos SHA- 0 y RIPEMD-160. De hecho se generó pares de mensajes x y x’ con igual imagen z = h(x) = h(x’). Esto fue seguido por la publicación de un segundo trabajo aún más significativo por parte de un equipo australiano [14] quien halló por variantes del método Chabaud-Joux ataques de segunda preimagen contra la familia SHA-2.

En síntesis, si hay alerta, pero alarma aún no. No hay motivos para descartar todo lo que está implementado con las funciones Hash actuales (exceptuando al MD4 que debe ser definitivamente erradicado). Eso sí, deberemos seguir atentos a lo que el futuro nos aporte sobre este tema y parece que habrá mucha actividad en la creación y ataques a los algoritmos de control de integridad.

1.2.2 Firma Digital

Mediante la firma manuscrita, autógrafa o rúbrica, un individuo o varios, manifiestan su voluntad de reconocer el contenido de un documento, y en su caso, a cumplir con los compromisos que el documento establezca para con el individuo o individuos, aspecto de gran importancia desde un punto de vista legal. La firma manuscrita tiene un reconocimiento particularmente alto pese a que pueda ser falsificada.

La firma digital pretende ser análoga a la rúbrica, asegurando la misma validez al aplicarse a un documento electrónico, con la ventaja de poder detectar fácilmente si ha sido manipulada o falsificada.

Definición

La firma digital es un bloque de caracteres que acompaña a un documento (o archivo) acreditando quién es su autor (autenticación) y que no ha existido ninguna manipulación posterior de los datos

(43)

(integridad). Para firmar un documento digital, su autor utiliza su propia clave privada (sistema criptográfico asimétrico), a la que sólo él tiene acceso, lo que impide que pueda después negar su autoría (no repudiación). De esta forma, el autor queda vinculado al documento de la firma. Por último la validez de dicha firma podrá ser comprobada por cualquier persona que disponga de la clave pública del autor.

Para garantizar la privacidad del documento, el autor (o emisor) del documento electrónico, cifra el contenido de éste con la clave pública del receptor, de tal forma, que sólo éste podrá descifrarlo usando su clave privada.

Aunque diversos protocolos de firma basados en la criptografía de clave privada han sido propuestos (como por ejemplo el esquema de Lamport-Diffie [15]), la criptografía de clave pública permite resolver mucho más eficientemente el problema. La criptografía de clave pública permite que cada mensaje enviado por cualquier usuario lleve su firma digital. El hecho de poder firmar digitalmente un mensaje hace posible que el destinatario se asegure de que el mensaje que recibe es enviado por quien dice ser el remitente. Por otra parte, una firma digital da mayor garantía que una firma manual, puesto que asegura, que ninguna parte del mensaje que se ha recibido ha sido modificada.

Las firmas digitales se clasifican de diferentes maneras [1]:

Implícitas: si están contenidas en el propio mensaje.

Explícitas: si son añadidas como una marca inseparable del mensaje.

Privadas: si permite identificar al remitente sólo para alguien que comparte un secreto con el remitente.

Públicas (o verdaderas): si permite identificar al remitente ante cualquier persona a partir de información públicamente disponible.

Revocables: si el remitente puede, posteriormente, negar que la firma digital en cuestión le pertenece.

Irrevocables: si el receptor puede probar que el remitente escribió el mensaje.

En sus inicios, los esquemas de firma digital con criptografía de clave pública solían obtener la firma digital a partir de todo el mensaje lo cual provocaba que estos fueran muy lentos y, en ocasiones, la longitud de la firma fuera posiblemente similar o mayor que el propio mensaje que se firmaba. La necesidad de firmar mensajes y el hecho no deseable de que la longitud de la firma fuera extensa, hizo

(44)

pensar en la conveniencia de buscar una solución a este problema. Esta solución consistió en utilizar las llamadas funciones hash antes de firmar un mensaje [16].

Las funciones hash son usadas para generar un resumen de los datos cuando se realizan firmas digitales. Estas funciones están basadas en el hecho que el resumen de un mensaje representa de forma concisa los datos originales desde los cuales va a ser generado. Debería considerarse como la huella digital de la más grande cadena de datos. Como las funciones de resumen son mucho más rápidas que las funciones de firma de todos los datos es mucho más eficiente utilizar la firma digital con un resumen que con todos los datos.

El esquema de funcionamiento de firma digital se puede observar en la siguiente figura. En ella se puede ver como el emisor genera un resumen, lo cifra con su clave privada y lo anexa al mensaje original. Por otro lado, el receptor recibe el mensaje y la firma, genera un resumen a través del mensaje con la misma función resumen conocida, y además descifra con la clave pública del emisor la firma, comparando ambos resúmenes. Si tras esto se comprueba que son idénticos, la verificación de identidad e integridad es positiva.

Receptor Emisor



Resumen Función

Hash Resumen



Función Hash Mensaje

Firma Llave privada

de Emisor Algoritmo de Cifrado

Resumen



Firma

Correcta

=

Llave pública de Emisor Algoritmo de

Descifrado

Mensaje + Firma

Figura 1-3. Proceso de Firma Digital con Funciones Hash.

El proceso de firma digital con funciones hash visto en la figura, es el que se maneja actualmente. Los algoritmos hash más utilizados para esta función son el MD5 ó SHA-1.

(45)

Entre otros sistemas de firmas digitales destacan:

1. Esquema de firmas de RSA [17]

2. ESIGN (Efficient digital SIGNature) [17]

3. Esquema de firmas de McEliece [17]

4. Esquema de firmas de Rabin [17]

5. Esquema de firmas de Fiat-Shamir [17]

6. Esquema de firmas de ElGamal [17]

7. Esquema de firmas de Schnorr [17]

8. Esquema de firmas one-time de Merkle [17]

9. Esquema de firmas one-time GMR (Goldwasser, Micali, Rivest) [17]

10. DSS (Digital Signature Algorithm) [17]

El más usado es RSA1, aunque recientemente están despertando mayor atención los criptosistemas basados en Curvas Elípticas, gracias a que la potencia computacional económicamente disponible supera en otro tiempo la lentitud de ejecución.

Normativa

La firma digital confiere obvias implicaciones económicas, pero también legislativas y jurídicas, como lo muestra el interés reciente del mundo del derecho por el tema y la legislación a la que ha dado lugar:

Ley Alemana 1997, Real Decreto-Ley de Firma Electrónica del 17/9/1999 (España), Código del Comercio y de la Ley Federal de Protección al Consumidor (Abril del 2000, México), Acta de Firmas Electrónicas en el Comercio Global y Nacional (Octubre del 2000, EUA), Tratado con Identrus (Agosto del 2001, Unión Europea), Ley Modelo sobre Firmas Electrónicas (12/12/2001, Comisión de las Naciones Unidas para el Derecho Mercantil Internacional CNUDMI), etc.

Es evidente que la eficacia de estas leyes radica en su uniformidad, ya que si su contenido difiere en

1 RSA fue inventado por Ron Rivest, Adi Shamir y Leonard Adleman y se publico por primer vez en 1977. El algoritmo se basa en la factorización de grandes números enteros: su fortaleza frente al criptoanálisis reside en la longitud de la clave, que es indudablemente sensible a los avances de capacidad computacional: 512 bits es débil, las claves de 1024 bits son consideradas seguras para la mayor parte de las aplicaciones actuales, la de 2048 bits parece que se mantendrá segura alguna década más. Las especificaciones de RSA se recogen en el Public-Key Cryptography Standards (PKCS). Con frecuencia las aplicaciones prácticas se utilizan en combinación con algoritmos simétricos (criptosistemas híbridos), o con funciones unidireccionales (hash) o con ambos (como PGP, que utiliza RSA. IDEA y la función hash MD5). El funcionamiento básico es que el algoritmo de clave pública se encarga de cifrar la clave de sesión simétrica utilizada en una determinada comunicación al resultado de aplicar una función hash a un cierto documento (con el fin de garantizar la integridad del mismo), consiguiéndose una notable reducción de cálculo y de tamaño de los archivos, sin merma de las prestaciones de seguridad.

(46)

cada estado, será difícil su aplicación a un entorno global como Internet. Por ello, el esfuerzo a realizar a partir de ahora deberá centrarse en la consecución de un modelo común que sirva a todos. Tal tarea puede encomendarse a organismos internacionales como UNCITRAL, que ya dispone de experiencia en iniciativas similares en materia de EDI. La normativa sobre firma digital permitirá:

La digitalización de cualquier circuito de información,

La generalización de la utilización de firma digital a través de la adopción de pautas uniformes que permitan verificar la autenticidad e integridad de los documentos digitales que requieran firma para su validez, y

Un menor riesgo de fraude en los documentos digitales suscriptos digitalmente.

Tipos de ataques

El objetivo para un atacante a un proceso de firma digital es forjar firmas que sean aceptadas como válidas. Según el ámbito de tales falsificaciones se habla de [18]:

1. Ruptura total: El atacante posee un algoritmo de firma funcionalmente equivalente al auténtico.

2. Ruptura selectiva: El atacante es capaz de forjar una firma para un tipo particular de mensaje.

3. Ruptura existencial: El atacante es capaz de forjar una firma para al menos un mensaje.

Detección de duplicación maliciosa:

La firma digital es justificable desde el momento en que los contratos, las transacciones económicas, las compras, etc. se realizan on-line, es decir sin la presencia física de las partes. Surge de las tecnologías utilizadas para conseguir la confidencialidad en las comunicaciones, ante la proliferación de software que consigue incitar las comunicaciones obteniendo la información deseada. Sin embargo, las firmas digitales solo permiten asegurar que cierto documento se genero por una entidad autorizada en algún momento del pasado, pero no permiten determinar por sí mismos la fecha/hora de creación o si el documento ha sido completamente duplicado. Esto puede ser relevante en contextos donde la repetición de un mensaje puede tener efectos concretos (por ejemplo, una orden de pago). Para ello, se requiere lo que se denomina Autenticación de Transacciones. Este tipo de mecanismos añade información extra a los mensajes o documentos enviados (como números de secuencia, o números aleatorios, o estampas de tiempo) de manera de garantizar la detección de duplicados (por ejemplo, un mensaje con el mismo número de secuencia sería considerado como duplicado) o determinar la fecha exacta de creación del documento. Estas técnicas son más complejas.

(47)

1.3 Autoridades de Certificación (AC’s)

Los sistemas criptográficos de clave asimétrica o de clave pública, adecuadamente usados, proporcionan servicios de confidencialidad, integridad, autenticación y no repudio del origen. Para ello sólo es necesario que cada usuario del sistema mantenga bien protegida su clave privada y de a conocer adecuadamente su clave pública. Sin embargo, todavía es necesario que alguien asegure que una determinada clave pública realmente pertenece a un determinado usuario y no a cualquier otro. En el caso del Comercio Electrónico, esta necesaria identificación es fundamental en lo que se refiere a Comercios y Entidades Financieras, ya que son las que están prestando un servicio al Comprador como iniciador de cualquier transacción comercial. Ante esto, no hay que olvidar que también puede ser requerido, por seguridad a Comercios y Entidades Financieras que el Comprador se someta de igual forma a tal exigencia.

La solución al problema de identificación está en la existencia de agentes en los que confíen los usuarios o compradores, comercios y entidades financieras, y cuya misión sea certificar explícitamente el vínculo que existe entre la identidad del titular con la clave pública que él presenta. Estos elementos se conocen como Autoridades de Certificación o lo que se ha dado en llamar “Terceras Partes Confiables (TPC)”. Estas entidades pueden ser organizaciones o instituciones de carácter público o privado, tales como Servicios Nacionales de Correos, Instituciones Bancarias, etc.

El tener confianza en algo es “la actitud hacía alguien en quién se confía o se espera que haga cierta cosa necesaria para su tranquilidad”. La criptografía, por sí misma, no proporciona ese nivel de

“tranquilidad” deseado y necesario, por lo que es ineludible recurrir a mecanismos de orden superior como lo es la firma digital realizada por terceras partes confiables o Autoridades de Certificación, para disponer realmente de ese nivel de confianza.

La sociedad actual comienza a hacer un uso intensivo de las computadoras y sistemas de comunicación digital como herramientas básicas para el desarrollo de sus actividades. Muchos usuarios de computadoras no conocen personalmente, en el sentido habitual del término, a los gestores u otros usuarios del sistema por lo que, para que cualquier usuario pueda confiar en los demás usuarios o en los gestores, se deben establecer ciertos protocolos de seguridad.

Mediante estos protocolos, si dos usuarios desconfían, lo cual debería ser la pauta habitual en las redes telemáticas actuales, éstos pueden interaccionar con un tercero de modo tal que, al terminar con éxito

(48)

el protocolo, puedan terminar confiando mutuamente para la realización de sus operaciones dentro de la red. Para ello, todas las partes involucradas deberán participar en un mismo protocolo, en cuyo diseño se incluyen medidas de seguridad que son sobre las que se asienta la confianza adquirida.

Los protocolos, en general, consisten en definir el proceso a seguir para realizar una determinada tarea y se debe diferenciar del mecanismo y herramientas concretas utilizadas. En resumen, todo protocolo sólo especifica las reglas de comportamiento a seguir. Existen diferentes tipos de protocolos en los que intervienen terceras partes confiables:

Los protocolos arbitrados. En ellos una TPC o Autoridad de Certificación participa en la transacción para asegurar que ambos lados actúan según las pautas marcadas por el protocolo.

Los protocolos notariados. En este caso la tercera parte confiable, además de garantizar la correcta operación, también permite juzgar si ambas partes actuarán por derecho según la evidencia presentada a través de los documentos aportados por los participantes e incluidos dentro del protocolo notarial. En estos casos, se añade la firma (digital) del notario a la transacción, pudiendo éste testificar, posteriormente, en caso de disputa.

Los protocolos autoverificables2. En estos protocolos cada una de las partes puede darse cuenta si la otra actúa deshonestamente, durante el transcurso de la operación.

La firma digital en sí, es un elemento básico de los protocolos autoverificables ya que no precisa de la intervención de una Autoridad de Certificación para determinar la validez de una firma. En esencia, las firmas digitales tienen el mismo efecto que las firmas manuscritas, ya que es una “marca” que sólo el emisor puede hacer y que todos los demás pueden reconocer y verificar en cualquier momento.

Las diferencias fundamentales que hay entre la firma digital y la manuscrita, como ya se han mencionado, son (1) que aquélla depende tanto de quien firma como de todo el texto que es firmado y la manuscrita es siempre una misma “marca” añadida a un documento físico, y (2) que la firma manuscrita es el resultado de un movimiento reflejo que el autor no puede “enseñar” a otros, mientras que la firma digital depende de un secreto que si es transferible.

Si bien, lo antedicho se refiere a las firmas digitales basadas en criptosistemas de clave pública, éstas también pueden basarse en criptosistemas de clave secreta convencionales. En este caso, el papel que juegan las Terceras Partes Confiables (Terceras Partes de Confianza Incondicional, Unconditionally

2 Fail-Stop Protocols.

(49)

Trusted Third Party ), es en tiempo real a diferencia de lo que ocurre en el caso de las firmas digitales basadas en criptosistemas asimétricos. El carácter de incondicionalidad que deben tener esos agentes se debe a que tanto ellos como los demás agentes a los que prestan servicio, comparten los mismos

“secretos” sobre los que basan la identidad, por lo que, la TPC podría suplantar a cualquiera de sus asociados. En este escenario el papel que juega la TPC es de intermediario entre los dos comunicantes, por lo que participa en todas las transacciones y, al ser un elemento central del sistema de identidades, se convierte en un “cuello de botella” que limita el número de agentes a los que puede dar servicio.

1.3.1 Definición

Según la recomendación X.509 de la UIT-T:

Autoridad a la cual uno o más usuarios han confiado la creación y asignación de certificados.

Facultativamente puede crear las claves de los usuarios. Es una tercera parte de confianza que acredita la conexión entre una determinada clave pública y su propietario. La confianza en la Autoridad de Certificación supone la confianza en los certificados que emite [19].

Por otro lado, se puede definir en forma general a una Autoridad de Certificación (AC), también conocida como Tercera Parte de Confianza o Notario Electrónico, como:

Entidad pública o privada cuyo objetivo primordial es ofrecer confianza al confirmar las identidades de aquellos a quienes otorgo certificados, los cuales han sido firmados (con conocimiento de causa y asunción de responsabilidades legales), conteniendo fundamentalmente las claves públicas respectivas y la rúbrica (firma) de la entidad reconociendo la identidad correspondiente.

Entre sus características más importantes tenemos que:

Aporta credibilidad y seguridad a las transacciones comerciales electrónicas, nacionales e internacionales.

Se encarga de la emisión, firmado y gestión de los certificados digitales, después de haber realizado una serie de comprobaciones sobre la identidad del peticionario.

La firma de la AC es la que garantiza la validez o autenticación de los certificados.

Acredita que la clave pública pertenece al usuario a quien se atribuye y su vigencia.

La confianza y seguridad es centralizada en la AC.

Es pieza clave de una PKI.

(50)

Tiene sistema jerárquico de certificación (establecimiento de cadenas de confianza).

Evita que alguien genere certificados falsos para suplantar a otro, pues la AC los envía firmados con su clave privada.

Elementos de una autoridad de certificación

El sistema de autenticación debe tener:

Una política de certificación: regula los servicios de certificación que provee como la solicitud de un certificado, la validación de la solicitud, la emisión del certificado, el uso del certificado y la suspensión, revocación o renovación de certificados.

Un certificado de la AC.

Los certificados de los usuarios (X.509).

Los protocolos de autenticación, gestión y obtención de certificados.

1.3.2 Funciones de las Autoridades de Certificación

Las funciones de una Autoridad de Certificación deben ser, entre otras, las siguientes:

• Generación y registro de claves

• Identificación de peticionarios de certificados

• Emisión de certificado

• Almacenamiento en la AC de su clave privada

• Mantenimiento de las claves vigentes y revocadas

• Servicios de directorio

1.3.3 Políticas de Certificación de las Autoridades de Certificación

Regulan los servicios de certificación que proveen:

-Solicitud del Certificado.

-Validación de la Solicitud.

-Emisión del Certificado.

-Aceptación.

-Uso.

-Suspensión, Revocación y Renovación.

(51)

Se supone al usuario conocedor de las técnicas de PKI.

El usuario genera las claves.

El usuario debe aceptar los certificados antes de usarlos.

El receptor del certificado es responsable de confiar en él o no, comprobar si es válido o si está revocado o suspendido.

En caso de compromiso de la clave privada debe notificarse a la AC.

1.3.4 Certificado

Un Certificado o también llamado Credencial es un documento digital de identidad que se basa en la tecnología de Clave Pública (PKI) y que permite identificarse en el mundo virtual. Es emitido por una Autoridad de Certificación, la cual vincula un par de claves, pública y privada, con un individuo o entidad confirmando su identidad.

El nacimiento del certificado digital fue a raíz de resolver el problema de administrar las claves públicas y que la identidad del dueño no pudiera ser falsificada. La idea fue que una tercera entidad interviniera en la administración de las claves públicas y asegurara que las claves públicas tuvieran asociado un usuario claramente identificado. Esto fue inicialmente planteado por L. Kohnfelder del MIT en su tesis de licenciatura [20]. La propuesta de certificado de clave pública, fue hecha por él, en 1978.

Ante esto, las tres partes más importantes de un certificado digital son:

1). Una clave pública.

2). La identidad del implicado: nombre y datos generales.

3). La firma privada de una tercera entidad llamada autoridad certificadora que todos reconocen como tal y que válida la asociación de la clave pública en cuestión con el tipo que dice ser.

Cuando una persona o entidad solicita un certificado digital, se genera su par de claves, la pública y la privada. La clave pública viene en el certificado digital explícitamente. La clave privada queda en custodia del propietario del certificado. Otro elemento importante que tiene el certificado digital es la firma digital de una autoridad certificadora quien está como aval de que los datos corresponden al propietario. Es decir, el Certificado Digital es firmado con la clave privada de la Autoridad de Certificación. Para comprobar si el certificado ha sido emitido por la Autoridad de Certificación, basta con conocer fehacientemente la clave pública de la Autoridad de Certificación y verificar la firma del

Referencias

Documento similar

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

que hasta que llegue el tiempo en que su regia planta ; | pise el hispano suelo... que hasta que el

Para ello, trabajaremos con una colección de cartas redactadas desde allí, impresa en Évora en 1598 y otros documentos jesuitas: el Sumario de las cosas de Japón (1583),

En suma, la búsqueda de la máxima expansión de la libertad de enseñanza y la eliminación del monopolio estatal para convertir a la educación en una función de la

Five-step methodology DEA-based * allows us the decompose the differences in the research output of universities in terms of Intra-field inefficiency (inefficiencies of the

– Seeks to assess the contribution of the different types of capital assets: tangible ICT, tangible non-ICT, intangibles (public and private) and public capital (infrastructures). ·

6 Para la pervivencia de la tradición clásica y la mitología en la poesía machadiana, véase: Lasso de la Vega, José, “El mito clásico en la literatura española

 Tejidos de origen humano o sus derivados que sean inviables o hayan sido transformados en inviables con una función accesoria..  Células de origen humano o sus derivados que