Ofuscar código, es considerado un antipatrón, ahora bien, los desarrolladores pueden usarlo de manera intencionada, para aumentar la seguridad de una aplicación dificultando la lectura de este código o de manera malintencionada.

La ofuscación se refiere a encubrir el significado de una comunicación haciéndola más confusa y complicada de interpretar.

El programador Andy Sloane, en 2006, creo un pequeño programa, cuyo aspecto en un editor de texto es un donut. Esta imagen al verla un usuario normal, lo que ve o piensa sobre ese código es “una imagen  con texto dentro”.

En este caso el desarrollador Andy Sloane, dibuja un donut en 3D con caracteres ASCII que además está animado y gira sobre un eje.

Está técnica no deja de ser un antipatrón de desarrollo, aun así se puede usar para esconder el código que hay detrás de una aplicación, vamos a comentar algunos ejemplos:

  • Se puede ofuscar el código para que sea menos legible para aquel que intente manipular ese código con mala intención.
  • Un segundo motivo por el cual los desarrolladores intentan ofuscar código, es para incrustar un código malicioso dentro de algún tipo de software, para de esta manera conseguir su fin dejar una “puerta trasera” por la cual después poder acceder al software o a los datos de esa aplicación, o simplemente acceder directamente a algunos datos.
  • Otro motivo por el cual se usa la ofuscación puede ser para la “protección de la propiedad intelectual”, es decir, para que el usuario que revise ese código no pueda aprovecharse o servirse de ese desarrollo.
  • También existe una técnica conocida como minificación, similar o englobada dentro a la ofuscación, su finalidad es reducir el número de bytes que ocupa ese archivo.
  • El último motivo de ofuscación puede ser por diversión, como el ejemplo que hemos comentado de Andy Sloane.

Desde CINDE, nos preocupamos por nuestros clientes, teniendo en cuenta estos detalles, para de esta manera aumentar la seguridad de una aplicación y hacerla más robusta.