Ant实战之Jar文件数字签名的制作

Java JAR包签名与打包工具详解 Keystore是一个用于存储加密密钥和证书的安全容器,通常以文件形式存在,例如.jks或.keystore。每个Keystore中可以包含多个条目,每条条目可以是以下类型之一:密钥对(Key Entry):包含私钥和对应的公钥证书链。信任证书(Trusted Certificate Entry):仅包含公钥证书,表示信任该证书的颁发者。Keystore文件本身受到密码保护,只有提供正确的密码才能访问其中的密钥和证书。keytool。 阅读详情

build.properties
  ==================================
  #public info
  
  module = test
  
  JAVA_HOME = C://j2sdk1.4.2_04
  
  keystore = Yoinn.store
  # 别名
  alias = Yoinn
  # keystore密码
  storepass = password
  # 主密码
  keypass = password
  
  # 证书文件名
  cer.file = NeuLion.cer
  
  # dname info
  # dname {CN=1, OU=1, O=1, L=1, ST=1, C=1}
  # 名字与姓氏
  dname.CN = name
  # 组织单位名称
  dname.OU = organizationUnitName
  # 组织名称
  dname.O = organizationName
  # 所在的城市或区域名称
  dname.L = DL
  # 所在的州或省份名称
  dname.ST = LN
  # 该单位的两字母国家代码
  dname.C = CN
  
  # about keytool
  keytool = keytool.exe
  keytool.home = ${JAVA_HOME}/bin
  
  # about jarsigner
  jarsigner = jarsigner.exe
  jarsigner.home = ${JAVA_HOME}/bin
  
  ------------------------------------------------ 中国网管论坛bbs.bitsCN.com
  
  build.xml
  ================================
  <!-- Copyright (c) 2004 by Yoinn. All Rights Reserved. -->
  <project name="JarSignerBuilder" default="jarsigner" basedir=".">
  
   <!-- set global properties for this build -->
   <property file="build.properties" />
   <property name="dist" value="./dist" />
  
   <property name="deploy.dir" value="${basedir}" />
  
   <!-- ********************************************************* -->
  
   <!-- dname {CN=1, OU=1, O=1, L=1, ST=1, C=1} ?-->
  
   <!--名字与姓氏-->
   <property name="commonName" value="${dname.CN}" />
   <!-- 组织单位名称 -->
   <property name="organizationUnit" value="${dname.OU}" />
   <!-- 组织名称 -->
   <property name="organizationName" value="${dname.O}" />
   <!-- 所在的城市或区域名称 -->
   <property name="localityName" value="${dname.L}" />
   <!-- 所在的州或省份名称 -->
网管下载dl.bitscn.com


   <property name="stateName" value="${dname.ST}" />
   <!-- 该单位的两字母国家代码 -->
   <property name="country" value="${dname.C}" />
  
   <property name="dname" value="CN=${commonName},OU=${organizationUnit},O=${organizationName},L=${localityName},ST=${stateName},C=${country}" />
  
   <!-- ********************************************************* -->
  
   <target name="init">
   <mkdir dir="${dist}" />
   </target>
  
   <target name="keytool" depends="undeploy">
   <echo message="keytool..." />
   <echo message="dname = { ${dname} }" />
   <exec dir="${deploy.dir}" executable="${keytool.home}/${keytool}" os="Windows 2000">
    <arg line="-genkey" />
    <arg line="-dname ${dname}" />
    <arg line="-keystore ${keystore}" />
    <arg line="-alias ${alias}" />
    <arg line="-storepass ${storepass}" />
    <arg line="-keypass ${keypass}" />
网管网www.bitscn.com


   </exec>
   <exec dir="${deploy.dir}" executable="${keytool.home}/${keytool}" os="Windows 2000">
    <arg line="-export" />
    <arg line="-keystore ${keystore}" />
    <arg line="-storepass ${storepass}" />
    <arg line="-alias ${alias}" />
    <arg line="-file ${cer.file}" />
   </exec>
   <echo message="keytool...done." />
   </target>
  
   <target name="jarsigner" depends="keytool">
   <!-- Sign the jar -->
   <echo message="jarsigner..." />
   <exec dir="${deploy.dir}" executable="${jarsigner.home}/${jarsigner}" os="Windows 2000">
    <arg line="-keystore ${keystore}" />
    <arg line="-storepass ${storepass}" />
    <arg line="${module}.jar" />
    <arg line="${alias}" />
   </exec>
      <echo message="jarsigner...done." />   
   <delete file="${keystore}" />
   <delete file="${cer.file}" />
   <delete dir="${dist}" />
网管论坛bbs_bitsCN_com


   </target>
  
   <target name="undeploy">
   <delete file="${keystore}" />
   <delete file="${cer.file}" />
   </target>
  
  </project>
【转自www.bitsCN.com】

Android Audio - 支持多应用同时录音_Android8.1修改方法 支持多应用同时录音_Android8.1修改方法 源码路径: sdk\frameworks\av\services\audiopolicy\managerdefault\AudioPolicyManager.cpp 需要修改两个位置: audio_io_handle_t AudioPolicyManager::getInputForDevice() 在mpClientInterface-&gt... 阅读详情

相关推荐

保姆级教程:用NovAtel Inertial Explorer 8.7搞定GNSS/INS紧组合后处理(附避坑指南)

本文提供NovAtel Inertial Explorer 8.7的GNSS/INS紧组合后处理全流程教程,涵盖环境准备、数据转换、基站坐标解算及紧组合处理等关键步骤。特别针对零基础用户,分享实用技巧和常见陷阱,帮助高效完成高精度组合导航数据处理,适用于测绘、自动驾驶等领域。

weixin_42614269的博客 282

Ant内置任务之signjar

signjar是Ant内置任务,用于使用jarsigner命令行工具签名jar文件。

荣耀之路 1206

Win11系统重装全记录:从备份Office激活到搞定RAID阵列,我的微星笔记本复活记

本文详细记录了Win11系统重装的完整过程,从数据备份到RAID阵列配置,特别针对微星笔记本的特殊硬件驱动问题提供了解决方案。文章涵盖了Office激活状态备份、BIOS设置、驱动安装顺序等关键步骤,帮助用户顺利完成系统重装并优化性能。

weixin_31421613的博客 309

Ant实战之Jar文件数字签名的制作(原创)

<!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"

zgqtxwd的专栏 534

从SFF-8087到SFF-8643:详解服务器硬盘背板连接线缆的演变与实战接线

本文深度解析了服务器硬盘背板连接技术从SFF-8087到SFF-8643的演进历程,重点介绍了SAS、SATA和U.2接口的技术特点与实战接线方案。通过对比不同连接器标准的物理特性和电气规范,提供了混合环境下的线缆选择策略和常见故障排查指南,帮助IT专业人员优化存储系统性能与稳定性。

weixin_30603633的博客 276

Android息屏后台任务保活实战:从定时器失效到厂商白名单破解

本文深入探讨了Android应用在息屏后定时任务失效的根源,即系统为省电而触发的休眠机制。文章提供了从传统方案失效分析到实战破解的完整路径,核心在于引导用户将应用加入电池优化白名单并开启自启动权限,从而合法绕过限制。同时,结合WorkManager、AlarmManager等可靠定时方案,实现稳定的后台任务执行。

weixin_28475533的博客 422

ant java签名_ant+proguard签名打包 .jar

Ant是Apache软件基金会JAKARTA目录中的一个子项目,它有以下的优点。跨平台性。Ant是纯Java语言编写的,所以具有很好的跨平台性。操作简单。Ant是由一个内置任务和可选任务组成的。Ant运行时需要一个XML文件(构建文件)。 Ant通过调用target树,就可以执行各种task。每个task实现了特定接口对象。由于Ant构建文件 是XML格式的文件,所以很容易维护和书写,而且结构很清...

weixin_39568233的博客 233

攀藤PMS系列传感器STM32驱动开发与数据解析实战

本文详细介绍了攀藤PMS系列传感器与STM32微控制器的驱动开发与数据解析实战,涵盖硬件连接、数据协议解析、驱动源码编写及数据处理优化。重点解析了传感器数据帧结构,提供了完整的STM32驱动实现代码,并分享了实际应用中的问题排查与性能优化经验,帮助开发者快速实现高精度颗粒物浓度检测。

milk8的博客 348

一个生成数字签名和Jar包的Ant文件

打开好久好久没打开过的MyEclipse发现了这个东东,如下(点击下载测试工程): <!-- 设定构建JAR时的路径与文件名参数,注意:下边的属性设定时,如果属性代表路径,则为了适应相应操作系统可用location代替value; 如果属性代表文件名,则必须用value. -->

长弓的专栏 2135

3DMax高效建模与人工智能:一场颠覆传统创作的效率革命

AI与3DMax的结合,不仅是工具效率的升级,更是一场创作范式的革命。从“手动雕刻”到“智能共生”,设计师的角色正从执行者转向决策者。正如网友所言:“AI不是替代人类,而是赋予凡人以神笔。”在这场变革中,唯有拥抱技术、深耕创意,方能在数字艺术的浪潮中立于潮头。参考文献与工具推荐技术原理:火星时代资讯《人工智能和三维建模》工具实测:哔哩哔哩《tyDiffusion 3dsMax应用》9、Tripo AI官网教育案例:原创论文《人工智能技术介入三维动画课程建设》

m0_46478534的博客 3012

CloudCompare实战:5分钟搞定点云数据预处理(含常见格式转换技巧)

本文提供了一套基于CloudCompare的5分钟点云数据预处理实战指南。文章详细讲解了如何利用这款开源工具,快速完成点云数据的格式转换(如LAS转PLY)、统计离群值降噪、体素网格下采样以及交互式裁剪等核心操作,帮助用户高效清理和规整杂乱数据,为后续分析建模奠定基础。

weixin_29207533的博客 477

使用ant编译之签名问题

使用ant编译,可以很大提高项目开发效率。目前,coco2dx官方所提倡的提高几十倍的编译速度,其实就是使用了ant技术。原理提前将引擎库编译成一个so文件,游戏编译时,只需要编译自己的代码即可,而不需要同时编译引擎代码。相比自己的代码与引擎代码量,二者相差了几十倍,因此速度会提高很多。同时另一方面,很多问题,在Eclipse上只会报错,而不能指出具体位置(相信,大家在写mk文件时,就遇到这个问题)。然而,使用了ant编译,问题具体位置将完完全全的显示出来。 当然使用ant编译也有不好的地

Dionysos_lai的专栏 2652

PHM 2010数据集解读

PHM数据挑战赛是一项面向所有潜在与会者的竞赛。今年的挑战集中在使用测力仪、加速度计和声发射数据估计高速数控铣床刀具的RUL上。 博客对PHM 2010数据集的组成和信号进行了可视化。

cnjs1994的博客 7648

演练Ant实战之Jar文件数字签名

代码   build.properties   ==================================   #public info      module = test      JAVA_HOME = C:\\j2sdk1.4.2_04      keystore = Yoinn.store   # 别名   alias = Yoinn   # keyst...

光辉岁月 165

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

说说如何使用 Ant 把文件推送到 Linux

1 下载 JCraft JCraft 实现了 SSH2。 SSH 即 Secure SHell,它有两个版本: SSH1 又分为 1.3 和 1.5 两个版本 。SSH1 采用 DES、3DES、Blowfish 和 RC4 等对称加密算法保护数据安全传输,而对称加密算法的密钥是通过非对称加密算法( RSA )来完成交换的 。SSH1 使用循环冗余校验码( CRC )来保证数据的完整性,但...

读万卷书,行万里路 8055

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

ant webproject....

...

jiachenmianyu的专栏 88

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

关于在applet中对jar包进行数字签名问题.

昨天真郁闷....部门老大给我提出了一种难于想象的需求,通常我们从网站上下载文件都有IE弹出框。而他对我的要求是:不要弹出IE对话框,点按钮后直接把文件保存到本地。当时即时晕倒,都不知道是什么客户来的,居然有这种需求。-_-!综合考虑后,我决定用applet在客户端运行一段代码。在客户端里用apache的开源项目httpClient模拟http请求(如输入用户名密码登陆,浏览某个连接下载等)。由于

萌萌的It人 www.itmmd.com 3712

ant genkey (转)

...

jiachenmianyu的专栏 123

项目研发中用到的一个对JAR进行数字签名的ANT构建文件(备忘录)

&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;project name="MakeTopoJar" default="deployTopoJar" basedir="."&gt; &lt;!-- 设定系统环境变量名为env,以备下边使用 --&gt; &lt;property environm

imood的专栏 162

Ant编译打包签名

转载请注明出处,原文网址:http://blog.youkuaiyun.com/m_changgong/article/details/7715274 作者:张燕广 整理磁盘发现很久之前写的Ant编译、打包及签名jar脚本,共享出来仅供参考吧(应该还有可完善之处)。 共有2个xml文件:build.xml及build-common.xml,前者调用了后者。 build.xml如下:

长弓的专栏 5076

Ant例子(编译,打包,数字签名,并部署)

深蓝传说 973

在Eclipse的Web项目中java里面使用ant进行数字签名步骤详解

话不多说,我们先建立一个文件build.properties。这个文件是用于配置一些常用的变量的 #public infomodule=testJAVA_HOME=D:/Java/JDK1.6keystore=Yoinn.store# 别名alias=Yoinn# keystore密码storepass=password# 主密码keypass=password# 证书文件名cer.file=N...

xzknet 175

ant genkey

&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;project name="aa" default="deployTopoJar" basedir="."&gt; &lt;!-- 设定系统环境变量名为env,以备下边使用 --&gt; &lt;property environment

鱼骨头 170

jar包 jdk 停_一文读懂jar包的小秘密

简介java程序员每天不是在创建jar包就是在创建jar包的路上,并且各种依赖引用都是以jar包的形式展示的。但是随着现代IDE的出现,我想很多程序员已经基本上很少直接和jar包打交道了。换句话说,他们已经不认识jar包了。那么jar包到底是什么呢?它有哪些小秘密呢?一起来看一下吧。jar包到底是什么jar包其实是一种zip格式的文件,所以说你实际上是可以使用zip相关的命令来对jar包进行创建或...

weixin_33957278的博客 128

使用ant自动化构建android项目

学习步骤 a. 学习简单的android项目打包 参考网址: http://my.eoe.cn/luoxiangyu001/archive/3430.html 根据readme,修改local.property sdk.dir = /Users/chenxu/developer/android-sdk-macosx b. 下载安装...

移动应用及游戏开发 276

ant1.7.1安装

先学会用gpg验证 GPG作为一个开源并且免费的加密和数字签名软件已经存在多年。它不但可以为企业、个人之间的重要信息提供加密保护,还可以为出版的软件、内核等电子产品进行数字签名,防止产品被篡改,最大程度地保障信息安全。 1)下载ant之前,先下载验证软件gnupg:http://www.gnupg.org/download/index.en.html,选择windows binary安装...

ribishuangba 81
上一篇: 用java读取图片的三种方式
下一篇: How to open/read/write a local file from an applet
Breeze2003
博客等级 码龄23年 23粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值