Estudio y análisis del criptoanálisis lineal y diferencial: técnicas y herramientas

Abstract

Este objetivo principal de este Trabajo Fin de Grado es el estudio de dos herramientas comúnmente usadas a la hora de criptoanalizar y estudiar la robustez de algoritmos de cifrado por bloques, el criptoanálisis diferencial y el criptoanálisis lineal. Además, realizamos también una serie de experimentos en los que tratamos de estudiar la fortaleza de algunos algoritmos de cifrado entrenando diferentes modelos de aprendizaje automático para que traten de emular su funcionamiento o para detectar alguna característica de los textos cifrados con estos algoritmos. El estudio del criptoanálisis diferencial está basado en el artículo Differential cryptanalysis of DESlike cryptosystems de Eli Biham y Adi Shamir, mientras que el estudio del criptoanálisis lineal está basado en el artículo Linear Cryptanalysis Method for DES Cipher de Mitsuru Matsui. Profundizamos en los fundamentos matemáticos de estos ataques, realizando la implementación de ambos en Python y concluyendo con un estudio de la complejidad de la realización de estos ataques en términos de los textos planos y cifrados necesarios para poder obtener la clave de cifrado. Para los experimentos del trabajo hemos tenido como objeto de estudio tres algoritmos de cifrado. El primero es el antiguo estándar simétrico, el DES, ya que a pesar de ser un algoritmo que a día de hoy ya no es seguro (aunque una variante, el Triple DES, se sigue usando) sigue siendo interesante por haber sido el primer cifrado simétrico moderno. El segundo es el actual estándar simétrico, el AES. Es extremadamente robusto y es el algoritmo simétrico de cifrado por bloques establecido por el NIST. El último es el Speck, uno de los algoritmos de cifrado de tipo lightweight (pensado para ejecutarse en hardware de pocos recursos) diseñado por la NSA. Hemos usado diferentes modelos de redes neuronales artifciales para evaluar y comparar la seguridad que nos ofrecen estos tres algoritmos. En resumen, en este trabajo hemos estudiado el criptoanálisis de algunos algoritmos de cifrado simétricos por bloques modernos desde su origen con los artículos de Biham, Shamir y Matsui hasta llegar a los enfoques más recientes en el criptoanálisis, en los que se aplican técnicas de aprendizaje automático para evaluar la fortaleza de este tipo de algoritmos de cifrado de manera directa (intentando aprender características de los textos cifrados, emular el comportamiento del cifrado o del descifrado del algoritmo, etc.) o usadas en combinación con ataques tradicionales mejorando su efectividad

    Similar works

    Full text

    thumbnail-image

    Available Versions