リバースエンジニアリング
意味・解説
既存の製品やプログラムを解析して、その設計情報や仕組みを導き出すこと。
完成済みのソフトウェアやハードウェアを分解・解析し、その動作原理やソースコード、設計書などの仕様情報を明らかにすること。古いシステムの再構築(リプレース)や、他社製品の調査、セキュリティ上の脆弱性診断などに用いられる。
くわしく
リバースエンジニアリングは、通常の「設計から作成へ」という流れを逆(リバース)に辿る技術です。ポイントは、実務の現場では「10年以上前に作られたシステムで、当時の担当者がおらず、設計書も古くて使い物にならない」という状況が頻繁に起こるからです。このような「ブラックボックス」化したシステムを新しく作り直す際、現物のプログラムを解析して、どのようなロジックで動いているかを把握(仕様の復元)しなければなりません。また、サイバーセキュリティの分野では、正体不明のウイルスをリバースエンジニアリングして、その攻撃手法や感染経路を特定する際にも不可欠です。ただし、他社の商用ソフトを勝手に解析することは、契約上の制限や著作権法、不正競争防止法に抵触する可能性があるため、実施には法的・倫理的な配慮が強く求められます。試験では「既存製品の解析」「設計情報の導出」という定義が頻出します。
例文
設計書が失われた古い在庫管理システムを刷新するため、現行プログラムのリバースエンジニアリングを実施した。
過去問での出題状況
直近29回分の過去問(全2,900問)を解析した結果、11回登場しています(出題された年度: 9年度)。
出典: 本サイト独自集計(問題文および全選択肢テキストからの用語出現頻度・2026年6月時点)