Java Applet签名验证

宏碁笔记本安装Linux双系统及扩容指南 Linux双系统安装是开发者和技术爱好者常见的需求,特别是在保持Windows系统的同时体验Linux开发环境。通过UEFI启动和GPT分区方案,可以实现更灵活的系统管理。本文以宏碁笔记本为例,详细介绍了从BIOS设置、磁盘分区到Linux安装的全过程,特别推荐使用Ventoy启动盘工具和DiskGenius分区工具提高效率。针对常见的Grub引导丢失和硬件驱动问题,提供了实用的解决方案。对于需要动态调整存储空间的用户,还介绍了GParted和LVM等高级分区管理技术。这些方法在Swift 3和Nitro 阅读详情
本系统的客户程序是Java Applet,但它的执行需要读本地硬盘,以及进行安全算法方面
  操作,这些操作都需要有本地Application的权限,而无法在普通的沙箱机制的限制下运
  行。
  1 沙箱机制对Applet的安全性限制
  在浏览器或者appletviewer中运行远程主机上存放的Applet时,Java VM认为它是不可信
  任的,将其置于所谓sandbox的保护之下,在这样的情况下Applet的运行受到下面的限制
  :
  b) Applet不能读写客户端主机上的文件
  c) Applet不能执行JCE/JCA中的addProvider操作
  d) 在进行网络连接时Applet只能与提供它的服务器建立连接
  e) Applet在事件捕获、读取系统信息等其他方面受到限制
  f) 在Netscape浏览器中,不提供java.security.*的支持,在IE浏览器中对Applet的运行
  做了比appletviewer中更加高的限制
  由于上述的限制,安全公文传递系统的客户程序直接在浏览器或appletviewer中运行时会
  遇到下列问题:
  b) 客户程序无法读写客户机的存储设备
  c) 客户程序无法执行addProvider操作
  d) 在使用额外类库时发生Security Exception
  e) 在Netscape浏览器中因为缺乏java.security.*的支持而完全无法运行
bitsCN_com

  f) 在IE浏览器中发生更多的Security Exception
  产生这些问题的原因是各种java VM将公文系统的客户程序视为不可信任的。解决的方法
  是要使Java VM信任公文系统的客户程序。
  3 Applet的签名和信任机制
  要使Applet得到虚拟机的信任就要有办法让虚拟机知道Applet是可信任的人提供的。SUN
  、Netscape
  Communicator和IE4.0各自提供了一套互相之间不兼容的Applet签名机制。它们的原理都
  是相同的,就是通过验证一个可信任的签名者的数字签名,来验证Applet是由可信任的作
  者提供的。在安全公文传递系统中我们采用了SUN提供的签名机制,并通过安装java
  plugin使得在各种浏览器中都可以使用这套签名机制。
  SUN在JDK1.X版本中提供了一个名为javakey的小程序。它能够替开发者完成对Applet进行
  数字签名的所有步骤,也能替最终用户完成设置对开发者信任的工作。要对Applet进行数
  字签名之前,必须用JDK的另外一个工具程序jar将applet中用到的类打包成一个.JAR文件
  。这样建立一套基于ja
  vakey的Applet签名和信任体系包括下列三项工作:
  * 用jar工具创建.JAR文件
  * 用javakey创建数字签名 bitsCN_com
  * 在客户端安装java plugin,并设置对签名人的信任
  下面分别阐述这三项工作。
  4 用jar工具创建.JAR文件
  JAR是Java
  Archive的缩写。Jar工具的主要功能是将文件压缩和打包。JDK提供jar工具的目的主要是
  让用户可以将applet中用到的class文件和其他文件压缩打包到一个文件中,当浏览
  applet时通过一从http的传输将它们一并下载到客户端,节省多次下载多个小文件所浪费
  的协议建立时间。客户程序
  在下载了applet的.jar文件后就可以运行applet而无需再继续下载其他文件了。Javakey
  在生成数字签名时要求有关的类都打包在一个.jar文件中,它生成的数字签名也会自动添
  加到这个.jar文件中去。
  使用了.jar文件后html中的applet标记略有不同,比普通的多出了一个archive项,例如
  :
  
  jar是命令行工具,常用的形式有:
  jar cf myjarfile *.class:将当前目录的所有.class文件加到文件myjarfile中去
  jar cvf myjarfile mydir:将mydir里面所有文件加到文件myfile中去 需要什么来搜一搜吧so.bitsCN.com
  jar工具的详细使用方法在JDK的文档有介绍。
  6 用javakey创建数字签名
  javakey包括非常丰富的命令和参数,能够为用户创建密钥对和证书。详细的说明可以在
  JDK的文档中找到。简单来说,用javakey创建运行带数字签名的.jar文件主要包括下列步
  骤:
  2. 创建signer并设置为信任的,格式为:
  javakey cs jiewen true
  如果创建时没有指定true参数,新建的signer将是不信任的,可以用
  javakey t jiewen true
  5. 创建公钥/私钥对,由于SUN本身提供对DSA算法的实现,所以一般都创建DSA的密钥对
  :
  javakey gk mysigner DSA 512
  512表示密钥长度为512位
  8. 创建signer的证书,创建证书时需要编辑一个说明文件说明证书的内容,创建证书的
  命令行格式为:
  javakey -gc 说明文件
  说明文件的主要内容为:
  issuer.name=jiewen
  #签发人名字,如果没有则指定自己的名字
  #issuer.cert=1
  #如果签发人不是自己,则要指定这项
  subject.name=jiewen
  #拥有人的名字
  subject.real.name=Zheng Jiewen
  subject.org.unit=Nc
  subject.org=Scut

bitsCN_net中国网管博客


  subject.country=China
  #以上为拥有人的详细资料
  start.date=19 Aug 1998
  end.date=19 Aug 1999
  #有效期
  serial.number=1001
  #序列号
  out.file=cert.cer
  #输出文件名称
  
  12. 对JAR文件进行数字签名,需要编辑一个说明文件来说明签名操作的细节。命令行为
  :
  javakey -gs 说明文件 jar文件
  说明文件的主要内容为:
  signer=jiewen
  #指定签名人
  cert=1
  #指定用签名人的哪个证书
  chain=0
  #必须指定但没有意义
  signature.file=jiewen
  #签名存储在哪个文件里面
  out.file=out.jar
  #输出的jar文件的文件名
  
  14. 在客户端创建signer,并信任之:
  javakey c jiewen true
  
  16. 在客户端安装signer的证书,命令行为:
  javakey ic jiewen jiewen.cer
  jiewen为signer的名字,jiewen.cer为存放证书的文件。
  完成上述操作后客户端的appletviewer就能够以信任方式来运行签名了的applet了。这时
  applet获得的权限和本地的application是一致的。
  7 安装和配置Java plugin bitsCN_com关注网管是我们的使命
  Java plugin是一个浏览器的plugin产品。在浏览器中安装了这个plugin后用户就可以在
  浏览器环境下用SUN的Java虚拟机来运行网页中的applet了。安全公文传递系统的客户程
  序用javakey进行数字签名,必须在SUN的java虚拟机中才能被识别,因此必须在客户端安
  装java plugin。
  Java plugin并不能令普通的含有applet标记的html文件在SUN的java虚拟机中运行applet
  ,它只认识为它设计的特殊标记。为了产生含有这样特殊标记的文件,可以到SUN的站点
  下载专门的转换器,将含有applet标记的html文件转换为含有java plugin使用的html标
  记的文件。
  Java plugin的安装非常简单,只需下载安装文件并运行之,安装程序就会自动完成安装
  工作了。但是单纯安装java plugin是无法以信任方式运行客户程序的,还要在java
  plugin的运行环境中设置对signer信任和安装signer的证书。要做到这点,必须分两步进
  行。
  首先要知道java plugin的home目录是什么,方法是:运行java plugin的control panel
  ,打开里面的Show Java Console选项,然后到浏览器里面浏览要运行的applet所在的网
  页,这时就会出现java console窗口,里面有一行是User home directory = 厖,就是当 bbs.bitsCN.com国内最早的网管论坛
  前的home目录了。
  知道了home目录后就要把包含有信任信息和签发人证书的文件拷贝到这个目录中去。如果
  用户有jdk的话,可以用jdk的javakey工具按照前面的说明来设置信任和安装证书,然后
  在jdk的安装目录(如果使用windows)或者用户的home目录(如果使用unix)找到一个名
  字为identitydb.obj的
  文件,将这个文件拷贝到java plugin的home目录中,设置的信任就生效了。如果用户没
  有jdk,可以下载安装jdk来创建这个文件,或者可以从别人处拷贝这个identitydb.obj文
  件,并安装到自己的java plugin的home目录中。
  
  另外,如果是在局域网内,也可以在浏览器内设置安全级别,将Applet所在的主机设成可信
  任的站点,这样就可以设置Applet的安全级了.IE4是可以的,别的没试过.
用Applet写的java小程序如果没有经过签名,那么访问客户端程序下载后会受到安全限制;沙箱机制对Applet的安全性限制在浏览器或者appletviewer中运行远程主机上存放的Applet时,Java VM认为它是不可信任的,将其置于所谓sandbox的保护之下,在这样的情况下Applet的运行受到下面的限制 :

a) Applet不能读写客户端主机上的文件
b) Applet不能执行JCE/JCA中的addProvider操作
c) 在进行网络连接时Applet只能与提供它的服务器建立连接
d) Applet在事件捕获、读取系统信息等其他方面受到限制
e) 在Netscape浏览器中,不提供java.security.*的支持,在IE浏览器中对Applet的运行做了比appletviewer中更加高的限制

  怎样对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文件内容如下:

 
Linux笔记本适配核心:ACPI休眠、固件兼容与电源策略深度解析 Linux在笔记本上的可用性远不止‘能装能亮屏’,其本质是硬件抽象层(ACPI/EC)、内核驱动栈(iwlwifi/amdgpu)与电源管理策略(S3休眠、动态调频)的系统级协同。理解ACPI S3状态机、无线网卡固件加载机制、触控板HID-RMI协议支持等底层原理,是解决合盖不休眠、WiFi断连难恢复、指纹识别失效等高频问题的关键。技术价值在于将碎片化硬件适配转化为可验证、可复现的工程实践——通过dmesg日志诊断、发行版固件仓库对比、Live环境三步压力测试,实现从‘碰运气安装’到‘精准匹配’的跃迁。本 阅读详情

相关推荐

Linux发行版选择指南:新手入门与实战建议

Linux作为开源操作系统的代表,其发行版选择一直是初学者面临的第一个技术决策点。从技术原理看,不同发行版本质都是Linux内核与GNU工具链的组合,差异主要体现在软件包管理、系统配置方式和社区生态上。对于开发者而言,选择合适的发行版能显著提升开发效率,特别是在容器化部署、持续集成等现代开发场景中。Ubuntu凭借完善的apt包管理体系和庞大的社区资源,成为多数新手的最佳起点;Fedora则以其前沿技术集成适合追求新特性的用户;Linux Mint则提供了最接近Windows的平滑过渡体验。实际选择时,应重

weixin_31528001的博客 328

Java AppletJava Web Start进行数字签名

Java AppletJava Web Start进行数字签名

2025 Linux图像查看器硬核评测:专业级色彩管理与Wayland原生支持

图像查看器不仅是打开图片的工具,更是现代Linux视觉工作流的核心节点。其底层依赖图像解码引擎、色彩管理(ICC v4/Display P3)、内存映射策略与Wayland协议兼容性等关键技术。在专业场景中,能否准确还原RAW/HEIC/AVIF的色域、高效加载超大TIFF、实现无损元数据操作,直接决定设计、摄影与科研效率。本文聚焦2025年主流开源查看器在真实生产环境中的稳定性、生产力与扩展性表现,特别验证gThumb、nomacs、feh等对HDR显示、Vulkan加速、脚本化批量处理及安全审计的落地能

weixin_33806914的博客 413

一个Java Applet的动态显示图片的小程序

简单的一个Java Applet的动态显示图片的小程序。将资源内的图片放置到E盘根目录下。如果想换图片,记得修改width和heigh的初始值,值为图片的宽和高。如果你对动画有兴趣,可以试着稍微修改一下本程序(程序里有相关的提示),添加几张连续的图片,就可以实现了。我的另一个同名的资源,是我上传错的,功能都有,但差了点代码。建议下载这个。

Java Applet 数字签名

在Web应用使用Applet有时是一种不错的选择,例如在flex中加入特色上传功能等就可将Applet做为备选方案之一。而Applet需要访问本地资源时需要得到客户机器的认可,很自然我们会想到网络知识中的数字签名(digital signature)。而对java Applet的数字签名较为方便。 在数字签名之前将我们编写的Applet应用导出jar包,而后主要利用java se中提供的keyto

指尖思维 4116

java applet签名_java applet 签名

关键字:jarsigner 找不到证书链注意:JAVA最好用安装版的,否则可能浏览器找不到applet插件详见如下代码:1、Applet类package com;import java.applet.*;import java.awt.*;import java.io.IOException;public class HelloApplet extends Applet {public void ...

weixin_30320771的博客 269

java applet控件制作签名

applet 生成 签名 证书     生成证书:keytool -genkey -alias sso_server -keypass sso_key -keyalg RSA -keysize 1024 -validity 365 -keystore E:\key_store\sso_server.keystore -storepass sso_store 参数信息: alias指定生成...

学无止境 621

java applet签名_java applet 签名问题

用eclipse 开发了一个applet 应用,部署到网页上面,运行时,总出现一个错误:Error:access denied ("java.net.SocketPermission" "192.168.0.50:5500" "connect,resolve")其实出现这个错误的一个重要原因是,applet没有签名。因此不能访问本地资源,包括socket,涉及I/O的一些操作。解决方法如下:一、用...

weixin_28750379的博客 314

Fedora 15 笔记本触摸板禁用

yum -y install xorg-x11-apps xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 0

zouhao619的专栏 879

linux定制安装过程_定制新Linux安装的提示

linux定制安装过程 我最近在全新笔记本电脑上从头开始安装了最新版本的Fedora 26。 如果您使用Linux已有一段时间,则可以选择升级而不是全新安装来保持您的首选项和配置不变。 毕竟,谁愿意在每次您喜欢的发行版(在我的情况下为Fedora)的新版本发布时去搜索定制? 更多Linux资源 Linux命令备忘单 高级Linux命令备忘单 免费在线课程:RHEL技术概述 ...

cumo7370的博客 380

老电脑焕新指南:用openSUSE LEAP打造稳定高效的Linux桌面环境

操作系统是计算机的核心软件,负责管理硬件资源和提供用户交互界面。其原理在于通过内核调度进程、管理内存和驱动硬件,为用户和应用程序提供服务。在技术价值上,一个优秀的操作系统能最大化硬件性能、保障系统安全并提供丰富的软件生态。随着Windows 10主流支持即将结束,许多老旧电脑面临淘汰风险,而Linux发行版因其轻量、稳定和开源特性,成为老硬件重获新生的理想选择。在应用场景上,Linux不仅适用于服务器和开发环境,其桌面发行版也日益成熟,能够满足日常办公、网页浏览和影音娱乐等需求。本文以openSUSE LE

weixin_30333885的博客 333

2020轻量级Linux发行版实战评测:老旧硬件唤醒指南

轻量级Linux发行版是指专为低资源环境设计的操作系统,其核心原理在于精简内核、裁剪服务、优化图形栈与内存驻留机制。技术价值体现在可部署性、长期维护性与硬件兼容深度,尤其适用于教育机房、政务终端、边缘计算节点及二手办公设备等场景。在CPU主频低于2.0GHz、内存≤2GB、机械硬盘为主的‘性能临界区’设备上,实测内存占用峰值与冷启动响应时间比ISO体积更具参考意义。本文聚焦Puppy Linux、antiX、Bodhi Linux等主流轻量发行版,结合Intel GMA X3100显卡兼容性、frugal

weixin_34210740的博客 352

IntelliJ IDEA 2025.1安装机制深度解析:JDK发现、Runtime嵌入与跨平台适配

IntelliJ IDEA 是一款面向Java等JVM语言的集成开发环境(IDE),其安装过程涉及JDK环境识别、运行时(Runtime)配置与多平台兼容性等核心机制。2025.1版本重构了底层安装器,引入Runtime-Embedded JDK Discovery机制,不再依赖PATH或JAVA_HOME,而是通过签名验证扫描标准路径下的JDK;同时统一为单安装包架构,并强制集成JetBrains Runtime(JBR)。这一变化直接影响开发者环境配置、自动化部署脚本及CI/CD流水线稳定性。在Wind

weixin_33739627的博客 511

GXDE OS 26 深度体验:基于 Debian 的轻量 Linux 桌面与 Android 应用兼容

这次我们来看一个专注于桌面体验的 Linux 发行版——GXDE OS。如果你对深度桌面环境(DDE)有情怀,或者正在寻找一个开箱即用、轻量且稳定的 Linux 桌面系统,那么 GXDE OS 值得关注。它不是简单的系统封装,而是基于 Debian,持续优化和集成,旨在提供优雅、高效的桌面环境。 根据网络信息,GXDE OS 近期更新到了 25.3 版本,并预告了 OS26 的相关进展。对于普通用户和开发者而言,最关心的无非是:它解决了什么问题?硬件门槛高吗?安装部署是否方便?日常使用和开发体验如何?本文将

cuemes08808的博客 483
上一篇: Policy Tool — 策略文件创建和管理工具
下一篇: Java安全通信、数字证书及应用实践
yangxt
博客等级 码龄20年 172粉丝 78原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值