El diseño de sala limpia (también conocido como técnica de la pared china ) es el método de copiar un diseño mediante ingeniería inversa y luego recrearlo sin infringir ninguno de los derechos de autor asociados con el diseño original. El diseño de sala limpia es útil como defensa contra la infracción de derechos de autor porque se basa en la creación independiente. Sin embargo, debido a que la invención independiente no es una defensa contra las patentes , los diseños de salas blancas generalmente no pueden usarse para eludir las restricciones de patentes.
El término implica que el equipo de diseño trabaja en un entorno "limpio" o demostrablemente no contaminado por ningún conocimiento de las técnicas patentadas utilizadas por el competidor.
Por lo general, el diseño de una sala limpia se realiza haciendo que alguien examine el sistema que se va a reimplementar y que esta persona escriba una especificación. Luego, un abogado revisa esta especificación para garantizar que no se incluya ningún material protegido por derechos de autor. Luego, la especificación es implementada por un equipo sin conexión con los examinadores originales.
Phoenix Technologies vendió su implementación de sala limpia del BIOS compatible con IBM a varios fabricantes de clones de PC. [1] [2]
Varias otras empresas de clonación de PC, incluidas Corona Data Systems , Eagle Computer y Handwell Corporation, fueron litigadas por IBM por infracción de derechos de autor y se vieron obligadas a volver a implementar su BIOS de una manera que no infringiera los derechos de autor de IBM. [3] [4] Sin embargo, el precedente legal de que el firmware esté protegido por derechos de autor no se había establecido hasta Apple Computer, Inc. contra Franklin Computer Corp. , 714 F.2d 1240 (Tribunal del Tercer Circuito 1983). Los tres acuerdos de IBM, y los diseños legales de BIOS para PC de sala limpia de Compaq y Columbia Data Products , ocurrieron antes de que Phoenix anunciara, en julio de 1984, que estaban otorgando licencias para su propio código BIOS. Phoenix enfatizó expresamente el proceso de sala limpia a través del cual su código BIOS había sido escrito por un programador que ni siquiera había tenido exposición previa a los microprocesadores Intel, ya que él mismo había sido programador anteriormente del TMS9900 . [5] Todavía a principios de la década de 1990, IBM estaba ganando millones de dólares al resolver demandas por infracción de derechos de autor de BIOS contra otros fabricantes de clones de PC como Matsushita/ Panasonic (1987) [6] y Kyocera (1993-1994), aunque este último demandó fue por infracciones entre 1985 y 1990. [7] [8]
Otro ejemplo de diseño de sala limpia son los clones exitosos de VTech de las ROM de Apple II para el Laser 128 , el único modelo de computadora, entre docenas de compatibles con Apple II, que sobrevivió al litigio interpuesto por Apple Computer . La "historia del Laser 128" contrasta con el Franklin Ace 1000, que perdió en la decisión de 1983, Apple Computer, Inc. contra Franklin Computer Corporation . Los ejemplos anteriores de "clones" de PC se caracterizan por no atreverse a luchar contra IBM en los tribunales, incluso antes de que se sentara el precedente legal sobre la protección de derechos de autor del firmware. [9] [10] [11] [12]
Otros ejemplos incluyen ReactOS , un sistema operativo de código abierto creado a partir de componentes de Windows sometidos a ingeniería inversa en salas blancas , [13] y el sistema operativo Coherent , una reimplementación en salas blancas de la versión 7 de Unix . [14] En los primeros años de su existencia, el desarrollador de Coherent, Mark Williams Company, recibió la visita de una delegación de AT&T que buscaba determinar si MWC estaba infringiendo la propiedad de AT&T Unix. [15] Ha sido lanzado como código abierto. [14]
El diseño de salas limpias suele emplearse como mejor práctica, pero no es un requisito estricto de la ley. En NEC Corp. contra Intel Corp. (1990), NEC solicitó una sentencia declaratoria contra las acusaciones de Intel de que los ingenieros de NEC simplemente copiaron el microcódigo del procesador 8086 en su clon NEC V20 . Un juez estadounidense dictaminó que, si bien las primeras revisiones internas del microcódigo de NEC constituían de hecho una violación de los derechos de autor, la última, que en realidad se incluyó en el producto de NEC, aunque derivaba del primero, era lo suficientemente diferente del microcódigo de Intel como para considerarla libre de violaciones de derechos de autor. Si bien NEC no siguió un enfoque estricto de sala limpia en el desarrollo del microcódigo de su clon, durante la prueba contrataron a un contratista independiente a quien solo se le dio acceso a las especificaciones, pero terminó escribiendo código que tenía ciertas similitudes con el código de NEC e Intel. . A partir de esta evidencia, el juez concluyó que la similitud en ciertas rutinas era una cuestión de limitaciones funcionales resultantes de los requisitos de compatibilidad y, por lo tanto, probablemente estaban libres de un elemento creativo. [16] Aunque el enfoque de la sala limpia se había utilizado anteriormente como medida preventiva en vista de posibles litigios (por ejemplo, en el caso Phoenix BIOS), el caso NEC contra Intel fue la primera vez que el argumento de la sala limpia fue aceptado en un tribunal estadounidense. ensayo. Un aspecto relacionado que vale la pena mencionar aquí es que NEC tenía una licencia para las patentes de Intel que rigen el procesador 8086. [17]
Sony Computer Entertainment, Inc. contra Connectix Corp. fue una demanda de 1999 que sentó un precedente importante con respecto a la ingeniería inversa. [18] [19] Sony solicitó daños y perjuicios por infracción de derechos de autor sobre el emulador Virtual Game Station de Connectix , alegando que su código BIOS patentado había sido copiado en el producto de Connectix sin permiso. Sony ganó la sentencia inicial, pero el fallo fue anulado en apelación. Sony finalmente compró los derechos de Virtual Game Station para evitar su venta y desarrollo. Esto sentó un precedente que aborda las implicaciones legales de los esfuerzos comerciales de ingeniería inversa.
Durante la producción, Connectix intentó sin éxito un enfoque de muro chino para aplicar ingeniería inversa al BIOS, por lo que sus ingenieros desensamblaron el código objeto directamente. La apelación exitosa de Connectix sostuvo que el desmontaje directo y la observación del código propietario era necesario porque no había otra forma de determinar su comportamiento. Del fallo:
Algunas obras están más cerca que otras del núcleo de la protección de derechos de autor prevista. La BIOS de Sony está alejada del núcleo porque contiene aspectos desprotegidos que no se pueden examinar sin copiarlos. Por tanto, el tribunal de apelación le concedió un grado de protección inferior al de las obras literarias más tradicionales.
Para protegerse contra los cargos de haber copiado simplemente (e ilegalmente) el BIOS de IBM, Phoenix le realizó ingeniería inversa utilizando lo que se llama un enfoque de "sala limpia" o "muro chino". Primero, un equipo de ingenieros estudió el BIOS de IBM (aproximadamente 8 KB de código) y describió todo lo que hacía de la forma más completa posible sin utilizar ni hacer referencia a ningún código real. Luego Phoenix trajo un segundo equipo de programadores que no tenían conocimiento previo del BIOS de IBM y nunca habían visto su código. Trabajando únicamente a partir de las especificaciones funcionales del primer equipo, el segundo equipo escribió un nuevo BIOS que funcionó según lo especificado.