2010-11-28 53 views
10

我正在製作一個商業產品,它將具有客戶端和服務器端。客戶端完全依賴服務器,只是爲了使其更難以破解/盜用。問題在於,即使如此,也有可能有人會對協議進行逆向工程並製造他們自己的服務器。防止破解 - 特別是讓程序難以反編譯的方法

我想過加密或者使用SSL或與其他算法,所以它不會那麼容易剛從嗅探客戶端和服務器之間的流量找出協議的連接。

現在我能想到的是海盜們使用的唯一一件事就是反編譯程序,刪除加密,並嘗試看到「純文本」協議,以反向工程了。

我看了前面的主題,我知道這是不可能的,使它不可能被破解,但我們的程序員有什麼調整能帶給我們的代碼,使之成爲餅乾巨大的頭痛?

+2

這是沒有必要使它不可能被破解,你只是想使它非常困難,它會花費超過購買破解。 – 2010-11-28 12:22:14

+2

@Matthieu:你買了很多份,但只能破解一次。 – ybungalobill 2010-11-28 12:58:26

回答

1

恕我直言,很難隱藏實際的明碼。大多數包裝工所做的是使補丁變得困難。但是,在你的情況下,Themida可以做到這一點。

下面是寫一個很好的保護了一些不錯的建議:http://www.inner-smile.com/nocrack.phtml

3

的一件事是最加殼/ cryptors引起病毒掃描誤報。這可能很煩人,因爲人們總是抱怨你的軟件含有病毒(他們沒有得到誤報的概念)。

而對於協議的模糊不使用SSL。當你用純文本調用Send時,攻擊者攔截明文是微不足道的。使用SSL保護連接並在發送數據前對數據進行模糊處理。混淆算法不需要加密安全。