Nuestra esencia de investigadores, siempre nos ha llevado a intentar descubrir muchas cosas que los fabricantes no dejan al alcance del usuario básico. Por ejemplo, siempre es interesante mirar dentro de un ordenador y desarmar partes como un disco duro, una unidad de reproducción–grabación de DVD y hasta un simple “Pen Drive”. Es nuestro, podemos hacerlo. Sin embargo, existe un límite técnico y/o físico que en ocasiones, nos impide llegar más allá (en realidad, a donde quisiéramos llegar). Si pudiéramos ver cómo construye los circuitos integrados nuestra competencia, podríamos descubrir sus secretos y mejorar el producto. De igual modo, si pudiéramos derribar las barreras de los “Code Protect” en un microcontrolador. Por supuesto, la Ingeniería Inversa nos permite hacer estos trabajos, pero ¿es legal hacerlo? Sí, es legal.
Como si se tratara (o tratase) del típico comentario de una película ordinaria, podemos decir que en el ámbito del diseño electrónico existe una delgada línea que separa la actividad legal del delito liso y llano. Como te mencionamos antes, estamos hablando de Ingeniería Inversa. Iniciando el artículo con munición gruesa, vamos a citar el ejemplo de los códigos que traen los microcontroladores (del fabricante que desees imaginar), que suelen ser celosamente protegidos por los desarrolladores de firmware y las empresas que los contratan. Por supuesto, se trata de un trabajo personal, original y por el que un programador como tú se pasó noches enteras tratando de hacer funcionar. Además, por ése código existió una empresa que invirtió dinero pagándote un sueldo, un porcentaje de las ventas del producto o simplemente una retribución simbólica en agradecimiento a tu esfuerzo y trabajo. ¿Tú creías que todo esto queda guardado bajo un secreto absoluto y que nadie hará nada por obtener ese valioso trabajo? Si esa era tu creencia, te contamos que existen empresas que se dedican en forma exclusiva a extraer el firmware de cualquier microcontrolador. ¿Es legal? Por supuesto, es legal. ¿Tú crees que te están robando? Debieras mejorar tus medidas de seguridad en ese caso. ¿Has leído lo que expresa Microchip en las hojas de datos de sus microcontroladores? Esto:
Y no sólo expresa su vulnerabilidad en ese apartado, que podrás encontrar en cualquier hoja de datos de sus microcontroladores, sino que además, involucra a todos los demás fabricantes en esta hipotética impotencia, ante la posible invasión sobre los datos “protegidos”. Luego aclara que están en constante evolución, en busca de mejorar el producto y que el fruto de tus esfuerzos está protegido por el Acta del DMC (¿?). Es decir, tienes derecho a expresar tus quejas, pero el despojo ya fue perpetrado. Antes de ingresar en temas de legalidad, podemos instalar la siguiente pregunta: Esta acción de obtener el firmware de un microcontrolador ¿es posible? Lamentamos tu desilusión segura, pero debemos decirte, no sólo que sí, sino que además existe toda una industria detrás de esta actividad, que es muy redituable por cierto. Y si lo analizas desde el punto de vista empresarial, está bien que así sea. Imagina este escenario: descubres que tu programador estrella, antes de mudarse a otra compañía, tuvo la mala actitud de borrar y/o llevarse consigo el firmware de algunos de tus productos. Si tuvo posibilidades de hacer eso, ¿qué podrías hacer, además de comenzar a escribir código nuevamente o contratar personal para intentar recuperar información? ¿De qué lugar? ¿Acaso los códigos no están protegidos contra lectura? ¿Y si en lugar de un hecho vandálico sufres un desastre natural y pierdes tu empresa completa? (Tailandia y sus fábricas de discos duros) ¿Cómo recuperas tanta información perdida? Exacto, mediante la Ingeniería Inversa.
Allí tienes solo dos ejemplos de empresas que se dedican a eso. A extraer el firmware de los microcontroladores, es decir, ¿gente en quien confiar?, ¿o gente que está cometiendo un delito? Por supuesto que esto no es un servicio gratuito y/o que se justifique para construir en nuestro taller un sencillo juego de luces o un instrumento de medición. Hablemos de miles de Euros, donde la pérdida de información (o necesidad de ella) justifique la inversión. Por ejemplo, la compañía “A” fabrica centrales meteorológicas y descubre que la compañía “B” también lo hace, con mejores resultados, con mayor éxito comercial gracias a mayores prestaciones. Aunque no lo creas ético, la compañía “A” comprará un producto de la compañía “B” (como lo haría un cliente común), pagará por el trabajo de esta gente (la Ingeniería Inversa) y estudiará el modo de mejorar sus productos (incluso superar a la compañía “B”) hasta lograr un mejor posicionamiento en el mercado. ¿Hasta aquí hay delito? No, aún no hay delito. Todavía estamos transitando la delgada línea que separa dos mundos bien definidos. Pero salgamos del Firmware y entremos en el mundo del Hardware: ¿Te interesa ver como es internamente el A5 de Apple, para aprender como construir tu propio procesador? ¿O prefieres un Tegra 3 de Nvidia? Muy sencillo, observa estas imágenes:
Esta empresa se encarga de descubrir las arquitecturas de construcción de los procesadores, fotografiarlos en detalle y hasta armar diferentes opciones para que puedas “comprar” las imágenes que ellos obtienen. ¿Ellos comenten delito? No. Ellos juegan a romper un juguete y tomarle fotografías, mientras que tú decides comprarlas, aunque si tienes suerte, en algunos casos te las regalan. Así como destapas tu ordenador, como desarmas el motor de tu automóvil, como partes un LED y observas el silicio. ¿Acaso nunca has cortado la tapa de un transistor de encapsulado TO-3 para ver que hay dentro? Ellos hacen lo mismo y no es delito, al igual que no era lo que tú hacías, o haces al abrir un capacitor electrolítico al destruirlo, desenrollar las placas y el papel impregnado de electrolito. ¿Sabes porqué? Porque cuando compras el producto, no firmas un documento legal que te impida hacerlo.
Finalmente: ¿Dónde comienza la ilegalidad? ¿Cuál es el límite? ¿Cuál es la línea fronteriza? Para algunos especialistas en temas jurídicos ya estaríamos todos presos, para otros, no debiera existir ningún límite y todo debiera ser de libre disponibilidad, sin embrago, el sentido común suele ser siempre el que determina donde terminan los derechos y comienzan las obligaciones. Ese punto está centrado en la violación de patentes. Una empresa puede clonarte millones de PCB sin importarle más que su negocio, sin embargo, mientras el diseño original sea de tu propiedad y la patente esté registrada a tu nombre, no hay problemas. Recuperar el código de un microcontrolador protegido o descubrir la arquitectura de un procesador son actividades legales que se pueden prestar como servicios a terceros bajo sumas de dinero acordadas entre partes. Lo que es delito, es apoderarse del desarrollo y/o diseño de otro y clonarlo en cantidades industriales para su venta. Allí estarías violando patentes de fabricación que amparan al dueño original. Los enredos legales determinarán si la patente tiene jurisdicción sobre Zambia, Eslovenia o Angola, pero eso es otra historia que tus abogados se encargarán de escribir.
Mientras tanto, debes tener siempre en cuenta que la Ingeniería Inversa es un negocio muy lucrativo en el mundo electrónico y que si no tienes patentes que protejan tu desarrollo, cualquiera podrá mañana hacerse millonario con tu esfuerzo, sin que puedas impedirlo. ¿Tú piensas diferente? Aquí tienes una tribuna de opinión para expresar tus ideas, que seguramente, enriquecerán este debate que siempre es polémico, que siempre será diferente (según el lado en el que te encuentres) y que siempre ha traído una falsa tranquilidad a los desarrolladores, creyendo que sus códigos estaban protegidos.