Una forma de no inventar la rueda | Noticias de santander, colombia y el Mundo

Viernes 19 de Septiembre de 2014
Publicidad
Publicidad
Tecnología
Domingo 05 de Junio de 2011 - 12:00 AM

Una forma de no inventar la rueda

Son muchos los productos de software que a diario consumimos, tal es el caso del Microsoft Office, Winzip, messenger, clientes de correo, clientes de descargas, en fin un cantidad no definida de programas que están protegidos bajo licencias de derechos de autor y que muchos de los usuarios del hogar no tienen legalizados.

La ingeniería inversa, según la definición de Wikipedia tiene como objetivo "obtener información o un diseño a partir de un producto accesible al público, con el fin de determinar de qué está hecho, qué lo hace funcionar y cómo fue fabricado",  en el caso del software se denomina ingeniería inversa a la actividad que se ocupa de descubrir cómo funciona un programa o características de cuyo código fuente no se dispone, hasta el punto de poder modificar ese código.

Imagine por un segundo aplicar ingeniería inversa a un programa o aplicación con el objetivo de saber cómo funciona para de esta forma crear una versión mejorada del mismo, esto sin infringir derechos de autor o patentes registradas.  En algunos países la ingeniería inversa está totalmente protegida y aprobada por las leyes reguladoras.

La ingeniería inversa se puede aplicar a cualquier dispositivo mecánico o electrónico, un software de computador, etc.,  para analizar su funcionamiento en detalle, generalmente para intentar crear un dispositivo o programa que haga la misma o similar tarea sin copiar la original. La ingeniería inversa en muy aplicada en dispositivos electrónicos tal es caso de los iPhone, del que algunos fabricantes chinos tratan de imitar características y funcionalidades creando productos muy semejantes a los originales.  En algunos casos los productos son 100% funcionales, casi como el "original", en otros casos son un completo fracaso.

Técnicas de ingeniería inversa de software

En software, la ingeniería inversa puede llevarse a cabo empleando algunos de los siguientes métodos:

- Desensamblar una aplicación empleando un desensamblador, este tema puede sonar bastante técnico y no vamos a profundizar en él, en términos más "cristianos", desensamblar una aplicación consiste en convertir el código e instrucciones en un lenguaje ensamblador, este último ya es legible y entendible para los humanos. Una vez se tiene este código se pueden crear programas o aplicaciones que hacen técnicamente lo mismo.  Existen herramientas usadas por los programadores que apoyan y facilitan el proceso de desensamble de una aplicación.

- Descompilar una aplicación empleando un descompilador: proceso que intenta recrear el código fuente en un lenguaje de alto nivel de un programa compilado.  Esta técnica resulta más avanzada ya que revela en un lenguaje de alto nivel cuáles son las funciones utilizadas para la realización de una tarea o un proceso determinado.  Al igual que la anterior, existe una gran cantidad de aplicaciones o programas con la capacidad de descompilar un programa cualquiera.  Los programadores son los mayores beneficiados en el uso de estas técnicas.

- Por último el  análisis a través de la observación del intercambio de información, es una técnica usada especialmente para analizar protocolos y controladores de dispositivos.

Skype, un ejemplo real de ingeniería inversa

Días después de que Microsoft anunciara la compra de Skype un grupo de hackers se ha formado con el único objetivo de hacer ingeniería inversa a los protocolos y funcionamiento de la famosa red de Voz y Video Skype, enfocados principalmente en crear un clon de Código Libre.

El proceso ya ha tenido bastante éxito, de hecho ya los programas más curiosos pueden descargar el código fuente descubierto e implementado por Skype. Esto implica algo muy importante: próximamente podemos tener un cliente Skype completamente gratis fuera del control del gigante Microsoft.

Los que deseen echar un vistazo al proyecto Skype free pueden visitar: http://skype-open-source.blogspot.com/

Fuentes: cnx.org wikkipedia.com

Publicada por
ING. ALEXANDER DELGADO
Publicidad

Zona Comercial

Publicidad
Todos los derechos reservados Galvis Ramirez & Cia S.A. - 2014 - Bucaramanga - Colombia. Prohibida su reproducción total o parcial, sin autorización escrita de su titular. Términos y condiciones