2012-08-05 177 views
0

可能重複:
Best .NET obfuscation tools/strategy
Should you obfuscate a commercial .Net application?部署C#應用程序(混淆)

好日子大家。我已經準備好發佈一個小型的c#遊戲了,但是我聽說如果它是「部署的」,反編譯/反編譯c#應用程序是非常容易的。所以我的問題 - 我能做些什麼來防止,或者至少讓人們更難反彙編/反編譯我的應用程序?

有沒有更多的方法嗎?如果是這樣,你認爲最好的是什麼?

UPD:正如以下指出的那樣,使用默認混淆器可能會導致反射問題,因爲我使用lua解釋器來處理遊戲腳本。

在此先感謝。

+4

[Best .NET obfuscation tools/strategy]可能的重複(http://stackoverflow.com/questions/2525/best-net-obfuscation-tools-strategy),http://stackoverflow.com/questions/59893 /最好的方法來混淆或安全網絡組裝,/questions/7491174/can-i-obfuscate -a-compiled-net-executable-assembly,等等。 – 2012-08-05 12:44:15

+0

除了什麼@CodyGray說(擊敗我與搜索)還有這個答案是與您的問題相關 - http://stackoverflow.com/questions/7204076/alternative-for-obfuscation-in-the-net世界 - 這是許多遊戲公司近來所採取的方法。 – dash 2012-08-05 12:46:35

+0

嗯。謝謝,我現在要讀這些。如果我的問題確實是重複的,我會刪除它。 – NewProger 2012-08-05 12:47:25

回答

1

Visual studio包含「Dotfuscator」(VS 2010中的工具 - > Dotfuscator軟件服務),它爲您混淆了您的代碼。如果你在你的代碼中實現反射,它會帶來一些問題,但它確實給你選擇你想要代碼的方式,所以這裏也有一些靈活性。

+0

你提到它很好。是的,有反思。我使用lua解釋器來處理遊戲腳本。那我該怎麼做? :) – NewProger 2012-08-05 12:51:15

+0

你可以指定它是如何混淆的。一種技術是將功能名稱更改爲人類無法讀取的字符。如果你願意,你應該可以跳過這一步。 – 2012-08-05 12:57:26

+0

謝謝,我認爲我現在有一個很好的主意,就是如何處理所有這些。 – NewProger 2012-08-05 13:06:39