Naar inhoud springen

Clean-room design

Uit Wikipedia, de vrije encyclopedie

'Clean-room design' is de methode waarbij een ontwerp wordt gekopieerd door middel van reverse engineering en vervolgens opnieuw wordt gemaakt zonder inbreuk te maken op de auteursrechten die aan het oorspronkelijke ontwerp ten grondslag liggen. 'Clean-room design' is nuttig als verdediging tegen auteursrechtinbreuk omdat het gebaseerd is op onafhankelijke creatie. Omdat onafhankelijke uitvinding echter geen verdediging is tegen octrooien, kan een Clean-room design doorgaans niet worden gebruikt om octrooibeperkingen te omzeilen.

De term is een metafoor en heeft niets te maken met het begrip cleanroom. In dit geval impliceert de term dat het ontwerpteam werkt in een omgeving die aantoonbaar vrij is van kennis van de gepatenteerde technieken die door de concurrent worden gebruikt.

Een 'Clean-room design' wordt doorgaans uitgevoerd door iemand het te her-implementeren systeem te laten onderzoeken en deze persoon een specificatie te laten opstellen. Deze specificatie wordt vervolgens door een jurist beoordeeld om te garanderen dat er geen auteursrechtelijk beschermd materiaal in is opgenomen. De specificatie wordt vervolgens geïmplementeerd door een team dat geen banden heeft met de oorspronkelijke onderzoekers en ontwikkelaars.

Phoenix Technologies verkocht zijn clean-room implementatie van de IBM-compatibele BIOS aan verschillende PC-kloonfabrikanten.American Megatrends verkocht ook zijn clean-room implementatie van de IBM-compatibele BIOS aan verschillende PC-kloonfabrikanten.

Verschillende andere fabrikanten, waaronder Corona Data Systems, Eagle Computer en Handwell Corporation, werden door IBM aangeklaagd wegens auteursrechtschending en werden gedwongen hun BIOS opnieuw te implementeren op een manier die geen inbreuk maakte op de auteursrechten van IBM. Het juridisch precedent voor firmware die door auteursrecht wordt beschermd, was echter pas vastgesteld na een rechtszaak tussen Apple en Franklin Computer in 1983. De drie schikkingen van IBM, en de juridische clean-room PC BIOS-ontwerpen van Compaq en Columbia Data Products, vonden plaats voordat Phoenix in juli 1984 aankondigde dat ze hun eigen BIOS-code in licentie gaven. Phoenix benadrukte uitdrukkelijk het clean-room proces waarmee hun BIOS-code was geschreven door een programmeur die zelfs geen eerdere ervaring had met Intel-microprocessoren, maar daarvoor een TMS9900-programmeur was geweest. Nog tot in de vroege jaren negentig won IBM miljoenen dollars met het schikken van rechtszaken over inbreuk op het auteursrecht op BIOS tegen enkele andere PC-kloonfabrikanten zoals Matsushita/Panasonic (1987) en Kyocera (1993–1994), hoewel die laatste rechtszaak ging over inbreuken tussen 1985 en 1990.

Een ander voorbeeld van clean-room design is VTech's succesvolle klonen van de Apple II ROMs voor de Laser 128, het enige computermodel, van de tientallen Apple II-compatibele modellen, dat een door Apple Computer aangespannen rechtszaak overleefde.

Andere voorbeelden zijn ReactOS, een open-source besturingssysteem gemaakt van clean-room reverse-engineered componenten van Windows, en Coherent, een clean-room herimplementatie van versie 7 Unix. In de vroege jaren van zijn bestaan ontving de ontwikkelaar van Coherent, Mark Williams Company, een bezoek van een AT&T-delegatie die wilde vaststellen of MWC inbreuk maakte op het Unix-eigendom van AT&T. Het is vrijgegeven als open source.

Jurisprudentie

[bewerken | brontekst bewerken]

Clean-room design wordt meestal gebruikt als best practice, maar is niet strikt wettelijk verplicht. In een rechtzaak tussen NEC Corporation en Intel Corporation in 1990 zocht NEC een verklarende uitspraak tegen de beschuldigingen van Intel dat NEC's ingenieurs simpelweg de microcode van de 8086-processor in hun NEC V20-kloon hadden gekopieerd. Een Amerikaanse rechter oordeelde dat, hoewel de vroege, interne revisies van NEC's microcode inderdaad een schending van het auteursrecht waren, de latere revisie, die daadwerkelijk in NEC's product terechtkwam, hoewel afgeleid van de eerste, voldoende afwijkend was van de Intel microcode om als vrij van auteursrechtelijke schendingen te worden beschouwd. Hoewel NEC zelf geen strikte clean-room aanpak volgde bij de ontwikkeling van de microcode van hun kloon, huurden ze tijdens het proces een onafhankelijke contractant in die alleen toegang kreeg tot specificaties, maar uiteindelijk code schreef die bepaalde overeenkomsten vertoonde met zowel NEC's als Intel's code. Uit dit bewijs concludeerde de rechter dat de gelijkenis in bepaalde routines een kwestie was van functionele beperkingen als gevolg van de compatibiliteitseisen, en dus waarschijnlijk vrij waren van een creatief element. Hoewel de clean-room aanpak eerder als preventieve maatregel was gebruikt met het oog op mogelijke rechtszaken (bijvoorbeeld in de Phoenix BIOS-zaak), was de NEC v. Intel-zaak de eerste keer dat het clean-room argument werd aanvaard in een Amerikaanse rechtszaak. Een gerelateerd aspect dat hier het vermelden waard is, is dat NEC wel een licentie had voor Intel's octrooien die de 8086-processor beheersten.

Sony Computer Entertainment, Inc. tegen Connectix Corporation was een rechtszaak uit 1999 die een belangrijk precedent schiep met betrekking tot reverse engineering. Sony eiste een schadevergoeding wegens auteursrechtschending over Connectix's Virtual Game Station-emulator, waarbij ze beweerde dat de eigen BIOS-code zonder toestemming in het product van Connectix was gekopieerd. Sony won het eerste vonnis, maar de uitspraak werd in hoger beroep vernietigd. Sony kocht uiteindelijk de rechten op Virtual Game Station om verdere verkoop en ontwikkeling te voorkomen. Dit schiep een precedent over de juridische implicaties van commerciële reverse engineering-inspanningen.

Tijdens de productie probeerde Connectix zonder succes een Chinese muur-aanpak om de BIOS te reverse engineeren, dus hun ingenieurs disassembleerden de object code rechtstreeks. Connectix' succesvolle hoger beroep handhaafde dat de directe demontage en observatie van gepatenteerde code noodzakelijk was omdat er geen andere manier was om het gedrag ervan te bepalen. Uit de uitspraak:

Sommige werken liggen dichter bij de kern van de beoogde auteursrechtelijke bescherming dan andere. Sony's BIOS lag op een afstand van de kern omdat het onbeschermde aspecten bevat die niet kunnen worden onderzocht zonder te kopiëren. Het hof van beroep kende het daarom een lagere mate van bescherming toe dan meer traditionele literaire werken.

In populaire cultuur

[bewerken | brontekst bewerken]
  • In het eerste seizoen van de tv-serie Halt and Catch Fire uit 2014 is een belangrijk plotpunt uit de tweede aflevering hoe het fictieve computerbedrijf Cardiff Electric een ingenieur in een cleanroom plaatste om een BIOS te reverse engineeren voor zijn PC-kloon, om dekking en bescherming te bieden tegen IBM-rechtszaken voor een eerdere, waarschijnlijk illegale hacking van de BIOS-code die anderen bij het bedrijf hadden uitgevoerd. Het herinnerde veel critici aan Compaq's miljoenen dollars kostende clean-room engineering, maar een hedendaags, maar veel minder succesvol bedrijf, Columbia Data Products, gebruikte ook een dergelijke aanpak. De reactie van de juridische afdeling van IBM, net als andere plotpunten, weerspiegelde de ervaringen van Corona Data Systems nauwer.