ASICをリバースエンジニアリングすることは可能か?その現実と難易度を徹底解説
Can you reverse engineer an ASIC?
Can you reverse engineer an ASIC?
ASIC(特定用途向け集積回路)のリバースエンジニアリングが可能かどうかという問いに対する答えは、「理論的には可能だが、極めて困難」です。ASICは高度に最適化された専用ハードウェアであり、その解析には数億円規模の設備投資と、膨大な専門知識、そして気の遠くなるような時間が必要です。一般的なソフトウェアのリバースエンジニアリングとは比較にならないほど複雑で、チップの積層構造を物理的に削り出しながら顕微鏡レベルで回路図を再構成するような作業が求められます。趣味や小規模なプロジェクトで行えるレベルではなく、国家レベルや大手競合企業が知財調査目的で行うような非常に特殊なプロセスと言えるでしょう。
第2回NNチャレンジ(https://huggingface.co/spaces/jane-street/droppedaneuralnet )についてのブログ記事はまだ投稿されていないみたいだね。順列の解読に関する解説を期待してたんだけどな。
面白そうなチャレンジだね。ニューラルネットのやつよりはずっと取り組みやすそう。
回路図を取り込むと、そのテキスト表現を返してくれるExtract-SPICEみたいなツールってある?
こういうことができる人たちって本当に頭がいいよね。でも、サウジアラビアが横流ししたNVIDIAのチップが中国に渡ったとき、産業レベルでどうやって発覚するのか考えさせられるよ。彼らはこれまでも大量のチップをクローンしてきたけど、これほど高度なものはまだないはずだし。
15年前の大学に、NVIDIAのチップをリバースエンジニアリングして、より高性能なコンパイラを書いたポスドクがいたよ。彼はチップの全出力にオシロスコープを繋いで、入力にランダムな電流を流すところから始めたんだ。機械学習と自身の天才的な頭脳を駆使して、隠しコードを含めたすべてのオペコードを再発見した。最終的に、スーパーコンピュータでGPUを多用している企業に引き抜かれてたな。
単純化されたシナリオ(これに近いような)なら、10年近く前にCTFでやったことがあるよ。https://blog.dragonsector.pl/2017/10/?m=1
それってインドの株式市場からお金を盗んで出禁を食らった時に使われてたチップのこと?
てっきり記事はチップのスキャン方法について書かれているのかと思った。レーザーや集束イオンビーム(FIB)、走査型電子顕微鏡を使った高速なチップのリバースエンジニアリングっていう論文もあるよ(https://academic.oup.com/mam/article/30/Supplement_1/ozae044.314/7720268 )。FIBは設計修正をする前のテストにも使われるよね。物質がこれほど精密に操作できるっていうのは、何度考えてもすごいわ。
Solを使ったhigh設定での解法、/goalまで30分。
GDSからロジックゲートレベルのネットリストを取得するのは、業界標準のチップ設計ツールを使えば簡単だよ。回路設計者は毎日やってることだし。一番難しいのは、その機能のリバースエンジニアリングだね。もっと時間があればCalibreを放り込んで解析したいところなんだけど。