問題タブ [eazfuscator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 難読化されたクラス C# をシリアル化する
現在、作業中のゲームのハイスコアを追跡する静的クラスを難読化するために使用しているヘルパー クラスがあります。リリースで Eazfuscator を使用していますが、スコアがシリアル化されているときに、次の例外がスローされることがわかりました。
ArgumentException 識別子 ' ' は CLS に準拠していません
ハイスコアのリストをヘルパー クラスに保存し、難読化後にシリアル化できる方法はありますか?
私のヘルパークラス:
c# - Eazfuscator.NET が Enum.IsDefined を壊す
私のコードでは、多くの小さな列挙型を利用しています。
この列挙型に変換する前に、整数入力を検証する必要があることがよくあります。
列挙型が FlagsAttribute を使用する場合、このアプローチは機能しません。Enum.IsDefinedは、フラグを自動的に組み合わせて指定された値を作成することはできません。ただし、FlagsAttribute を必要としないことを回避できました。
ただし、Eazfuscator.NETの難読化によって Enum.IsDefined が壊れる TIL。可能性があることはわかっていましたが、System.Reflection 名前空間にないため、そうならないことを望んでいました (報告によると、System.Reflection を多用しています)。
だから、誰かが良い代替案を知っているかどうか疑問に思っています。私は特に次のことを求めています。
- 整数が指定された列挙に含まれているかどうかを確認できます。
- .NET Framework 2.0 および Mono Framework と互換性があります。
- (属性または何らかの GUI ツールを使用して) 明示的に無効にすることなく、難読化を存続させます。
c# - EAZfuscatorが自動的に機能しない
.Net Framework 4を使用するC#2010WinFormsアプリケーションがあります。
このアプリケーションを難読化するためにEazfuscator.NETを使用しています。実行可能ファイルを手動で難読化すると、すべてが正常に機能します。
プロジェクトを緑色の部分にドラッグして、ビルドごとにプログラムを難読化しようとすると、すべてが正常に機能し、次のように出力されます。
プロジェクトの保護'RosterManager.csproj'...完了
保護されたプロジェクトは、リリース構成のビルド中に自動的に難読化されます
Visual Studioを再起動して、Eazfuscator.NETのインストールを完了してください
その後、VSを閉じて再起動し、ソリューションをクリーンアップして再構築し、実行します。プログラムは機能しますが、 Reflector 7を使用して逆コンパイルすることで証明されるように、難読化されていません。
プログラムの要求に応じて、リリースでビルドしています。
Webを検索しても役に立たなかったので、誰かが以前にこの問題に遭遇した場合は、この問題を修正できる可能性があります。
c# - Access DBへのC#Winformアプリケーションの安全な接続
パスワードで保護された Access 2010 データベースに接続するために OleDb を使用する C# 2010 Winformsアプリケーションがあります。これはオンラインアプリケーションではありません!
私は現在、Eazfuscator.NETを使用して難読化された接続文字列にパスワードをプレーンテキストで保存しています [これは非常に安全ではないことがわかっています] 。逆コンパイルやその他の実用的な方法で取得できないように、パスワードを安全に保存する方法に興味があります。
app/web.config で接続文字列を暗号化することにより、ASP.NET アプリケーションに対してこれを行う方法があることは承知していますが、私のアプリケーションはデスクトップ アプリケーションであるため、うまくいきません。
これまでのところ、これを達成する方法は見つかりませんでした。
これが私がやろうと思ったことです:
データベースにアクセスできるユーザーは 1 人だけであるため、ユーザーにパスワードを要求します。入力パスワードのハッシュ (SHA1 / SHA512) を取得し、ハッシュから特定の文字数を選択してソルトし、接続文字列に追加して接続を試みます。
明らかに、ユーザーがパスワードを忘れた場合、ブルート フォースを使用する以外にデータベースにアクセスする方法はまったくありません。
プログラムの接続文字列で使用されるパスワードを保存して、実用的な手段で取得できないようにする方法はありますか?
dll - Eazfuscator.NETで保護されているDLLのソースコードを取得するにはどうすればよいですか?
リフレクターを使用して、C#DLLのソースコードを取得します。ただし、Eazfuscator.NETで保護されているDLLがあります。リフレクターは、このDLLからコードを取得できません。
このDLLからコードを取得するにはどうすればよいですか?
助けてくれてありがとう。
obfuscation - カスタム ビルド構成の Eazfuscator.NET エラー
プロジェクトでしばらく Eazfuscator を使用していますが、「Release-Internal」というリリース ビルド構成のコピーを作成するまで、すべてが正常に機能しています。また、ビルド後のイベントを更新し、スクリプトを「if /I "$(ConfigurationName)" NEQ "Debug"..."」に変更しました。現在、すべてのプロジェクトは問題なく難読化されていますが、そのうちの 1 つだけが次のエラーを表示します。
(EF-1099 エラーが発生しました。
4> 難読化ツールは、入力アセンブリまたはその依存関係の 1 つを読み込めません。
4> この問題を解決するには、次のことができます。
4> - プローブ パスを指定する
4> - 不足しているアセンブリを入力ファイルの近くに置く
4> 詳細については、次の Eazfuscator.NET ドキュメントを参照してください。
4> トラブルシューティング -> エラー コード ナレッジ ベース -> EF-1099 の章。)
興味深いのは、アクティブな構成を「リリース」に変更すると、同じプロジェクトが問題なく難読化されることです。「Release」構成と「Release-Internal」構成の違いは、「Release-Internal」には INTERNAL と呼ばれる追加の条件付きコンパイル シンボルがあることだけです。
また、「Release-Internal」構成で難読化せずにプロジェクトをビルドします。アプリケーションのビルドは正常に実行され、正常に実行されます。
よろしくお願いします、
c# - カントランビルド:EAZFuscatorが干渉するのを防ぐ方法は?
コンピューターからEAZFuscatorをアンインストールしましたが、Visual Studioでソリューションをビルドしようとすると、次のエラーが発生し続け、ビルドが停止します。
EAZFuscatorがビルドに干渉するのを防ぐにはどうすればよいですか?ありがとう!
c# - Eazfuscator.NET1つ以上のエラーが発生しました->インデックスが範囲外でした
Eazfuscator 3.3(無料バージョン)を使用していますが、 1つを除くすべてのプロジェクトを(特定のソリューションで)難読化できます。
これは私が得ているエラーです:
エラー16入力ファイル'DAL.dll'の処理中にエラーが発生しました->1つ以上のエラーが発生しました->インデックスが範囲外でした。負ではなく、コレクションのサイズよりも小さい必要があります。
C:\ Projects__ __ __ DAL \ EXEC __ _DAL
私はこれを手動で実行しようとしました:
しかし、私は同じ結果を得ました。
私もこれを試しました:
しかし、ご覧のとおり、同じ結果が得られました。
Eazfuscator.NETバージョン3.3(リリースビルド3.3.161.40493)Copyright(C)2007-2012 Oleksiy Gapotchenko
アセンブリを難読化する' ___ DAL.dll ' ...エラー:入力ファイルの処理中にエラーが発生しました''_____ DAL.dll '->1つ以上のエラーが発生しました->インデックスが範囲外でした。負ではなく、コレクションのサイズよりも小さい必要があります。
FluentNHibernate.dll(1.2.0.712)、NHibernate.dll(3.1.0.4000)、NHibernate.ByteCode.Castle.dll (3.1.0.4000)の参照が原因で発生しているように感じます。
c# - Eazfuscator.NET を使用してスタック トレースをデコードできない
Eazfuscator.NET 3.3 を使用してコードを難読化します。ただし、暗号化する dll の AssemblyInfo.cs ファイルにこの行を追加した後も、ヘルプが提案したように定義されたパスワードを使用してスタック トレースをデコードすることはできません。
Eazfuscator.NET を使用してスタック トレースのデコードに成功した人はいますか?
c# - 難読化により datacontext クラスが削除される
EAZfuscator を使用して Winforms アプリを難読化しようとしています。難読化されたアプリを実行しようとすると、Entity Framework 例外 (ProviderIncompatibleException) が発生します。
IlSpy を使用して難読化されたアセンブリを確認すると、ほとんどの名前空間とクラスはそのまま残っていますが (名前が変更された変数名のように見えます)、DataContext クラスが完全に削除されていることに気付きました (つまり、 DbContext から派生します)。
私の ProviderIncompatibleException 例外は、接続文字列の名前が datacontext クラス名と一致する必要があるためだと思います。私はapp.configにこれを持っています:
ここで、DsDataContext は、DbContext (Eazfuscator によって削除されたように見えるもの) から派生した私のクラスの名前です。
誰もこれを経験したことがありますか?このクラスが Eazfuscator によって削除された理由は? また、クラス名がそのまま残っている理由にも興味があります。難読化はあまり難読化されていないようです。
アップデート
以下は、完全性のための例外です。ただし、上記のクラスが欠落しているために取得していると思います。
タイプ: System.Data.ProviderIncompatibleException
メッセージ: データベースからプロバイダー情報を取得中にエラーが発生しました。これは、不適切な接続文字列を使用する Entity Framework が原因である可能性があります。内部例外で詳細を確認し、接続文字列が正しいことを確認してください。
ソース = EntityFramework
スタックトレース: