`
longzhu007
  • 浏览: 47813 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

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 类型: JKS

Keystore 提供者: 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.将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"这句话。

       好了,最激动人心的时刻到来了,请用浏览器打开这个网页,会看到一个安全提示。点击运行按钮,即可看到正确的执行了操作,在用户的C盘上创建了一个文件!很好,我们可以为所欲为了,像写普通Java应用那样来写Applet了!如果点击取消按钮,那很自然的无法创建文件,用户拥有选择权,当然,如果是企业的客户,自然都是让他们选择运行按钮。其实通过这里读者也可以注意到,现在好多网站(例如视频分享的网站等),都会提示您下载一些插件提供增强的功能,然而,他们的数字证书和这里的一样,都是自己造的(其实就是伪造),所以,装完后并不能保证是否夹杂了病毒或者恶意代码,所以读者上网时千万要谨慎识别,不要随意点击在线安装或者运行软件。

分享到:
评论
6 楼 longzhu007 2009-02-14  
收到,谢谢
5 楼 jvincent 2009-02-14  
要花钱的...有很多这样的CA认证公司.
4 楼 longzhu007 2009-02-14  
daquan198163 写道

问题就是用户浏览器会弹出警告,造成麻烦。 如果是CA颁发的证书(也就是CA在你的证书上做数字签名),并且这个CA已经包含在浏览器的信任列表里了,浏览器就会信任你的证书,并用它来验证你签名的jar包

哪怎么才能获得ca办法的证书呢?
3 楼 daquan198163 2009-02-13  
问题就是用户浏览器会弹出警告,造成麻烦。
如果是CA颁发的证书(也就是CA在你的证书上做数字签名),并且这个CA已经包含在浏览器的信任列表里了,浏览器就会信任你的证书,并用它来验证你签名的jar包
2 楼 longzhu007 2009-02-13  
daquan198163 写道

ca颁发的证书才是可信的


恩?是吗?我也是刚开始接触这个东东呀,以后还要多多指教!对了,这样会不会出什么问题呢?
1 楼 daquan198163 2009-02-13  
ca颁发的证书才是可信的

相关推荐

    applet签名的方法

    在Java中,对Applet签名意味着使用私钥对Applet的字节码进行加密,然后使用对应的公钥验证。这使得用户可以检查Applet是否来自可信的源,并决定是否给予额外的权限。 **签名步骤** 1. **获取证书**:首先,你需要一...

    applet签名

    为了打破这些限制并确保代码的来源可信,Java引入了“Applet签名”这一概念。 Applet签名是Java平台为了保护用户安全而实施的一项机制,它允许开发者证明其代码的来源和未被篡改。签名过程涉及到了公钥加密技术,...

    applet签名 方法

    在IT领域,尤其是在Java开发中,Applet签名与JAR文件签名是确保代码来源可信、保护用户免受恶意代码侵害的重要环节。以下是对标题“applet签名方法”以及描述“applet签名 jar签名工具”的详细解析,涵盖相关知识点...

    JavaApplet数字签名方法和打包签名工具

    本篇文章将深入探讨JavaApplet的数字签名方法以及如何使用打包签名工具JavaAutoPlug.exe来实现这一过程。 首先,理解数字签名的概念是必要的。在计算机安全领域,数字签名是对数据的一种加密验证,类似于纸质文档上...

    applet签名过程

    ### Applet签名过程详解 #### 一、引言 在Java技术栈中,Applet是一种在Web浏览器中运行的小应用程序,它可以嵌入到HTML页面中并由Java虚拟机执行。为了确保Applet的安全性,避免恶意代码对用户系统造成损害,Java...

    applet数字签名

    2. **签名Applet**:使用私钥对Applet的字节码进行签名,这一步通常通过构建特定的命令行指令完成,如`jarsigner`工具。 3. **策略文件**:为了让浏览器信任签名的Applet并赋予其特定的权限,需要创建一个策略文件...

    给Applet签名的Shell脚本

    对打成jar包的applet进行签名的shell脚本,以保证能在页面上运行 1.GenLicense.sh为生成密钥文件的脚本 该脚本执行会生成.store和.cert两个文件 其中keytool命令中 -keypass changeit //签名的密码为"changeit" ...

    applet签名制作

    Applet签名制作是Java开发中的一个重要环节,尤其是在早期的Web应用程序中,Applet是一种常见的用于在浏览器中执行Java代码的小程序。为了确保Applet的安全性和防止恶意代码的运行,Java引入了签名机制。本文将详细...

    java applet 签名可控制键盘按键 实现B/S下的一键操作

    可控制键盘按键 当applet用需要签名才有权限

    Ant打包Applet并添加数字签名

    总结一下,Ant打包Applet并添加数字签名涉及到的主要步骤包括:配置Ant的build.xml文件,定义编译和打包的目标,设置JAR的manifest信息,使用`jarsigner`对JAR文件进行签名,并确保所有操作符合Java的安全策略。...

    applet-数字签名-访问windows注册表

    NULL 博文链接:https://stephen830.iteye.com/blog/254549

    2022年Java2下Applet数字签名Java教程.docx

    为了增强用户对Applet的信任并解除这些限制,Java提供了数字签名机制。本教程将详细介绍在Java 2环境下,如何为Applet进行数字签名,以及相关的Java知识。 一、Java Applet与数字签名 1. Java Applet:Java Applet...

    Ant打包Applet并添加数字签名.rar

    用户访问这个页面时,浏览器会检查Applet的数字签名,如果签名有效,Applet就会被加载并执行。 总结一下,Ant在打包Applet时的主要步骤包括: 1. 配置Ant构建文件(如`build-applet.xml`),指定源代码位置、输出...

    applet下载操作及权限问题

    - **签名与权限请求**:如果Applet需要进行文件操作,必须先进行数字签名,然后在代码中使用`java.security.SecurityPermission`请求相应的权限。用户在弹出的安全警告对话框中确认后,Applet才能执行相应操作。 4...

    java的applet实例

    - Applet可以使用`signed`方式签名,以获取更多的系统权限,但这样可能会带来安全风险。 5. **Applet的替代技术** - JavaScript和AJAX提供了更灵活、更易于实现的客户端交互功能,而无需Java插件。 - Java Web ...

Global site tag (gtag.js) - Google Analytics