0

難読化してサード パーティの開発者が利用できるようにしたいコア アセンブリがあります。私が調べた難読化ツールのほとんどは、逆コンパイラとリフレクタに対して内部を文字化けするが、パブリック メソッドとプロパティの名前はそのまま残されると述べています (これは理にかなっています)。しかし、「保護された」メンバーはどうでしょうか?

いくつかのクールなヘルパー メソッドとプロパティを含む基本クラスがあり、これをサードパーティの開発者が利用できるようにして、基本クラスから単純に継承し、配管の一部を既に配置できるようにしたいとします。彼らのために。明らかに、難読化ツールによって文字化けされた場合、これはあまり役に立ちません。私の質問は、これらの難読化ツールで何ができるのでしょうか? 保護されたメソッドも文字化けしないことを指定できますか? または、代わりに、文字化けするものとしないものを構成できますか? 私は .NET で難読化ツールを使用した経験がないので、すべての詳細を学びたいと思っています。

4

1 に答える 1

4

私は .net のいくつかの難読化ツールを使用してきましたが、パブリック クラスで保護されたメンバー名を難読化していたものはありませんでした。これは、アプリケーションを破壊する可能性があるため理にかなっています。難読化の全体的な考え方は、アプリケーションの動作とパブリック API を難読化前と同じに保つことです。

さらに、ほとんどの難読化ツールでは、特定の非パブリック クラス/メンバーを難読化から除外できます (カスタム属性を使用するなど)。これは、リフレクションや依存性注入のための IoC コンテナーなどを使用する場合に必要になることがあります。

于 2012-11-14T12:25:41.513 に答える