Skip to Content
新しいバージョン 12 を公開しました 🎉
Obfuscator値の暗号化難読化解除への耐性

難読化解除への耐性

定数が暗号化されると、実際の値はメソッド本体に存在しなくなります。IL に含まれるのは、実行時に復号される暗号化されたテーブルへのインデックスだけです。そのためデコンパイラーには、元の数値や配列の内容ではなく、不透明なインデックスが表示されます。

Babel の値と配列の暗号化は、主要なオープンソースの .NET 難読化解除ツールに対して検証されています。保護されたアセンブリにこれらのツールを実行しても、暗号化された値は復元されません。元の定数はクリーンアップ後の出力にリテラルとして現れず、復号のための間接参照はそのまま残り、暗号化されたデータテーブルも引き続き必要です。保護は維持されます。

最も強力な結果を得るには、値と配列の暗号化を、ほかの保護レイヤー(シンボルのリネーム、文字列暗号化、制御フロー難読化、コード暗号化)と組み合わせてください。そうすれば、いずれか 1 つのレイヤーが解析されても、全体像が明らかになることはありません。

Last updated on