リバースエンジニアリング 【reverse engineering】 リバエン
概要
リバースエンジニアリング(reverse engineering)とは、出荷された製品を入手して分解や解析などを行い、その動作原理や製造方法、設計や構造、仕様の詳細、構成要素などを明らかにすること。企業などが他社製品のリバースエンジニアリングによって得られた情報は、類似製品や互換製品の開発、同等の機能の実現などのために利用されることが多いが、自社特許の侵害が無いか調査するといった目的で行われることもある。
ソフトウェアの場合には実行可能形式のプログラムから逆アセンブルや逆コンパイルなどを行って、(不完全な)ソースコードを取得して動作を解析することが多い。他の工業製品の場合と同じように互換製品などを開発するために行われるほか、コンピュータウイルスなどマルウェアの動作を詳細に調べ対策プログラムを開発したり、ソフトウェアの保安上の弱点(脆弱性)を探し出すなどセキュリティ上の目的で行われることも多い。
リバースエンジニアリングを行うこと自体は合法だが、抽出したコンピュータプログラムを丸ごと複製して自社製品に組み込むといった行為は著作権違反、企業秘密(営業秘密)として保護された製法や構造などを割り出して無許諾で模倣した場合は不正競争防止法違反などに問われることがある。
このような権利侵害を避けるため、リバースエンジニアリングを行うチームが外形的な仕様などを記述し、隔離された別のチームが書面を元に同じ働きをする実装方法を独自に考案するという手法が用いられることがある。これをクリーンルーム設計(クリーンルーム手法)という。ただし、この方式では特許権や意匠権の侵害を避けることはできない。
(2018.5.17更新)
関連用語
他の辞典による解説 (外部サイト)
- ウィキペディア 「リバースエンジニアリング」
- 大塚商会 IT用語辞典 「リバースエンジニアリング」
- 日経 xTECH IT基本用語辞典 「リバースエンジニアリング」
- SOMPO CYBER SECURITY サイバーセキュリティ用語集 「リバースエンジニアリング」
- @IT セキュリティ用語事典 「リバースエンジニアリング」
- NTT西日本 ICT用語集 「リバースエンジニアリング」
- ミツエーリンクス Web「経営革新ツール」用語集 「リバースエンジニアリング 」
- ボクシルマガジン 「リバースエンジニアリング」
- ITパスポート用語辞典 「リバースエンジニアリング」
- EnterpriseZine セキュリティ用語集 「リバースエンジニアリング」