2017-04-21 25 views
1

我似乎只能得到罐子的文件夾,而不是裏面的內容。如何檢查您正在運行的JAR歸檔中的內容?

基本上有人破解我的程序,他們把一個文件放在JAR裏面,程序從裏面加載,我想在API裏面添加一些鬼鬼祟祟的檢查,我用來檢查裏面是否有額外的文件,產品如果是這樣。

所以 - 如何檢查JAR文件中的任何.json或.file文件?我看着這個,Viewing contents of a .jar file,但沒有得到我想要的答案。

謝謝。

+0

[Java Decompiler](http://jd.benow.ca/) –

+0

您鏈接的帖子中的答案將與您在此獲得的答案相同:1.使用'jar tf your-jar' 2。使用7-Zip或WinRar 3等軟件進行提取。使用反編譯器,如JAD。你也可以在運行時使用'JarFile'加載內容,並且你可以混淆你的代碼來阻止黑客。 –

+2

說實話,這是JAR簽名和校驗和是什麼 – Igor

回答

0

爲了驗證一個jar是不變的,在jar上簽名或者使用像SHA256這樣的校驗和更加常用和可靠。

簽名您的jar的行爲就像打開jar時破壞的密封。簽署一個jar需要花費和時間,所以它通常只用於生產型軟件。

將根據所有二進制和其他內容計算校驗和。如果內容改變,那麼校驗和也會改變。使用SHA256校驗和將導致重複散列幾乎不可能,尤其是對於工作代碼。

+0

我沒有花錢 - 如何手動檢查jar是否有額外的文件?我還計劃編輯API並插入此代碼,因爲它是一個大API,沒有人會知道它隱藏在那裏。 –

+0

從內部運行您關心的文件夾的校驗和。如果校驗和改變,則內容改變(即添加/刪除)。 – Igor

相關問題