【解決方法】.exe を読み取り可能なソース コードに変換します。


「.exe を読み取り可能なソース コードに変換する」について読みました。
それは本当に本当ですか? 「はい」と書いてあります。
現在、マーケットプレイスでソース コードを販売するアプリを作成しています。購入者が私の .exe アプリを読み取り可能なソース コードに変換するのを妨げるものは何ですか?
つまり、私は自分のアプリを無料で表示し、彼らはそのソース コードを購入する可能性があります。
それを読み取り可能なソース コードに変換することはできませんか?
売上を見て購入するのですが、ソースコードを抽出できないのでしょうか?

.Net Reflector について聞いたことがありますが、.Net アプリからソース コードを抽出できると書かれていますが、本当ですか?

ソースコードを大切に保管しているケースは他にもたくさんあります。
私は混乱していますか、それとも真実ではありませんか?

解決策 1

はいといいえ。 いいえ、あなたは完全に混乱しており、正式には、質問は意味をなさないからです. 「変換」や「ソースコードの抽出」とは言えません。 抽出するものは何もありません。 アセンブリ モジュールにはソース コードは含まれません。 「保管」ではありません。 あなたは理解していないだけです。

同時に「読めるソースコードにする」? はい、簡単に。 誰でも .NET アセンブリを逆コンパイルして、同じアセンブリに再度コンパイルできるソース コードを取得できます。 読める? はい。 もちろん、コンパイル中に完全に失われるのと同じソース コードではありませんが、通常は非常に読みやすいものです。 オープンソースの ILSpy を使用すると、次のように表示されます。
http://en.wikipedia.org/wiki/.NET_Reflector[^]、
http://en.wikipedia.org/wiki/SharpDevelop[^]、
http://ilspy.net[^]、
https://github.com/icsharpcode/ILSpy[^].

これが可能なのは、コンパイルされたアセンブリが CIL (機械語ではなく) で「記述」されており、コードが 反射する. 参照してください:
http://en.wikipedia.org/wiki/Intermediate_language[^]、
http://en.wikipedia.org/wiki/Common_Intermediate_Language[^]、
http://en.wikipedia.org/wiki/Reflection_%28computer_programming%29[^]、
https://msdn.microsoft.com/en-us/library/f7ykdhsy%28v=vs.110%29.aspx[^].

-SA

解決策 2

セルゲイが書いたものとあなたのコメントの質問への回答に加えて:

引用:

あなたは .Net アセンブリと言い、私は .Net アプリケーションと言いますが、同じことですか?

.Net アセンブリは、実行可能ファイル (.exe) または実行可能ファイルによって使用されるダイナミック リンク ライブラリ (.dll) のいずれかです。 通常、アプリケーションは、.Net アセンブリを含む、実行に必要なすべてのパーツを備えた製品全体と呼ばれます。

引用:

OK、簡単にしましょう。C# .Net でアプリを作成しました。これで、アプリ全体を実行するために使用できる .exe ファイルができました。
では、誰でもそれを読み取り可能なソース コードに変換し、カスタマイズすることはできますか?

理論的にはそうです。 実際には、明らかに努力が必要であり、問​​題は、誰かがそれを行うのに十分な動機があるかどうかです. アプリケーションを販売する際の収益の損失の可能性について話していると仮定すると、アプリケーションをハッキングする人が、それができなかった場合に有料の顧客になるかどうかを考えてみてください。 おそらくそうではありません。 ただし、.Net アプリケーションのハッキングに必要な労力を増やすために実行できる手段があります。 難読化ツール[^] アプリケーションのアセンブリを変更して、逆コンパイルから得られるソース コードを理解するのがかなり難しくなります。逆コンパイル プロセス自体をより困難にする手段を提供するものもあります。

コメント

タイトルとURLをコピーしました