CIENCIA › DIALOGO CON DANIEL EDUARDO PENAZZI, MATEMATICO DE FAMAF

Proteger el secreto

Cifrar y descifrar información: antiguo como la Historia; los códigos fueron siempre un terreno de lucha entre quienes los hacían y los que buscaban romperlos y descubrir los secretros.

 Por Leonardo Moledo

–¿Quiere presentarse?

–Soy matemático, me doctoré en dinámica topológica y comencé a trabajar en criptografía, en la carrera de Computación. Soy investigador de la Facultad de Matemática, Astronomía y Física de la Universidad Nacional de Córdoba. Hago una mezcla de matemática abstracta y criptografía.

–Cuénteme, o cuente, mejor qué es la criptografía.

–Desde la matemática la criptografía se ocupa de diseñar claves o llaves para cifrar un mensaje o archivo por medio de un algoritmo, que no son más que piezas que se suponen secretas e inviolables, en base a una serie de números. Como es sabido, en informática, la clave sirve para verificar que alguien está autorizado para acceder a un sistema.

–¿Y de qué se ocupa usted? Le cuento que a mí me cuesta horrores acordarme de todas las contraseñas que tengo que usar a diario, en el e-mail, la computadora, el banco...

–Me dedico a criptografía de clave simétrica, que es la más usual. Consiste en que por ejemplo Alicia le envía un mensaje a usted, de forma tal que Eva no la pueda ver. Entonces, Alicia y usted conocen la clave y Eva no. Es la misma clave. Entonces se puede encriptar y enviar algo de manera segura. En general, diseño con mis alumnos algoritmos de encriptamiento. Y últimamente hemos trabajado mucho en funciones de “hash”, que los españoles la traducen como “funciones de picadillo”, que no suena muy lindo.

–¿Qué son?

–Las funciones de hash son algo importante en criptografía. Son las también llamadas digital finger printing. Es la huella dactilar digital. Por ejemplo, frente a archivos muy grandes, en lugar de compararlos completamente, uno mira su huella dactilar, que lo distingue de otros archivos. Es decir, compara sus hashes, que tienen poca información, pero lo distingue de todos los archivos.

–¿Y cómo se los encuentra?

–El diseño de una función de hash consiste en eso. Diseñar una función que toma un archivo de longitud arbitraria y devuelve una huella chiquita de 128 o 256 bits aproximadamente, pero que básicamente lo distingue de otros. Y que en la práctica, computacionalmente sea improbable que uno pueda encontrar dos archivos con el mismo hash. Esas huellas se guardan en tablas de hash.

–La historia de la criptografía demuestra lo difícil que es conservar eternamente un secreto.

–En criptografía moderna, como a lo largo de toda su historia, uno no está frente a una naturaleza indiferente, sino frente a un hipotético adversario inteligente y que se opone a uno. No se puede depender del azar. La idea es que ese adversario no pueda crear otro archivo con el mismo hash. Hay que poder impedir que ese adversario pueda usar ese hash para otro archivo. Para eso los hashes se usan para muchas cosas, cuando se usa un password o clave no se guardan enteros, se hashean, es decir se le saca una huella digital para que no lo puedan copiar. No debería ser fácil reconstruir la password a partir de esa huella, de la misma manera que no se puede reconstruir todo el ADN de una persona conociendo su huella dactilar.

–Se le saca una huella digital...

–Se usan también para las firmas digitales, que asocia la identidad de una persona a un documento. Por ejemplo, para la firma digital de documentos con varios megabytes de información, para evitar el traslado de esos instrumentos, que son muy pesados, y lentos, se hashean los documentos. Y se firma digitalmente el hash.

–¿Es seguro esto? Se debería poder prevenir que si un documento dice que usted me debe mil dólares, usted no debería poder alterarlo y poner que yo le debo un millón.

–Claro, eso se logra en la vida real, mediante las funciones de hash. Pero mire, hasta hace muy poco había un standard, hasta que en el año 2005 una investigadora china diseñó un algoritmo que encontró colisiones, es decir archivos con el mismo hash, cosa que no debería pasar en un lapso de tiempo equivalente a la edad del universo.

–¿Entonces?

–Hay otro standard en Estados Unidos que es el sha 1, se calcula que en muy poco tiempo lo van a poder “atacar”, como se dice en la jerga. Entonces los Estados Unidos llamaron a un concurso internacional para evitar estos ataques y diseñar el sha 3. Nosotros desde Famaf diseñamos un algoritmo, pasamos dos rondas de eliminación y llegamos a quedar entre los 25 finalistas de todo el mundo, fuimos los únicos de Latinoamérica.

–El tamaño del hash es importante entonces...

–Sí, claro, un hash de un bit no serviría para nada. Con 128 bits ya se pueden hacer cosas más complicadas y los algoritmos los usamos como ladrillos...

–¿Ustedes se dedican a construir o a quebrarlas, a cifrar o descifrarlas?

–Nosotros tratamos de construir una buena y revisamos las funciones de otros a ver si encontramos algún error.

–Evidentemente, sólo mantener las claves en secreto, proporciona seguridad. ¿Cómo funciona la criptografía de clave pública?

–Supongamos que estamos en una organización grande

–Ya que estamos supongamos que somos mafiosos por un rato

–Bueno, está bien. Si soy el capo de la mafia, se supone que tengo que tener la clave de todos para poder comunicarme con cada uno y ellos la mía. Ellos deberían tener claves entre sí, que yo no conozca por las dudas por si me agarra la policía. Entonces, se puede utilizar un algoritmo de clave pública. Es así: cada uno tiene dos claves, una privada y una pública. Cada uno publica su clave pública, cualquiera puede mandarle algo encriptado en esa clave, pero sólo él puede leerla. Estos algoritmos son más difíciles que los de clave simétrica y son claves más largas. En general, cierta información de la clave pública se puede deducir, por eso un algoritmo de clave pública hoy no baja de mil bits. En los sistemas de clave pública se utilizan claves que tienen una cierta estructura matemática, ya que deben estar relacionadas entre sí y no ser completamente aleatorias.

–En estas claves se juega con los números primos y el factoreo, ¿no?

–Por ejemplo, las claves públicas usadas en el sistema RSA son el producto de dos números primos. Por eso los sistemas de clave pública requieren mayor longitud de clave que los sistemas simétricos para ofrecer un nivel de seguridad equivalente. En la actualidad, la longitud de clave sugerida para sistemas basados en factorización y logaritmos discretos es de unos 3072 bits para obtener una seguridad equivalente a un sistema de cifrado simétrico de 128 bits. Calcule que tiene 300 cifras.

–¿Y tan difícil es factorizar un número de 300 cifras?

–Sí, por ahora es imposible, pero ya en estos momentos se factorizan números de quinientos bits, esto quiere decir que esas claves ya no sirven.

–¿Y en las firmas digitales cómo es?

–En la firma digital, que es tan demandada en Estados Unidos, se usan algoritmos discretos para firmar el hash. Estos algoritmos discretos son un poco complicados de explicar y de calcular con una calculadora común...

–Todo esto tiene el fragor de una carrera armamentística, realmente...

–Sin dudas, se asemeja bastante.

–¿El universo está encriptado?

–Para que estuviera encriptado, tendríamos que suponer que alguien lo creó y lo encriptó, de manera inteligente...

–O podría ser una encriptación natural...

–En ese caso no sería encriptación, sería ruido.

leonardomoledo.blogspot.com

Compartir: 

Twitter
 

 
CIENCIA
 indice
  • DIALOGO CON DANIEL EDUARDO PENAZZI, MATEMATICO DE FAMAF
    Proteger el secreto
    Por Leonardo Moledo

Logo de Página/12

© 2000-2017 www.pagina12.com.ar | República Argentina | Política de privacidad | Todos los Derechos Reservados

Sitio desarrollado con software libre GNU/Linux.

Logo de Gigared