クリーンルーム設計

クリーンルーム設計（クリーンルームせっけい、 としても知られる）とは、ある製品をリバースエンジニアリングするチームと、それで得られた情報を元に再実装（再設計）を行うチームを隔離することで、著作権や企業秘密に抵触することなく、その製品の別実装を得る手法である。クリーンルーム設計は独立発明になるため、著作権や企業秘密への抵触を防げ、有用である。しかし、独立発明は特許権に対しては無防備である。実装者を別にすることで特許で保護されている実装と同じ実装にならないことを期待した手法であるが、結果として同じ実装になってしまった場合は権利者に対し無力である。
この語は、実装チームがクリーンな、つまり同業者の独自技術に関する知識からいかなる影響をも受けない環境で作業することを意味している。
通常、クリーンルーム設計は、模倣するために製品を調べ、仕様書を書くことでなされる。この仕様書は、著作権の侵害がないか法律家による検査を受ける。それから、つながりの全くない別のチームによって、この仕様書通りの製品が作られる。
実例.
IBM PCのBIOSをクリーンルーム設計によって実装し、その互換機を生み出したの例が有名である。他には、Apple IIのROMを模倣したのがある。この機種は、Appleによる訴訟攻撃を生き抜いた唯一のApple II互換機である。
判例.
1999年の"" の訴訟は、リバースエンジニアリングに関する重要な判例を生んだ。ソニーは、コネクティクスのというプレイステーションのエミュレータが、無断でBIOSをコピーして流用していると主張し、損害賠償を請求した。第一審ではソニー側が勝訴したが、上訴審で判決が翻った。結局、ソニーはVirtual Game Stationの販売および開発を中止するよう、金銭を支払って解決することとなった。以上の事が、商用目的でのリバースエンジニアリングに法的影響を及ぼす判例を生み出した。
開発の過程で、コネクティクスはBIOSをチャイニーズウォールテクニックでリバースエンジニアリングしようとしたが、上手く行かなかった。このため、エンジニア達は直接オブジェクトコードを逆アセンブルした。コネクティクスは裁判で、逆アセンブルとコードの解析は挙動を調べるには、他に方法が無いので必要な作業だったと主張した。以下判決からの引用。
"ソニーの創作物のいくつかは、著作権で保護されるべき重要な部分と言える。BIOSは、重要な部分とは言えない。複製しなければ調べようのない、保護されない部分があるからだ。よって本法廷は、これに従来の著作物と同程度の保護を与えることはしない。"