签名文件一键自动生成

参考自动生成keystore
http://blog.youkuaiyun.com/snow12342234/article/details/50763144

keytool命令

1,keytool命令在哪里
keytool是jdk/bin下面的一个工具,使用之前需要先进入keytool所在目录
cd /d C:\Program Files\Java\jdk1.8.0_91\bin
或者是直接将C:\Program Files\Java\jdk1.8.0_91\bin配置到环境变量path中
2,查看帮助
keytool -help
keytool -genkey -help
3,生成签名文件
(有时候c盘是拒绝访问的,这时候生成的签名文件最好不要放到c盘)

参考Android开发之生成自己的签名文件及App签名打包
http://blog.youkuaiyun.com/snow12342234/article/details/50763144

keytool -genkey -alias android.keystore -keyalg RSA -validity 20000 -keystore android.keystore -
接下来手动输入各种信息然后可以看到输出
CN=Linux, OU=ln-ync.iteye.com, O=iteye.com, L=SZ, ST=GD, C=CN
生成签名文件是android.keystore文件(-alias 后面就是签名文件)

参考Automatically generate keystore for android apk signing
https://github.com/rapid7/metasploit-framework/pull/7263/files

参考keytool 用法总结
http://spdx4046.iteye.com/blog/1554577

信息对应关系

密码、姓氏、单位、区域这些和命令是怎么对应
这里写图片描述

签名文件一键自动生成

新建一个批处理文件(windows上是bat文件、linux上是sh文件)
文件内容如下

keytool -genkey -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -keysize 2048 -validity 10000 -dname "CN='Linux', OU='tecentbaidu', O='alibaba', L='SZ', ST='GD', C='CN'"

只要执批处理文件就能够生成签名文件了

这条命令也可以直接放到cmd中执行
另外也可以将这句话直接放到java中执行

    public static void main(String[] args) {
        String cmd="keytool -genkey -keystore debug.keystore -alias androiddebugkey -storepass 
        android -keypass android -keyalg RSA -keysize 2048 -validity 10000 -dname 
        \"CN='Linux', OU='tecentbaidu', O='alibaba', L='SZ', ST='GD', C='CN'\"";
        Process process = Runtime.getRuntime().exec(cmd);
    }
代码签名数字证书是软件开发和分发过程中一个关键的安全组件,尤其在确保用户信任和防止恶意软件方面。本文将深入探讨过期证书、过期数字签名的处理、强制签名工具以及数字签名证书的相关知识。 我们要理解什么是代码签名数字证书。这是一种由权威的证书颁发机构(CA)颁发的证书,用于验证软件的开发者身份和代码的完整性。它包含了开发者的信息、公钥以及CA的数字签名。当用户下载或安装已签名的软件时,操作系统会检查该证书的有效性,确保软件没有被篡改,并且来自可信的源。 在描述中提到的“过期证书”是指证书的有效期已经过去。根据行业标准,证书通常有一年的有效期,过期后将不再被认为是有效的。过期的代码签名证书意味着它不能再用于新软件的签名,因为这可能会导致操作系统拒绝执行或显示警告,降低用户的信任度。 “过期数字签名强制签名工具”则是在这种情况下出现的一种解决方案。这些工具允许开发者对已经过期但仍然需要分发的软件进行签名。强制签名通常用于测试环境或特殊情况,但必须谨慎使用,因为它绕过了常规的安全检查。在描述中提到“成品exe,若容查杀没毒”,这暗示了开发者可能在确保软件安全无毒后,使用这样的工具来确保软件能够正常运行,尽管其数字签名已经过期。 “数字签名”是一个关键的概念,它是通过哈希算法和非对称加密技术实现的。软件的源代码经过哈希运算得到一个唯一的数值,然后用证书的私钥加密这个数值,形成数字签名。接收者可以使用证书的公钥解密签名并重新计算哈希值,如果两者匹配,说明代码未被修改,且可以确认签名者的身份。 “证书”在这里指的是包含私钥和公钥的文件,通常以.pfx或.p12格式存储。在本例中,“代码签名数字证书(含私钥).pfx”就是这样的文件,包含了用于签名的私钥和对应的证书信息。而“密码.txt”可能是用来解密和访问这个.pfx文件的密码,确保私钥的安全。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值