2011-04-15 104 views
0

我想要一個Java桌面應用程序加密/一些機制,以確保它不被反向工程。解決方案,以防止Java應用程序被反向工程 - 可能是某種形式的加密

任何在這方面的指針將不勝感激。

+0

你的意思是這樣嗎? http://www.google.co.uk/search?q=solution+to+prevent+java+application+from+being+reverse+engineered加密的問題是您必須能夠自動解密以運行碼。混淆通常是最好的方法。 – 2011-04-15 15:20:39

回答

3

不是。 See this for the full details。對於Java而言,這是一個長期存在的問題,與語言本身一樣古老。

+0

這是任何語言的問題,但對於託管語言(如Java)來說(它現在幾乎是除非託管C/C++以外的任何語言)都更加明顯。我甚至不會包含腳本語言。有趣的鏈接! – 2012-01-07 13:30:06

0

在以前的公司,我們使用DashO成功。 http://www.preemptive.com/products/dasho

雖然理解你在某種程度上打開了一堆蠕蟲。瞭解代碼從堆棧跟蹤中死亡的位置不會很簡單...方法名稱和變量都會被混淆,因此如果沒有爲特定構建生成的映射文件DashO,堆棧跟蹤是沒有意義的。

3

您正在尋找「混淆」。 這種技術將通過「重新排列」生成的字節碼來使任何類型的逆向工程變得更加困難。有時這也會帶來額外的性能提升,因爲混淆器可以花時間優化字節碼。 查看工具,如ProGuardyGuard

相關問題