Entrada destacada

Como se celebran los cumpleaños en todo el mundo

  Ayer, en el día en que precisamente cumplía años, me animé a escribir un artículo sobre un tema inusual para mi blog, pero que resulta sum...

martes, 11 de enero de 2022

Ingeniería Inversa: Quien esté libre de pecado, que tire la primera piedra…

 


Se le denomina “Ingeniería Inversa” o “Retroingeniería” al proceso que examina un producto existente para determinar información detallada y especificaciones con el fin de aprender cómo se fabricó y cómo funciona.

Tradicionalmente este concepto ha estado ligado a la competencia desleal, copia y falsificación de productos patentados, pero, como veremos en este artículo, es un proceso muy común en las diversas ramas de la ingeniería (electrónica, mecánica, computacional, etc.), en las cuales no solamente es un método válido, sino también necesario.

Muchas economías en el pasado fueron estigmatizadas por sofisticar su industria inicialmente mediante la ingeniería inversa, para luego pasar a la vanguardia en diversos aspectos. Los ejemplos son múltiples: Japón, Rusia, Corea del Sur, China… ¡y muchos más!

Pero antes, conozcamos a fondo en qué consiste.

Ingeniería inversa, resolver un problema a través de la deconstrucción de una solución

La ingeniería es una de las disciplinas del conocimiento humano más importantes. En esencia, lo que procura es desarrollar una solución a un problema basándose en datos técnicos que le permitan realizar un diseño que termine convirtiéndose en un producto funcional que resuelva dicho problema. Pues la ingeniería inversa es exactamente lo contrario: Resolver ese mismo problema, pero a partir de una tecnología ya existente, cuyo funcionamiento no se conoce y que la misma también sea funcional.

Flujo de la Ingeniería Inversa vs Ingeniería Directa (cortesía de Interempresas.net)

En otras palabras, es desensamblar un artefacto, del cual desconocemos sus componentes y cómo interactúan entre sí, para determinar cómo logra funcionar, mientras en logra documentar todo el proceso y levantar un diseño y las especificaciones técnicas de todos los componentes. Eso aplica tanto para hardware equipos como software.

Como mencionamos anteriormente, se suele asociar la retroingeniería con la fabricación de falsificaciones o robo de secretos industriales; sin embargo, son múltiples los campos de aplicación de la mismo, en su mayoría legítimos y, en ocasiones, imprescindibles.

Ahora toca hablar un poco de historia.

Origen de la ingeniería inversa

La mayoría de los autores ubican en la Segunda Guerra Mundial (WWII)el momento en que se empezó a utilizar la ingeniería inversa. Los grandes avances tecnológicos implementados por los ejércitos enfrentados marcaban la diferencia, tanto en el aire, como en el mar y en tierra. Conocer cómo funcionaban esos armamentos era crucial, ya que permitía, no solamente copiar su diseño, sino que también les daba la posibilidad de construir versiones mejoradas que superaran las prestaciones del original, sino que también facilitaba la determinación de sus puntos débiles para así realizar ataques más eficaces contra el enemigo.

Fue así como aviones, barcos, submarinos, tanque, cañones y fusiles eran objetivos que se procuraban incautar intactos, de forma que los ingenieros militares pudieran desentrañar sus mecanismos y piezas. Lo hicieron los estadounidenses, alemanes, soviéticos y japoneses, sin distinción.

B-29 norteamericano clonado por la URSS como TU-4 (cortesía de Foroactivo.com)

Bien documentado está el caso del avión norteamericano B-29 que bombardeaba a Japón en 1944 y tuvo una avería que obligó al piloto a aterrizar en una base soviética, quienes, necesitados de un bombardero estratégico como ese, incautaron la aeronave y, por órdenes directas de Stalin, fue copiado pieza por pieza. La URSS fue capaz de construir una copia funcional en dos años, bautizándola como Tupolev Tu-4, lo cual generó entonces alarma en los Estados Unidos.

Máquina Enigma alemana desencriptada por Inglaterra y Polonia

También estuvo el caso de la máquina Enigma, con la cual los alemanes y japoneses encriptaban las comunicaciones del alto mando de una forma que tenían desconcertados a los servicios de inteligencia aliados. Sus mensajes no podían ser desencriptados hasta que los polacos capturaron una Enigma, la cual fue entregada a los británicos para realizar ingeniería inversa. Se estima que ese solo acontecimiento permitió acelerar en 2 años la caída de los nazis.

El V-2, misil alemán precursos de los cohetes espaciales

Otro hecho anecdótico fue el relacionado con el desarrollo de cohetes. Los alemanes habían logrado desarrollar su cohete V-2, el primer misil guiado de largo alcance, con el cual causaron grandes daños al Reino Unido. Al caer Hitler en 1945, tanto los Estados Unidos como URSS se dedicaron a una carrera frenética para capturar a los científicos alemanes, recuperar planos y realizar ingeniería inversa a esos cohetes. Los V-2 fueron los precursores de los cohetes espaciales, naciendo en ese momento la Carrera Espacial.

La ingeniería inversa como estrategia de industrialización

Debido a que las nuevas tecnologías se constituyen eventualmente en un bien público, diversos economistas han concluido que los niveles de productividad de las naciones tienden a converger a través del tiempo, principalmente por el hecho de que las naciones más atrasadas son proclives a “capturar” o “copiar” la tecnología de las más avanzadas.

Y durante el paso de las décadas eso fue lo que ocurrió con muchas naciones hoy consideradas desarrolladas. Es así como Estados Unidos, Alemania y Francia logran elevar su nivel de industrialización con respecto a Inglaterra durante el siglo XIX y Japón, Corea del Sur y China hicieron lo propio con respecto a Estados Unidos después de la WWII.

Es particularmente interesante el caso de los países del Este asiático. Después de quedar empobrecidos y devastados por diversos conflictos bélicos, tanto Japón, como Corea del Sur y China, con intensidad y ritmos diferentes, impulsaron su desarrollo económico e industrial utilizando al principio la ingeniería inversa como estrategia.

El progreso de Japón: Hiroshima en 1945 y 2020 (cortesía de Boredpanda.es)

En el caso de Japón, se destaca que fue una de las primeras naciones en adoptar la ingeniería inversa como parte de su plan para transformar su economía e impulsar la innovación después de ser derrotada en la WWII. Todo el proceso fue planificado y supervisado por el Ministerio de Comercio Internacional e Industria (MITI), creado en 1949, que junto a políticas proteccionistas combinadas con la retroingeniería lograron que la industria japonesa prosperara. Es ampliamente conocida la anécdota de que en la década de los 60s y 70s, las ferias industriales de Estados Unidos y Europa tenían prohibido a los visitantes japoneses que portaran cámaras fotográficas o videograbadoras, por temor a los plagios. Sin dudas, la estrategia fue tan efectiva que hoy Japón lidera globalmente el segmento automovilístico y robótico, y su economía es la 3ra más grande del mundo.

Desarrollo de Corea del Sur -Seúl en 1950 y 2020- (cortesía de aprendercoreano.com)

Corea del Sur es otro ejemplo de país que encontró en la ingeniería inversa una vía para acelerar su desarrollo industrial y tecnológico. Resulta que tras la Guerra de Corea (1950-1953), ambos lados del Paralelo 38 quedaron devastados. El lado sur, que después del conflicto quedó bajo la administración de los Estados Unidos,  era tan pobre que incluso naciones latinoamericanas, como fue el caso de República Dominicana, donaron recursos para paliar el hambre de su población[1].  Incluso, ese país ha sido reconocido por Naciones Unidas como un caso excepcional de un receptor de donaciones de alimentos que en poco más de 50 años se ha convertido en uno de los principales donantes[2]. ¿Cómo lograron tan impresionante avance? Aunque fueron varios factores, sin dudas uno de los más importantes fue el lanzamiento del Sistema Nacional de Innovación (NIS) en la década de los 60s, el cual priorizaba, entre otras cosas, la obtención de tecnología a través de la tecnología inversa. Hoy Corea del Sur es la 10ma economía mundial, con fuerte liderazgo en la industria automotriz, telefonía móvil, televisores y electrónica en general.

Evolución de China -Shanghai en 1990 y 2020-, (cortesía de refugioantiaereo.com)

La República Popular China cuando surgió como nación en 1949, era un vasto territorio superpoblado (más de 500 millones de habitantes, el 35% de la población mundial de entonces) y sumida en la más absoluta pobreza y diezmada por largos años de ocupación japonesa y guerras civiles. Ante tales lastres, el desarrollo económico le tomó más tiempo al gigante asiático que a Japón y Corea, y no fue hasta 1978 con la implementación de las reformas económicas que China empezó a incrementar su PIB de forma geométrica. Parte de su éxito económico ha sido motivado por la aplicación de la ingeniería inversa a gran escala, muchas veces utilizada para la producción de mercancía falsificada, incluyendo software, equipos tecnológicos y hasta prendas de vestir. Esta situación ha colocado a China en más de una ocasión en el banquillo de los acusados ante la Organización Mundial del Comercio (OMC) por violación de derechos de propiedad intelectual. Según diversos estudios, entre el 15-20% de la producción de China consiste en falsificaciones y representa un 8% de su PIB (MIT CIS, 2014). Pero, como veremos más adelante, China no es el único país que se hecho de la vista gorda ante la violación de la propiedad intelectual por parte de sus industrias. En todo caso, la estrategia china funcionó: China hoy es la 2da economía del mundo y la mayor potencia mercantil existente.

Ingeniería inversa como semilla de la innovación, una práctica común en la industria tecnológica 

La retroingeniería ha demostrado ser un “driver” eficaz para la innovación, en doble vía. Lo es cuando se utiliza para conocer cómo funciona un “mecanismo” y en el proceso se incorporan mejoras a los componentes y procesos para no violar las patentes. Pero también empuja al fabricante que está a la vanguardia y cuyos productos son “copiados” para que rápidamente produzca mejoras o innovaciones contra las cuales sus “copycats” no podrán competir.

Por eso es que la ingeniería inversa explica una buena parte del boom de la industrialización en las últimas décadas, especialmente en materia tecnológica. Las innovaciones se multiplican de forma exponencial a una gran rapidez y no es solamente porque cada fabricante tiene buenos ingenieros y avanzadas plantas de fabricación, es porque de forma acelerada y precisa son capaces de deducir cómo la competencia desarrollo tal o cual feature en su producto, y todo eso sin tener un diseño o plano a mano.

A continuación, detallaremos diversos casos sonoros que a través del tiempo han puesto en evidencia cómo “respetables” industrias de todo el mundo han hecho acopio de la ingeniería inversa para cerrar brechas con la competencia:

  • Atari versus Nintendo: En la década de los 80s, en momentos en que Atari (la empresa estadounidense que en 1972 inventó los videojuegos) estaba a punto de desaparecer, la japonesa Nintendo ya dominaba ese mercado con su consola NES. Atari llegó en 1985 a un acuerdo con Nintendo para distribuir cintas de juego compatibles con NES, bajo el nombre comercial de TENGEN, pero bajo las estrictas restricciones de Nintendo, que limitaba precio, cantidad y variedad de los juegos a producir por Atari y se aseguraba de ello insertando en las cintas un chip sin el cual las consolas no las reconocía. Es así que, la empresa estadounidense decidió hacer ingeniería inversa al chip y obtuvo ilegalmente el código fuente del mismo para producir sus propias cintas de juego compatibles con NES. La empresa japonesa respondió con una demanda multimillonaria y, aunque la justicia de Estados Unidos falló a favor de Nintendo, determinó que Atari hizo un “uso justo” de la ingeniería inversa para “discernir ideas que no pueden ser protegidas”. Con ese fallo quedó legalizada la retroingeniería de software en los Estados Unidos[3].
    Cartuchos Tengen de Atari para las consolas Nintendo (cortesía de thedoteaters.com)

  • Las primeras calculadoras electrónicas: En 1961 salió al mercado la primera calculadora electrónica, llamada ANITA, de la empresa inglesa Bell Punch, con un precio cercano a los US$4000. Ese lanzamiento conmocionó el mercado y de inmediato varias empresas japonesas enviaron emisarios a Inglaterra para hacerse con un ejemplar. El objetivo era el mismo: realizar ingeniería inversa al equipo para fabricar una calculadora electrónica nipona. En apenas 3 años, en 1964, casi simultáneamente tanto Casio como Sharp sacaron sus propias versiones, con precios que oscilaban entre US$1500 y US$2500. Las calculadoras japonesas en muy poco tiempo empezaron a superar en calidad y funcionalidades a las inglesas y ya en 1966 la empresa Busicom por US$800 ofrecía una calculadora con memoria integrada. Los japoneses supieron aprovechar la retroingeniería para actualizar su industria y estar a la vanguardia a través de la innovación[4].
    Calculadora Anita MK 8

  • Unix y Windows: sus usuarios se acercan mediante el software libre: En la década de los 90s se ejecutaron dos proyectos de software que, mediante ingeniería inversa, lograron facilitarle la vida a los usuarios y programadores de dos sistemas operativos completamente incompatibles: Unix y Windows. Uno de ellos fue WINE (WINdows Emulator), que permitió correr sobre Unix programas diseñados para DOS y Windows. Otro fue el proyecto Samba, que permitió compartir archivos entre ambas plataformas.
    Emulador de Windows (WINE)

  • Apple versus Samsung: Los dos gigantes de los teléfonos inteligentes, a pesar de tener una relación proveedor-cliente (Samsung provee las pantallas y algunos chips del Iphone), se enfrascaron en una demanda en 2011, donde Apple reclamaba que Samsung había copiado el interfaz de usuario del Iphone y el Ipad, mientras que los coreanos demandaron a los norteamericanos por violar sus patentes de conectividad inalámbrica. Aunque los jueces dieron la razón a Apple solamente con el Iphone, rechazaron el caso para el Ipad, al tiempo que denegaban la demanda de Samsung contra Apple. Samsung fue condenada a pagar US$548 millones de dólares de indemnización. Aunque, tal y como determinó el fallo de la corte, Samsung copió el diseño original del Iphone para su modelo Galaxy, gracias a sus mejores e innovaciones aplicadas se convirtió en el móvil más popular del mundo.
    Apple versus Samsung

  • Todo el mundo contra IBM: En 1981 la empresa IBM se convirtió en la dueña absoluta del mercado de las computadoras personales al lanzar la IBM PC y pronto su producto se convirtió en un objetivo de clonación por diferentes fabricantes. Aunque IBM utilizaba componentes convencionales, había uno que hacía su PC única: el BIOS (Sistema Básico de Entrada y Salida, en inglés), de cuyo código era propietaria y era donde donde se almacenaba toda la programación para "gobernar" todos los componentes. Dos empresas siguieron caminos separados para "emular" el BIOS de IBM sin infringir su patente, llegando ambas a tener éxito: COMPAQ y Phoenix Technologies. La primera, llegó a desbancar a la IBM con sus productos 100% compatibles con el software diseñado para la IBM PC (Compaq Portable Computer fue el primero de ellos) y, la segunda,  desarrolló un BIOS también 100% compatible el cual licenciaban a los fabricantes de equipos clónicos. Ambas empresas utilizaron ingeniería inversa para desarrollar su propia BIOS sobre la base de las funcionalidades que ejecutaba la programación de IBM. Al final, el gran ganador terminó siendo un tercero: Microsoft, cuyo sistema operativo terminó imponiéndose en todas las computadoras personales basadas en el BIOS de IBM.

IBM PC


En el ámbito militar, además de los casos referidos al principio, se han dado múltiples ejemplos de ingeniería inversa, donde diversos ejércitos han copiado y hasta mejorado armas enemigas como forma de equilibrar la balanza, pero serán tema de otro artículo.

Otras ventajas de la ingeniería inversa

Pero, muy lejos de lo que pueda pensarse, la retroingeniería no tiene por objeto únicamente el “robo” de propiedad intelectual, desarrollar falsificaciones o realizar espionaje. De hecho, es una metodología imprescindible para muchos otros propósitos. Veamos sus principales ventajas:

  • Permite recuperar información perdida, especialmente cuando se trata de documentación o diseños perdidos, como ocurre con los Sistemas Legacy[5] o equipos que ya se han dejado de producir.
  • Detectar anomalías en el diseño.
  • Identificar componentes reutilizables en nuevos modelos, aumentando la productividad y reduciendo costes.
  • Realizar mejoras al desempeño de un producto.
  • Analizar si un producto de la competencia infringe alguna patente o propiedad intelectual.
  • Reparar un artículo cuya documentación no está disponible.
  • Analizar fallas en el funcionamiento de un producto.
  • Prevenir el cibercrimen (cuando se trata de software).
  • Reutilizar productos descartados para aprovecharlos en otros fines.
  • Diseñar interfaces entre dos sistemas no compatibles.

En fin, la ingeniería inversa es uno de los combustibles con los cuales se impulsa hoy la innovación y la competencia. Como vimos anteriormente, la apropiación de tecnología producida por terceros es un proceso natural de la evolución de las sociedades. Por eso De Long (1987) y Kalmanovitz (2007) hablaban de la “convergencia de la productividad” mediante la adopción tecnológica. Desde la invención de la rueda hasta las baterías de polímeros, la tecnología es asimilada, replicada y aprovechada de forma cada vez más extendida, sin importar quién la diseñó o patentó. 

En otras palabras, la tecnología, una vez implementada, pasa a formar parte del acervo o patrimonio científico y cultural de toda la especie humana, no importan los obstáculos que existan o las maniobras político/legales que se realicen para retenerla de forma exclusiva. Ya sea por la vía del comercio, por  compra de patentes o por ingeniería inversa, el uso y dominio de dicha tecnología se propagará. 

Por lo que, más que un proceso vinculado a una práctica negativa, la ingeniería inversa es en sí misma un mecanismo de innovación, de construcción de nuevo conocimiento y de aprovechamiento de los recursos disponibles. Al final, de eso es que se trata la evolución humana.

 

www.reysonl.blogspot.com

 

REFERENCIAS

Álvarez Estrada, J. E. (2012), “Ingeniería Inversa y Criptoanálisis”. Documento accedido en la dirección: https://www.studocu.com/pe/document/universidad-cesar-vallejo/ingenieria-de-software/ingenieria-inversa-manual-de-ingenieria-inversa/13322005

BCN (2010): “Las claves de la sorprendente innovación coreana”. Asia Pacífico/Observatorio Parlamentario. Biblioteca del Congreso Nacional de Chile.

De Long, J.B. (1987): "Have Productivity Levels Converged? Productivity Growth, Convergence, and Welfare in the Very Long Run," NBER Working Papers 2419, National Bureau of Economic Research, Inc.

Díaz, L.E. (2011): "Propuesta de Integración y Fortalecimiento Tecnológico LABORATORIO DE INGENIERIA INVERSA - Escáner 3D”. Pereira : ATE GROUP, 2011

Kalmanovitz, S. (2007): "Colombia en las dos fases de globalización," Revista de Economía Institucional, Universidad Externado de Colombia - Facultad de Economía, vol. 9(17), pages 43-74, Julio-Diciembre.

MIT CIS (2014): “Publicacions, Foreign Policy Index: China”. MIT Center of International Studies

Rodríguez Asien, E. (2008):  “La recuperación económica de Japón y la Revolución Tecnológicaen Observatorio de la Economía y la Sociedad del Japón, enero 2008.

 

No hay comentarios:

Publicar un comentario

Tus comentarios son bienvenidos!