Applet数字签名
1.keytool -genkey -dname "cn=BeanSoft Studio, ou=Java Software, o=BeanSoft Studio, c=China" -alias beansoft -keypass beansoft -storepass beansoft -validity 365 -keystore .\beansoft这段命令将会创建一个数字文件放在当前目录的二进制文件beansoft中。该证书的别名是beansoft(通过-alias指定),密钥的密码是beansoft(-keypass命令指定),存储密钥的文件密码也是beansoft(- storepass命令指定),证书的有效期是365天(通过-validity指定)2.检查下这份证书文件的内容,执行下面的命令:keytool -list -keystore .\beansoft -storepass beansoft会输出信息:Keystore 类型: JKSKeystore 提供者: SUN您的 keystore 包含 1 输入beansoft, 2008-5-7, PrivateKeyEntry,认证指纹 (MD5): 16:15:A0:47:92:96:29:96:93:5D:F0:76:F7:D0:2C:84。这说明证书没有问题。3.在命令行里输入: jar -cvf applets.jar *.class将Applet的类文件打包成jar文件,名为applets.jar,放在项目的根目录下。接着就进入最关键的,对JAR文件进行签名了,键入下列命令:jarsigner -verbose -keystore .\beansoft applets.jar beansoft接着提示信息为:输入密钥库的口令短语:beansoft按下回车,即可看到签名过程: 正在添加: META-INF/MANIFEST.MF 正在添加: META-INF/BEANSOFT.SF 正在添加: META-INF/BEANSOFT.DSA 正在添加: applets/正在签名: applets/FileOperationApplet.class正在签名: applets/LifeCycleApplet.class正在签名: applets/MyApplet.class正在签名: applets/usb.jpg可以看到META-INF目录下将会多出两个数字指纹文件,运行的时候JVM将会和类文件进行对比,确保文件没被人篡改过4.好了,现在的applets.jar已经今非昔比了,它是个被签名过的JAR,怎么使用它呢?需要在它所在的同一目录下,即项目根目录下,新建一个HTML文件,代码清单如下:FileOperationAppletSigned.html<html><body><applet code=applets.FileOperationApplet.class archive="applets.jar" width="200" height="200" ></applet></body></html>唯一的不同,就是多了粗斜体的archive="applets.jar"这句话。
页:
[1]