2016-03-17 66 views
-1

我的動機是將值存儲在類庫中,就像我們在使用Properties.Settings.Default.variable的獲勝表單應用程序中那樣存儲值。爲什麼我希望使用類庫而不是應用程序來存儲它,因爲我不讓應用程序開發人員訪問或操作運行時生成的安全信息。我正在使用C#。如何在運行時將永久數據存儲在類庫中

我該如何實現我的動機?類庫是我第一次打開,也打開任何其他解決方案。

我無法使用數據庫,因爲數據庫在我的場景中是本地的,可以由用戶和應用程序開發人員訪問。

我製作了一個電信設備,其中我希望我的磁帶庫驗證硬件是由我們僅使用IMEI號碼發佈的。我的應用程序工作在離線模式,因此我發送包含IMEI號碼和接收端驗證IMEI號碼的短信。驗證後接收端返回驗證響應。在用戶端收到響應類庫後,如果設備未驗證應停止工作。

+0

爲什麼不把它存儲在數據庫中? – JanR

+0

,因爲數據庫可以被應用程序開發人員訪問 –

+0

如何寫入註冊表? –

回答

0

圖書館項目不應該有需要在運行時修改的配置文件,因此您可以使用以下方法: 1-保留所有配置在贏取窗體應用程序級別並將信息傳遞到庫調用的任何地方。 OR 2-將配置保存到純XML文件(而不是具有默認AppSettings類的app.config)。加密文件中的xml文件或信息以保證其安全。

有更多的選擇(例如保存在winform項目app.config文件設置,打開使用OpenMappedExeConfiguration從LIB項目的閱讀。Code sample),但最靈活,最安全的方法是使用自定義XML文件的加密/解密。

0

你無法實現你所說的目標。客戶機上的任何數據都可以被該客戶機的用戶訪問和破解。至少在個人電腦上,如果沒有別的東西,他們可以附加一個調試器並始終通過解密代碼。在過去的一段時間裏,我曾爲一家使用硬件加密鎖作爲複製保護的公司工作,並且破解程序會通過我們的代碼進行調試,找到加密狗的調用,並將它們拒之門外。

假設客戶端計算機上的任何數據完全由該計算機的用戶所有,您需要爲應用程序建模。