¿Qué es un ofuscador?
Un ofuscador es un proceso o dispositivo que está destinado a hacer que un programa sea más difícil de entender. En general, el enfoque del ofuscador es tomar un programa que sea relativamente sencillo y hacer que el código subyacente sea más complejo. Si bien no es probable que el usuario final note una diferencia en la forma en que se ejecuta el código, la función del ofuscador hace que sea más difícil hackear el código y secuestrar el programa. Desde esta perspectiva, el uso de este tipo de herramienta puede verse como una medida de seguridad.
El nombre del dispositivo o proceso se toma prestado de la palabra "ofuscar", que se refiere a complicar una presentación verbal en un intento de confundir o desconcertarse. De la misma manera, el ofuscador busca hacer el proceso de comprender el código algo desconcertante. Esto esencialmente hace que sea más difícil para el código socavado, ya que la carne real del código está tan profundamente enterrada o ofuscada que es difícil extraer las porciones de trabajo esenciales del código.
Hay seveLenguajes del programa RAL que tienden a responder muy bien al proceso de ofuscación. C ++ se encuentra entre los idiomas más populares y hace posible emplear a un ofuscador con relativa facilidad sin corromper la función del código base. De la misma manera, C y Perl también tienden a funcionar bien con el uso de la ofuscación, lo que hace que sea relativamente fácil agregar un elemento de protección a cualquier programación escrita en estos tres idiomas.
Si bien el propósito de un ofuscador es dificultar intencionalmente el código de desentrañar, también es necesario asegurarse de que las personas que están autorizadas para trabajar con la programación pueden hacerlo sin ser obstaculizadas por el proceso de ofuscación. Con este fin, es posible emplear varias técnicas para trabajar a través de las complicaciones adicionales y llegar al código base. Este proceso se conoce como ingeniería inversa, ya que implica esencialmente deshacer el complementoiones para ver la imagen real. El corte del programa es un ejemplo de técnicas de ingeniería inversa utilizadas para desobfuscar un conjunto de código.
Si bien el ofuscador proporciona cierto grado de protección, es importante darse cuenta de que este proceso no debería ser el único medio de seguridad empleado para proteger la programación. También se deben emplear otras estrategias de seguridad para garantizar que la red no reciba inserciones malévolas y se les permite llegar a los códigos existentes.