プロジェクト内の他のものを保護するためのメイン SWF として「シェル」SWF があります。
シェル swf の手順は次のとおりです。
- ステージ プロパティをチェックして、子としてロードできないようにします。
- Capabilities.isDebugger をチェックして、デバッガーで実行できないようにします。
- デコーダ ライブラリをロードします。デコーダ lib は flascc によってビルドされているため、逆コンパイルが非常に困難です。
- デコーダーを使用して自己を検証します。失敗またはスキップされた場合、デコーダーはデコード ジョブを実行しません。
- エンコードされたプロジェクトのメイン エントリを読み込み、デコードしてステージに追加します。
問題はステップ 4 です。Shell swf のバイナリ チェックサムを実行したいのです。
質問は次のとおりです。
- 起動時にシェル swf ファイルの元のバイナリ コンテンツを取得するにはどうすればよいですか?
- そうでない場合、Shell swf の LoaderInfo.bytes はさまざまなバージョンの Flash Player で一貫していますか?
- そうでない場合、ステップ 4 で検証ジョブを実行する良い方法はありますか?