2013-04-27 69 views
1

我已閱讀了大量關於AES,CommonCryptor,salt和MAC的帖子和資源,以尋找解決方案,以解決我在發佈我的移動軟件庫時遇到的問題。我想通過HTML和JavaScript在WebView中使用自定義URL Scheme將字符串作爲參數傳遞給我的iPhone和Android應用程序。 HTML文件將在我的網站上創建,然後分發給用戶以存儲在他們的Web服務器上。保護移動應用程序中的AES密鑰

從我已閱讀的內容中,我將使用一個密鑰加密HTML文件中的字符串,然後再將它分發給用戶。然後,相同的密鑰將被存儲在庫中並用於解密字符串。但是如果有人反編譯我的應用程序,他們將擁有密鑰並能夠解密存儲在分佈式HTML文件中的字符串。我知道這個庫可以很容易地反編譯,但是提供字符串和代碼是真的放棄它。而且真正的危險是,人們可以使用HTML文件在我的圖書館的黑客版本中觸發惡意行爲。

我真的不想打電話到我的網站獲得鑰匙或鹽,我不確定這將提供任何保護。隨機鹽會隨着鑰匙在圖書館中的存儲工作?

我願意把時間花在研究,編碼和測試上,但首先我想知道如果使用AES,CommonCryptor,salt或MAC這是可行的。如果我們在這裏解決它,它將作爲解決這個問題的解決方案。

謝謝

回答

0

編譯自己的OpenSSL和crypro靜態庫和包括兩個靜態模塊集成到自己的母語。所以模塊。不要使用內部的Android SSL。

以某種受保護的方式痛苦深入內部(簡單的解決方案是使用浮點數組和一些非平凡散列)。在本地代碼中解密加密的消息。在本機代碼中確定消息是否正常。不要以純布爾值返回到Java。

每當黑客想要破解你的代碼時,他必須反編譯〜800K的本機代碼。

+1

這只是默默無聞的安全。 – 2013-04-28 12:51:55

+0

謝謝你的迴應。 – user1751607 2013-04-29 10:10:28