Summary
Ken Thompson 氏は,1970年初頭にログイン名 kt でログインできるバックドアを仕込んでおいた.氏が1984年に論文で発表されるまで,誰にも見破れなかった.
login.c にバックドアのコードを記述したら,すぐに見つかってしまう.
Cコンパイラが login.c をコンパイルするときにバックドアを仕込むようにする.
Cコンパイラは自分自身が self-compileされる際に,クラックコードを再挿入する.
このCコンパイラでコンパイルされたCコンパイラは,常に login.c にバックドアを仕込むコンパイラになる.
ソースコード上のクラック部分は元に戻して,バイナリとソースを一緒に配布すればOK.
Reference
ACM Classic: Reflections on Trusting Trusthttp://www.acm.org/classics/sep95/
via
えびめも - 2004-04-13http://www.ebimemo.net/diary/?date=20040413#p02
NAKAMURA Minoru's Diary - 2006-04-16
http://www.nminoru.jp/~nminoru/diary/2004/04.html#2004-04-16