嗨我有一個用Java和Slick2d製作的遊戲,我有一個包含我所有資源(圖像,聲音等)的文件夾,我想知道如何加密它們以便人們無法編輯它們?我嘗試了MD5,但我不確定它是如何工作的,我不擔心人們闖入代碼,因爲我已經將jar拼接到一個exe文件中。另外,如果我需要知道如何解密這些文件,以便它們可以在代碼中使用,請解釋一下。如何加密資源文件?
回答
MD5是一個散列函數,它是不可逆的,兩個輸入可以產生相同的輸出。
如果文件的內容不是'祕密',您可以使用MD5進行驗證過程,這應該很容易。
- 創建hashtabe(或只是一個表)的所有資源的應用程序使用
- 一旦小程序lanched創建hash for each of the files,並將其與你的表比較哈希值,如果不一樣,有人改變了你的jar文件的內容。
我建議保持代碼中的哈希表所以這將是難以修改
有沒有辦法來保護圖像/資源,所有你能做的就是讓它稍微更難。如果您將圖像/資源交付給客戶端,那麼他們可以隨時解密它們,畢竟客戶端必須在某個時間點對其進行解密才能顯示。
Btw .: MD5是一種散列算法,它用於檢查數據是否未損壞。
我該如何讓它稍微難一點?我想要的只是簡單的加密,所以普通玩家無法破解它。我意識到不可能從每個人加密。 – user1883799 2013-02-28 15:26:16
好的,那麼你可以使用這樣簡單的東西:https://en.wikipedia.org/wiki/Caesar_cipher – 2013-02-28 15:44:59
如果你正在使用你的資源,你必須解密它們,然後客戶端才能使用它們,因爲它們在遊戲中被使用。
- 1. 如何將文件資源加密/解密爲Android?
- 2. 加密解密資源庫
- 3. 如何加載資源文件夾(maven)內的密鑰庫?
- 4. 如何獲得加密的資源包?
- 5. 如何添加一個資源文件
- 6. 如何從資源添加.qss文件
- 7. 如何添加資源:XML文件
- 8. 如何手動將資源添加到Win32資源文件
- 9. 安卓:如何加密和解密資源文件和應用程序
- 10. Android在應用程序中加密和解密資源文件
- 11. 如何gradle這個和其他資源文件夾添加資源文件夾
- 12. 如何從資源文件
- 13. ASP.NET .resx資源文件中的有效資源密鑰
- 14. WPF加資源(RESX文件)
- 15. 從文件加載資源
- 16. 從資源加載文件
- 17. SqueakSource添加資源文件
- 18. 如何將文件添加到XCode中的資源文件夾?
- 19. 如何獲得加載文件資源文件夾下階SBT
- 20. 如何從代碼添加文件到QT資源文件?
- 21. 如何從資源文件(.rc文件)加載位圖?
- 22. 在資源受限的移動設備中加密文件
- 23. 資源文件
- 24. 資源文件
- 25. 從資源加載文本文件
- 26. 如何加密資產
- 27. C#資源文件 - 如何從XAML訪問內部資源?
- 28. 如何獲取資源文件中所有資源的名稱
- 29. Intellij - 如何將文本文件添加到資源
- 30. BOSH - 資源密集程度如何?
MD5不是加密算法。如果你加密他們,你還必須提供一個密鑰,並加密密鑰,並加密密鑰的密鑰,... – EJP 2013-02-27 21:59:55
爲什麼你不能把資源放入JAR文件? – EJP 2013-02-27 23:19:55
如果我把資源放在jar文件中,那麼它就成爲我不喜歡的一個巨大的exe文件。我希望我的遊戲名稱和程序文件文件夾中的所有.dat文件與遊戲launcher.exe具有代碼。 – user1883799 2013-02-28 15:25:43