¿Puede la inteligencia artificial frenar a los hackers?
La inteligencia artificial tiene infinitas aplicaciones, pero una de las más interesantes tiene que ver con la mejora en la seguridad que aportaría, con respecto al software tradicional. Informáticos de la Universidad de Boston han desarrollado una Inteligencia Artificial llamada DeepCode, especializada en localizar los fallos en el software que los ciberdelincuentes utilizan para colarse en los sistemas. ¿Puede la inteligencia artificial frenar a los hackers?
Hace cuatro años, el profesor de la Universidad de Boston, Peter Chin, estaba dando una clase sobre machine learning. Explicaba a sus alumnos cómo científicos de Google en la Universidad de Stanford habían creado una red neural que aprendía a identificar patrones comunes en millones de vídeos, para identificar gatos en YouTube.
Al profesor Chin se le ocurrió que, si era capaz de representar el código de los programas de forma visual, igual que los vídeos de gatos, una inteligencia artificial podría identificar los errores de código que usan los hackers para entrar en los sistemas.
Peter Chin conocía la existencia de una biblioteca de más de 10.000 errores comunes de código llamada CWE, que mantiene el Instituto Nacional de Estándares y Tecnología norteamericano.
Tras obtener una subvención de DARPA, la agencia militar que creó Internet, Peter Chin y su equipo iniciaron la labor de convertir esos 10.000 errores de código en diagramas de flujo, para crear una representación visual del error, que una IA buscaría en el código de los programas.
Así nació DeepCode, una inteligencia artificial que utiliza el machine learning para encontrar los errores en el código que usan los hackers. Durante el desarrollo se dieron cuenta de que hacia falta mucho más que crear flujos de datos de los errores para que la IA pudiera comparar, y aprender a localizarlos. Han añadido un analizador sintáctico (un parser) al código, así como redes neurales que se usan para procesar el lenguaje natural.
DeepCode puede analizar millones de líneas de código por segundo y, tras unas semanas de entrenamiento, es capaz de localizar fallos en dicho código que usan los hackers para colarse en los sistemas.
El siguiente objetivo será corregirlos, pero admiten que eso es más difícil, porque para corregir una bug hace falta conocer todo el programa que lo contiene en su conjunto, y en muchos aspectos un programa es como un relato escrito por el programador, y cada uno tiene su estilo y su forma de hacer las cosas.
Pero el primer paso (encontrar bugs) ya está dado, y todo apunta a que en los próximos años la IA jugará un papel esencia en la defensa de Internet. Aunque, visto desde el otro bando, la perspectiva de una inteligencia artificial hacker, también puede ser muy inquietante...
Otros artículos interesantes:
- 10 usos de la inteligencia artificial que nadie se hubiera imaginado
- 5 peligros de la inteligencia artificial en los que quizás no hayamos pensado
- Silla ergonómica Sihoo Doro S300: la tecnología más avanzada al servicio del mejor diseño y la máxima comodidad
Descubre más sobre Juan Antonio Pascual Estapé, autor/a de este artículo.
Conoce cómo trabajamos en Computerhoy.