C 開發的程式,能 100 避免被破解或反編譯嗎?

時間 2021-05-31 13:29:52

1樓:「已登出」

不能100%的,只要能做到防止大部分破解就行了。

要做防反編譯還是得幾步走,先用vc,vb(非.net工程)一類的寫乙個殼,在這個殼中把exe壓縮,加密儲存,然後自己把JIT入口Hook了,做實時解碼,然後再把程式進行提權(不要直接把程式設定成管理員許可權執行,容易被直接殺掉),把一些執行緒啊記憶體相關的API Hook了,並實時檢測Hook結果,一時發現被其它程序修復了Hook,馬上改回去,或直接退出程式。最後再用UPX加個花指令,壓縮下,然後WinHex把這個加殼的後程式開啟,把UPX的一系列特徵碼全部清空。

最後出來的程式,基本上能防大部分破解了。(如除錯,記憶體dump,直接反編譯,反混淆等)

要做防反編譯,還是得自己寫殼,寫加密,解密演算法。畢竟那些公告發布的殼研究的人太多了,破解方法是很快就會出現的

2樓:

不存在的,什麼語言都做不到,除非你不直接給別人用。

只要破解成本大於破解者的收益,他們就不會幹了。

由於跟朋友用c#開發過單機遊戲,所以也積累了點鬥爭經驗。

1、能private和internal的就別public,2、強簽名。

前兩條是為了防止別人直接呼叫你程式裡的方法之類的。

3、加入大量的無用方法、字段、屬性等和無用的跳轉、判斷等。但是這個方案如果看函式呼叫情況很快就沒用了

4、對一些重要的資料進行校驗。

5、加暗樁。

6、混淆加殼。比如themida、.net reactor、dotfuscator、DNGuard等等。

7、非同步的方法反編譯出來是狀態機,可讀性很差,但有經驗的人照樣能找到關鍵點所在

後面這是為了增加破解難度

8、做好你的軟體,培養忠實客戶。

被裸絞的時候猛擊對方頭面部能破解嗎

姜子牙 你可以找個柔術教練 因為專業人士不會傷著你,話說裸絞真有致命危險的 嘗試一下你在幾秒內開始眼前發黑然後失去意識的 不要相信什麼單手破裸絞的P話 劉師傅 裸絞的話,個人認為基本只有在對方沒有頂我方後腰的情況下能破解。動作如下 下巴用力下壓對方肘關節,雙手用力將對方肘關節向自己下巴方向推住,已固...

假如我是一名能100 修復所有bug的程式設計師,我能在程式設計領域混成什麼地位?

代世輝 任何因果論的能力都能讓你成為神啊,前面還有人提什麼專案經理。就直接修復乙個程式的BUG就行了,這個程式的功能就是輸出你成為上帝的方法,或者控制所有電子裝置讓全世界的人相信你是上帝。 已登出 問題改了。我不是程式設計師,只是工作中專案組員編寫程式執行時有了bug,看到他們即使通宵也無法解決的那...

想成為程式設計師的普通人能學會C 嗎?如今還有必要學嗎?

XIVN1987 我覺得沒必要。C 難學 難用 工作機會少 工資也不顯著高於其他語言,學習價效比太低。除非你對C 擅長的某個領域很感興趣 或者找到份工作要求使用C 否則沒必要學習C 某課達人 按你說的條件,普通人,說明不是天資聰穎,也不是非常喜歡c 的型別,那麼我推薦學習go語言,有谷歌做背書,發展...