Charla Criptografia Aplicaciones Web

Preview:

DESCRIPTION

Charla Criptografia Aplicaciones Web

Citation preview

CriptografíaCriptografía Para Para aplicacionesaplicaciones Web Web

Jose Florez Gaitán (Axia)

Introducción

El propósito de la charla es dar cuenta de algunas de las herramientas de

cifrado incluidas en lenguaje PHP para el desarrollo de sistemas seguros.

Términos a utilizar

La Real Academia Española no reconoce los términos ENCRIPTAR o DESENCRIPTAR, por tanto lo indicado seria usar los términos

CIFRAR y DECIFRAR.

Encriptar datos podría ser… :D

¿Qué es Criptografía?

La criptografía (del griego krypto (oculto), y graphos (escribir),

literalmente «escritura oculta»)En Informatica se podria definir como

“la ciencia de aplicar matemáticas complejas para aumentar la seguiridad de las transacciones electronicas”.

Mirando atrás en la historia

Cifrados por sustitución•Se basa en la sustitución de cada

letra por otra letra para disfrazarla pero conservan el orden de los símbolos de texto normal.

•Entre ellos cabe destacar los siguientes:

- algoritmo de César,

- métodos de cifrado monoalfabéticos,

- polialfabéticos..

- Algoritmo de César:

Debe su nombre a que era usado por Julio César para enviar mensajes secretos

Consiste en sumar 3 al número de orden de cada letra. De esta forma a la A le corresponde la D, a la B la E, y así sucesivamente.

Este algoritmo no posee clave, puesto que la transformación siempre es la misma.

Para descifrar basta con restar 3 al número de orden de las letras del criptograma.

• Ejemplo: el mensaje ataque se convertiría en DWDTXH

Cifrados por transposición

• Se basa en la reordenación de las letras de un texto de acuerdo a una palabra clave escogida que no contiene letras repetidas.

• Método:

- Con la clave se numera las columnas, estando la columna 1 bajo la letra de la clave más cercana al inicio del alfabeto, y así sucesivamente.

- El texto normal se escribe horizontalmente en filas.

- El texto cifrado se lee por columnas, comenzando por la columna cuya letra clave es más baja

Ejemplo

Texto normal:

“Este es un ejemplo"

- Clave: 53124

- Texto cifrado:

_nm__eue_t_joEe_pssei_eue

1 2 3 4 5

E s t e

e s u n

e j e m

p l o

Criptografía simétrica

Se caracteriza por tener una sola llave o clave, es decir que se cifra y

descifra con la misma llave

Criptografía Asimétrica

Se caracteriza por que usa dos llaves, una privada y una publica, una para

cifrar y otra para descifrar.

Criptografía en una sola vía

Es aquella en donde solo se cifra, es decir una vez cifrado el texto no se

puede volver al original, a este resultado se le llama un Hash.

Usos de la criptografía

Confidencialidad

Es el uso Principal y el mas antiguo, implica mantener la información en secreto y solo disponible a quienes

deben tenerla.

Autenticación

Se utiliza con el fin de proteger credenciales de acceso y de

corroborar la misma después de haber sido reconocido como un

usuario legitimo.

Mecanismos de no repudio

Consiste en evitar que en un caso determinado se pueda negar en envió

de información.

Verificación de integridad

Se utiliza para verificar que no existe algún tipo de manipulación externa.

Aplicaciones en PHP - Mcrypt

Para ser utilizado la librería libmcrypt debe estar instalada.

Soporta una gran variedad de algoritmos de cifrado como DES, TripleDES, Blowfish (por defecto), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 .

Algunos ejemplos

Algunos ejemplos 2