Código ofuscado


Código ofuscado

Código ofuscado

Merge-arrows.svg
Se ha sugerido que este artículo o sección sea fusionado con Ofuscación).

El Código ofuscado es aquél código que, aunque se tiene el código fuente, ha sido enrevesado específicamente para ocultar su funcionalidad (hacerlo ininteligible).

Algunos tienden más a la ofuscación que otros. C, C++ y Perl son los más citados como fácilmente ofuscables. Las macros de preprocesador son usadas a menudo para crear código complicado de leer enmascarando la gramática y sintaxis estándar del lenguaje del cuerpo principal de código.

Aparte de los lenguajes más conocidos, existen lenguajes de programación esotéricos. Además, también se puede buscar que el código fuente resulte una obra de ascii art. Existen otros programas ofuscados llamados quine que al ejecutarse la salida debe ser el código fuente del programa.

También hay programas ofuscadores que pueden actuar sobre el código fuente, código objeto o ambos para dificultar la ingeniería inversa.

Ejemplos

Un ejemplo simple de ofuscación es llamar a las variables o funciones con palabras reservadas del lenguaje añadiendo algún símbolo

int int_;

Con esta línea definimos una variable de tipo entero.

long int _int(int int_){return int_-int_};

Con esta línea definimos una función con un parámetro entero que devuelve un valor long int, que por otra parte siempre será 0.

_int-_int;

Esto equivale a poner 0.

(_int-_int)!;

Esto equivale a poner 1.

(((!(int_-int_)<<!(int_-int_))<<(!(int_-int_)<<!(int_-int_)))|(!(int_-int_)<<!(int_-int_)));

Esto equivale a poner 10.

Enlaces externos

Obtenido de "C%C3%B3digo ofuscado"

Wikimedia foundation. 2010.

Mira otros diccionarios:

  • Ofuscación — La ofuscación se refiere a encubrir el significado de una comunicación haciéndola más confusa y complicada de interpretar. Contenido 1 Informática 1.1 Ejemplos 2 Otros objetivos 3 Enlaces externos …   Wikipedia Español

  • Descompilador — Saltar a navegación, búsqueda Un descompilador o decompilador es un programa de ordenador que realiza la operación inversa a un compilador. Esto es, traducir código o información de bajo nivel de abstracción (sólo diseñado para ser leído por un… …   Wikipedia Español

  • Perl — Desarrollador(es) Larry Wall www.perl.org Información general Paradigma multiparadigma, funcional, im …   Wikipedia Español

  • Lenguaje de programación — Captura de la microcomputadora Commodore PET 32 mostrando un programa en el lenguaje de programación BASIC, bajo el emulador VICE en una distribución GNU/Linux. Un lenguaje de programación es un idioma artificial diseñado para expresar… …   Wikipedia Español

  • Programación — Saltar a navegación, búsqueda Libros acerca de programación. En informática, la programación es un proceso por el cual se escribe (en un lenguaje de programación), se prueba, se depura y se mantiene el código fuente de un …   Wikipedia Español

  • Protección contra revisiones del núcleo — El núcleo conecta el software al hardware de una computadora. La protección contra revisiones del núcleo, también conocida como Kernel Patch Protection o PatchGuard, consiste en una característica de las ediciones para arquitecturas x64 de… …   Wikipedia Español

  • Google Web Toolkit — Autor Google http://code.google.com/webtoolkit Información general Última versión estable 2.4.0 …   Wikipedia Español

  • Python — Este artículo trata sobre el lenguaje de programación. Para el grupo de humoristas, véase Monty Python. Para otros usos de este término, véase Pitón. Python Desarrol …   Wikipedia Español

  • ROT13 — El ROT13 sustituye cada letra por su pareja, 13 caracteres por delante en el alfabeto. Por ejemplo, HOLA se convierte en UBYN (o, descifrando, UBYN se convierte en HOLA de nuevo) …   Wikipedia Español

  • Linux-libre — Para otros usos de este término, véase Linux (desambiguación). Linux libre Desarrollador Fundación Software Libre Améri …   Wikipedia Español