數字簽名
用Applet寫的java小程序如果沒有經過簽名,那麼訪問客戶端程序下載後會受到安全限制;怎樣對java小程序簽名受到很多人的關註,網上也有這些方面可供參考的文檔,但都不是完整,在這裡我給出一份可具體操作的文檔,希望能給大傢一些幫助。
場景:test.jar:內含待簽名的java小程序
結果:簽名後,客戶端能自動下載java小程序,且java小程序能訪問客戶端的任何資源
步驟:
(1)將java小程序打包
jar cvf test.jar test.class
(2)生成名為chinani.store的密鑰庫,別名為chinani
keytool -genkey -keystore chinani.store -alias chinani
密碼:123456 (根據需要自己輸入)
以下根據需要輸入,最後確認:y
(3)導出chinani.cer數字證書
keytool -export -keystore chinani.store -alias chinani -file chinani.cer
密碼:123456 (根據需要自己輸入)
(4)對test.jar文件進行簽名
jarsigner -keystore chinani.store test.jar chinani
密碼:123456 (根據需要自己輸入)
最後寫一個html文件,運行此文件即可自動下載安裝運行java小程序
< html >
< head >
< meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″ >
< meta name=”GENERATOR” content=”Microsoft FrontPage 4.0″ >
< meta name=”ProgId” content=”FrontPage.Editor.Document” >
< title >New Page 1< /title >
< /head >
< body >
< !–能自動下載jre包– >
< OBJECT
classid=”clsid:CAFEEFAC-0014-0000-0000-ABCDEFFEDCBA”
WIDTH = 300 HEIGHT = 300
codebase=”jinstall-1_4_0-win.cab#Version=1,4,0,0″ >
< PARAM NAME = CODE VALUE = “test.class” >
< PARAM NAME = ARCHIVE VALUE = “test.jar” >
< PARAM NAME=”type” VALUE=”application/x-java-applet;jpi-version=1.4″ >
< PARAM NAME = “scriptable” VALUE = “false” >
< /object >
< /body >
< /html >