FlashのActionScriptを難読化

↓のツールを使ったりすると読みにくくなります。

actionscript obfuscator :http://www.genable.com/asolite.html

だた、関数名、変数名を読みにくくするものなため、暗号キーのような値は難読化できないみたいですにぇ。あと、処理のどこで暗号化しているかとかがわかりにくいような構成にしないとダメなようです。何でもかんでも難読化すると、誤動作するみたいなので、なかなか難しいですね。

難読化してみたのはこれ。最初っからこうなってると逆コンパイルしても読みにくそう。

http://sagittarius.dip.jp/~toshi/flash/iraira_harupu_obfuscation.php


難読化後はこんな感じ。頑張ればもうちょっとできるかも。

var eval ("aso#73613") = (new com.meychi.ascrypt.eval ("aso#48265")(192, 128));
var eval ("aso#04950") = t.toString();
var eval ("aso#36287") = _root.eval ("aso#10939");
var eval ("aso#42276") = eval ("aso#73613").encrypt(eval ("aso#04950"), eval ("aso#36287"), "aso#67624");


6/12追記:ちゃんとやったら暗号化部分ってわかんなそうな感じになった。飛ばし先URLも変数定義をどっかに飛ばしておけばわかりづらくていけっかな?(難読化のテーブルとかどっかに保持されてんのかなぁ?

var eval ("aso#92972") = (new eval ("aso#73613").eval ("aso#36287").eval ("aso#28906").eval ("aso#67624")(192, 128)); 
var eval ("aso#24309") = t.toString(); 
var eval ("aso#55646") = _root.eval ("aso#30298"); 
var eval ("aso#61635") = eval ("aso#92972").eval ("aso#04950")(eval ("aso#24309"), eval ("aso#55646"), "aso#18320"); 
lv.load((("iraira_harupu_obfuscation.cgi?name=" + escape(name)) + "&time=") + eval ("aso#61635"));