Segundas partes nunca fueron buenas. Ésta tampoco.

domingo, 6 de julio de 2008

Seguridad con criptografía asimétrica

En la universidad cuando me enseñaron nociones básicas sobre criptografía la única pega que le pusieron a la criptografía asimétrica es que es computacionalmente más ineficiente que la criptografía simétrica. Ahora estoy leyendo el libro Applied Cryptography de Bruce Schneier y en él Schneier remarca una pega adicional que a mi me ha parecido más importante: la criptografía asimétrica es más sensible a ataques de texto cifrado porque la clave de cifrado es pública.

Los ataques de texto cifrado consisten en que Eve tiene acceso a las comunicaciones cifradas entre Alice y Bob. Eve entonces puede cifrar mensajes de prueba con las claves públicas de Alice y Bob, y comparar éstos con los mensajes cifrados que ha visto por la red. Si logra reproducir algún mensaje cifrado que ha visto por la red Eve habrá dado con el mensaje original que se han intercambiado Alice y Bob.

Este tipo de ataque que un principio es complicado de explotar en algunos escenarios puede que no lo sea tanto. Eve podría saber que Alice quiere comprar un artículo a Bob. Incluso podría haber visto un mensaje sin cifrar de Alice solicitándole el precio de un portatil a Bob. Bob posteriormente habría respondido con un mensaje cifrado. Eve entonces podría realizar un ataque cifrando mensajes de prueba con diferentes precios (999, 1000, 1001, ...) con la clave pública de Alice hasta dar con el mensaje cifrado idéntico al intercambiado entre Bob y Alice. Entonces habría dado con el precio del portátil.

¿Cómo se podría evitar este ataque? Antes de cifrar el mensaje se podría añadir al mensaje original un texto aleatorio y cifrar posteriormente el mensaje. De esta forma Bob ha aleatorizado, ha aumentado la entropía de su mensaje y las ataques de texto cifrado ya requerirán mucho más potencia.

No hay comentarios: