1. introduccioìn a la seguridad

16
Criptografía en aplicaciones Java

Upload: 1-2d

Post on 01-Dec-2014

737 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: 1. introduccioìn a la seguridad

Criptografía en aplicaciones Java

Page 2: 1. introduccioìn a la seguridad

Índice de contenidos

Introducción. Criptografía con Java. Infraestructura con PKI con Java. Control de acceso. Aplicaciones con Java SSL. Seguridad en aplicaciones WEB.

Page 3: 1. introduccioìn a la seguridad

Introducción

¿Qué es la seguridad? Seguridad Java. Evolución en el modelo de seguridad. Características J2EE.

Page 4: 1. introduccioìn a la seguridad

¿Qué es la seguridad?

El término seguridad puede ser distinto en función del contexto en el que hablamos.

Se pueden esperar resultados distintos de la palabra seguridad en función de dicho contexto:

Protección frente a programas potencialmente peligrosos: un programa no debe atacar el sistema de un usuario.No intrusismo: los programas no deben acceder a información privada de un ordenador.Autenticación: identificación de los distintos elementos que componen un programa.

Page 5: 1. introduccioìn a la seguridad

¿Qué es la seguridad?

Cifrado: los datos que un programa envía y recibe deben estar cifrados.Comportamiento correcto: los programas no deben consumir demasiados recursos de sistema.

Sólo los dos primeros apartados se incluyen en el modelo de seguridad por defecto de Java 1.0

Otros puntos fueron incluidos en versiones posteriores, tales como, cifrado.

Page 6: 1. introduccioìn a la seguridad

Seguridad Java

La conexión a Internet obliga a una protección de nuestros sistemas frente a posibles virus.

Descarga de programas a través de la red y ejecución de dichos programas en otras máquinas.

La aparición de Java multiplica los problemas, dado que Java tiene la cualidad de llevar programas al usuario.

Page 7: 1. introduccioìn a la seguridad

Seguridad Java

El éxito de Java radica en solucionar el problema de los virus.

Gran parte de los esfuerzos en el desarrollo de Java se focalizó en este tema.

Los programas Java se consideran seguros porque no pueden causar ningún daño al usuario.

La protección de la información de usuario y la prevención de virus es un tema muy importante.

Page 8: 1. introduccioìn a la seguridad

Evolución del modelo de seguridad

Aislamiento de virus: todas las versiones. Autenticación y cifrado: versión 1.1 o

posteriores. Si se necesita un conjunto de operaciones

auditadas se deberá implementar dentro de la aplicación.

Page 9: 1. introduccioìn a la seguridad

Características JavaEE

Una aplicación J2EE es segura gracias a:Clases fundamentales de Java.Máquina virtual. Lenguaje de programación.

Una aplicación J2EE tiene muchos niveles y es posible implementar características de seguridad en cada uno de los niveles.

Page 10: 1. introduccioìn a la seguridad

Características JavaEE

La plataforma proporciona las siguientes funcionalidades:

Vigilancia de seguridad configurable.Generación de digest message.Generación de firma digital.Sistema de gestión de claves.

Page 11: 1. introduccioìn a la seguridad

Características JavaEE

La seguridad es un balance entre protección máxima y la utilización.

El nivel adecuado de seguridad que se debe aplicar se determina de acuerdo con los factores percibidos de riesgo y utilización.

El modelo de seguridad de Java es una especificación abierta.

La especificación del modelo está disponible para que la comunidad Java lo estudie, valide e introduzca mejoras para hacerlo más seguro.

Page 12: 1. introduccioìn a la seguridad

Introducción

Definición de Criptografía. Confidencialidad e integridad. Sistemas criptográficos. Sistemas simétricos y asimétricos.

Page 13: 1. introduccioìn a la seguridad

Definición de criptografía

Rama inicial de las Matemáticas y en la actualidad también de la Informática y la Telemática, que hace uso de métodos y técnicas con el objeto principal de cifrar, y por tanto proteger, un mensaje o archivo por medio de un algoritmo, usando una o más claves.

Esto dará lugar a diferentes tipos de sistemas de cifra, que nos permiten asegurar al menos tres de los cuatro aspectos básicos de la seguridad informática: la confidencialidad o secreto del mensaje, la integridad del mensaje y autenticidad del emisor, así como el no repudio mutuo entre emisor (cliente) y receptor (servidor).

Page 14: 1. introduccioìn a la seguridad

Confidencialidad e integridad

Confidencialidad: intercepción del mensaje por un intruso.

Integridad:usurpación de identidad por un intruso.

Estos dos aspectos básicos de la seguridad informática, el de la confidencialidad y el de integridad (además de la disponibilidad del sistema y el no repudio) serán muy importantes en un entorno de intercambio de información segura a través de Internet.

Page 15: 1. introduccioìn a la seguridad

Sistemas criptográficos

Según el tratamiento del mensaje se dividen en:

Cifrado en bloque (IDEA, AES, RSA* ...) 64 ó 128 bits.Cifrado en flujo (A5, RC4, SEAL ...) cifrado bit a bit.

Según el tipo de claves se dividen en:Cifrado con clave secreta (sistemas simétricos).Cifrado con clave pública (sistemas asimétricos).

Page 16: 1. introduccioìn a la seguridad

Sistemas criptográficos

Criptosistemas simétricos:Existirá una única clave (secreta) que deben compartir emisor y receptor. Con la misma clave se cifra y se descifra por lo que la seguridad reside en mantener dicha clave en secreto.

Criptosistemas asimétricos:Cada usuario crea un par de claves, una privada y otra pública, inversas dentro de un cuerpo finito. Lo que se cifra en emisión con una clave, se descifra en recepción con la clave inversa. La seguridad del sistema reside en la dificultad computacional de descubrir la clave privada a partir de la pública. Para ello, usan funciones matemáticas de un solo sentido o con trampa.