.Net用の逆コンパイルツールには「.NET Reflector」や「ILSpy」などがあり、これを使う事でexeファイルやdllファイルからソースコードを読み取れてしまう。
使ってみたところ、完全に復元できる訳ではないみたいだけど、だいたいは合っている。
以下のソース(dll)に使ってみた。
public class Class1 { private string message; public Class1() { message = CreateMessage(); } private string CreateMessage() { return "Hello World"; } public string GetMessage() { return message; } }
逆コンパイル!!
privateにした部分も普通に見れる。
隠したい部分もバレバレになる。
これはヤバい。
対策としてコードの難読化する「Dotfuscator」といったツールもあるみたい。
見られたくなけなければこういうのを使わないとダメみたいだ。
javaにも同じような逆コンパイルツールがあるみたいだけど、みんなどうしてるんだろ?