(1)查看keystore的信息
keytool -list -v -keystore xp.jks或者:keytool -list -keystore (keystore文件) -alias (key的别名) -v
(2)查看keystore的公钥证书信息
keytool -list -keystore (keystore文件) -alias (key的别名) -rfc(注:获取格式的公钥证书,RFC 1421)
(3)查看apk的签名信息
jarsigner -verify -verbose -certs <your_apk_path.apk>
1.制作keystore //jarsigner和keytool全部都是在Jdk的安装包里边
keytool -genkey -alias test.keystore -keyalg RSA -validity 20000 -keystore test.keystore
注释:# -genkey 产生密钥# -alias test.keystore 别名 test.keystore -keyalg RSA 使用RSA算法对签名加密# -validity 20000 有效期限2000天# -test.keystore
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
[]:
您的组织单位名称是什么?
[]:
您的组织名称是什么?
[]:
您所在的城市或区域名称是什么?
[beijing]:
您所在的省/市/自治区名称是什么?
[beijing]:
该单位的双字母国家/地区代码是什么?
[china]:
CN=, OU=, O=, L=beijing, ST=beijing, C=china是否正确?
[否]:Y
输入 <test.keystore> 的密钥口令
(如果和密钥库口令相同, 按回车):
再次输入新口令:
keystore生成完毕
2.签名
jdk 在1.7以上
jarsigner -digestalg SHA1 -sigalg MD5withRSA -verbose -keystore test.keystore -signedjar app-arm-release-signed.apk app-arm-release-unsigned.apk test.keystore
jdk在1.7以下(含)
jarsigner -verbose -keystore test.keystore -signedjar app-arm-release-signed.apk app-arm-release-unsigned.apk vslink.keystore
输入密钥库的密码短语: (111111)
正在添加: META-INF/MANIFEST.MF
正在添加: META-INF/VSLINK_K.SF
正在添加: META-INF/VSLINK_K.RSA
正在签名: AndroidManifest.xml
正在签名: classes.dex
正在签名: lib/armeabi/libairplayer.so
正在签名: lib/armeabi/libhpplayaudio.so
正在签名: lib/armeabi/libjdns_sd.so
正在签名: lib/armeabi/libturbojpeg.so
正在签名: lib/armeabi/libnative.so
jar 已签名。
警告:
未提供 -tsa 或 -tsacert, 此 jar 没有时间戳。如果没有时间戳, 则在签名者证书的到期日期 (2071-07-14) 或以后的任何撤销日期之后, 用户可能无法验证此 jar。
keytool -list -v -keystore xp.jks或者:keytool -list -keystore (keystore文件) -alias (key的别名) -v
(2)查看keystore的公钥证书信息
keytool -list -keystore (keystore文件) -alias (key的别名) -rfc(注:获取格式的公钥证书,RFC 1421)
(3)查看apk的签名信息
jarsigner -verify -verbose -certs <your_apk_path.apk>
1.制作keystore //jarsigner和keytool全部都是在Jdk的安装包里边
keytool -genkey -alias test.keystore -keyalg RSA -validity 20000 -keystore test.keystore
注释:# -genkey 产生密钥# -alias test.keystore 别名 test.keystore -keyalg RSA 使用RSA算法对签名加密# -validity 20000 有效期限2000天# -test.keystore
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
[]:
您的组织单位名称是什么?
[]:
您的组织名称是什么?
[]:
您所在的城市或区域名称是什么?
[beijing]:
您所在的省/市/自治区名称是什么?
[beijing]:
该单位的双字母国家/地区代码是什么?
[china]:
CN=, OU=, O=, L=beijing, ST=beijing, C=china是否正确?
[否]:Y
输入 <test.keystore> 的密钥口令
(如果和密钥库口令相同, 按回车):
再次输入新口令:
keystore生成完毕
2.签名
jdk 在1.7以上
jarsigner -digestalg SHA1 -sigalg MD5withRSA -verbose -keystore test.keystore -signedjar app-arm-release-signed.apk app-arm-release-unsigned.apk test.keystore
jdk在1.7以下(含)
jarsigner -verbose -keystore test.keystore -signedjar app-arm-release-signed.apk app-arm-release-unsigned.apk vslink.keystore
输入密钥库的密码短语: (111111)
正在添加: META-INF/MANIFEST.MF
正在添加: META-INF/VSLINK_K.SF
正在添加: META-INF/VSLINK_K.RSA
正在签名: AndroidManifest.xml
正在签名: classes.dex
正在签名: lib/armeabi/libairplayer.so
正在签名: lib/armeabi/libhpplayaudio.so
正在签名: lib/armeabi/libjdns_sd.so
正在签名: lib/armeabi/libturbojpeg.so
正在签名: lib/armeabi/libnative.so
jar 已签名。
警告:
未提供 -tsa 或 -tsacert, 此 jar 没有时间戳。如果没有时间戳, 则在签名者证书的到期日期 (2071-07-14) 或以后的任何撤销日期之后, 用户可能无法验证此 jar。