2012-08-10 108 views
1

我有一個基於java的產品,在發佈之前對其進行了模糊處理,但每種方法都有日誌消息。我明白日誌消息可能用於追蹤代碼並使用逆向工程來反轉代碼,但在發生錯誤時尋找錯誤很有用。模糊處理後的日誌消息

我的問題是:我應該在混淆後保留日誌消息嗎?如果不是,有什麼其他方式來追蹤錯誤,以防萬一發生錯誤?

回答

2

我建議你改變你的想法。如果您對代碼進行混淆,則會阻止偶然的「逆向工程師」瞭解它。但是,對於那些決心破譯代碼的人,你可能會產生很小的影響,並且只需使用現場報告來重現一個細微的錯誤時,就會使自己的工作變得更加困難。

我建議你做一些實驗,以評估調試和維護的額外成本(和客戶的刺激時,你不能快速解決問題)對知識產權的價值,可能有人會真正到對其進行反向工程,並且如果有人對您的系統的某些部分進行逆向工程,則會產生成本。

+0

+1 - 混淆是主機客戶背後的痛處。哪一項對您/您的業務更重要 - 阻止非付費客戶使用您的代碼或不疏遠您的付費客戶?提示:當我遇到混淆代碼時,我立即開始尋找替代供應商。 – 2012-08-10 04:22:28

+0

@StephenC:很清楚,我想你錯過了s.t.通常,我銷售我的產品,不包括源代碼,並且價格是爲此計算的。如果我打算出售包括源代碼在內的產品,價格將遠高於應有水平。你怎麼看待這件事? – Thinhbk 2012-08-10 05:54:59

+0

@Thinhbk - 我通常會開發和使用開源軟件,因爲我使用的昂貴的閉源產品無法正常工作。我的態度是,如果我爲產品付出高昂的代價,它要麼非常好,要麼免費獲得源代碼。我不會爲尋找和修復代碼中的錯誤的「特權」付出額外的代價。 – 2012-08-10 06:15:01