2013-11-21 54 views
0

我是新來認證java.Just在另一篇文章中就在剛纔,我發現這是不可能使用的jarsigner的Java應用程序,它僅用於applets.Could人確認這一點?認證罐(不含小程序)

接下來,我想知道,什麼是常見的方式人民開發商給thier應用到客戶端,我的意思是做自己不把任何證書呢?我的意思是一年或者半年的證書。

這我說的是相對於

UPDATE 這是我嘗試了正常的Java應用程序不是一個小程序:我昨天jarsigned我的應用程序,給了1天的有效性,當今天我看到它永遠不會過期。所以我纔想知道它是否僅適用於小程序?

+0

任何罐子都可以簽名。只有少數特殊情況必須是。應用程序可以執行自己的簽名檢查。 – mkl

+0

怎麼辦呢?請提供一些幫助 –

+1

您可能需要閱讀Java教程[代碼簽名並授予它的權限(http://docs.oracle.com/javase/tutorial/security/toolsign/index.html)課。它是[Java SE中的安全功能](http://docs.oracle.com/javase/tutorial/security/TOC.html)的一部分,您可能想完全學習。 – mkl

回答

1

如果你有給你們送罐到客戶端的可信方式,你不必簽署它。一個「正常的」Java程序對簽名的jar也不會做任何不同的事情。

但是是有區別的,如果你使用的分發應用程序的其他方式。你已經提到過小程序。用戶不能確定誰在提供應用程序。通過簽名,你可以確保它來自可信任的人(你)。

另一個大的用例是Java Webstart。如果你想用這個工具分發你的應用程序(一個好主意),你需要簽署Jar文件,如果你的應用程序想要有一些額外的權限(如訪問文件,網絡IO,類似的東西)。如果用戶信任這些證書,則啓動該應用程序。

至於時間:通常這些應用程序與相當長的效度(> 2年)比應該一輩子應用簽署,通常較長。

+0

無論我做了什麼研究,我都找到了許可一個java應用程序而無需使用期限的東西 –

+1

嗯,它並不意味着許可。簽署jar是爲了確保用戶可以信任代碼沒有被篡改。對於許可,您可以輕鬆實施自己的機制。 – Matthias

+0

jarsigner中的有效性標誌怎麼樣? –