六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 32|回复: 0

Applet数字签名

[复制链接]

升级  64%

8

主题

8

主题

8

主题

童生

Rank: 1

积分
32
 楼主| 发表于 2013-2-7 15:07:06 | 显示全部楼层 |阅读模式
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"这句话。
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表