2012-01-03 43 views
3

我們正在將我們的VB6應用程序遷移到Net。 VB6代碼使用一些第三方DLL,它們在工作之前需要通過許可密鑰。這些密鑰在VB6代碼中被硬編碼。現在,將此代碼移植到Net上時,使用Reflector檢索這些許可密鑰變得非常容易。我明白,當您在代碼中包含licencekeys時,真正的安全性是不可能的,但我怎樣才能至少防止偶然的Reflector用戶輕易地提取這些許可證密鑰?如何在臨時檢查中隱藏許可證密鑰

回答

1

使用混淆器可以混淆代碼中的任何字符串。這將保護你免受使用.NET Reflector的隨意檢查。或者,您可以添加您自己的代碼來獲取許可證密鑰,但是用於反向訪問的代碼無論如何都是可以查看的。

1

不幸的是,如果代碼很容易被逆向設計,就沒有多少選擇。存儲密鑰的位置或存儲方式並不重要,只要將它們傳遞給第三方DLL,它就會被公開。我的建議是將第三方DLL打包成一個自己的層,負責安全地檢索和傳遞許可證密鑰。