北考网

Android Apk去签名、重新签名的方法

时间:2023-06-15 15:37:58 文/秦风学 签名北考网www.beiweimall.com

Android Apk去签名、重新签名的方法

  Android开发中很重要的一部就是用自己的密钥给Apk文件签名,不经过签名的Apk文件一般是无法安装的,就算装了最后也是失败。

  网上流传的“勾选允许安装未知来源的应用”其实跟签不签名没啥关系,说白了就是允许安装不从电子市场上下载的应用而已。

  近几日需要修改一个Apk中JNI调用的.so文件,苦于没有apk源代码,只好研究了一下签名相关的问题。当然有很多第三方工具可以做到,但其实JDK中已经提供了强大的签名工具jarsigner。

  1.去除签名

  其实很简单,用WinRAR打开apk,找到META-INF文件夹,删除MANIFEST.MF之外的所有其他文件即可。

  2.签名

  运行jarsigner,如果没有设置PATH环境变量,那可以从JDK安装路径下的bin目录中找到,比如我本机的就是C:Program FilesJavajdk1.8.0_31binjarsigner.exe

  jarsigner用法如下:

  用法: jarsigner [选项] jar-file 别名 jarsigner -verify [选项] jar-file [别名...][-keystore] 密钥库位置[-storepass <口令>] 用于密钥库完整性的口令[-storetype <类型>] 密钥库类型[-keypass <口令>] 私有密钥的口令 (如果不同)[-certchain <文件>] 替代证书链文件的名称[-sigfile <文件>] .SF/.DSA 文件的名称[-signedjar <文件>] 已签名的' JAR 文件的名称[-digestalg <算法>] 摘要算法的名称[-sigalg <算法>] 签名算法的名称[-verify] 验证已签名的 JAR 文件[-verbose[:suboptions]] 签名/验证时输出详细信息。 子选项可以是 all, grouped 或 summary[-certs] 输出详细信息和验证时显示证书[-tsa] 时间戳颁发机构的位置[-tsacert <别名>] 时间戳颁发机构的公共密钥证书[-tsapolicyid] 时间戳颁发机构的 TSAPolicyID[-altsigner <类>] 替代的签名机制的类名[-altsignerpath <路径列表>] 替代的签名机制的位置[-internalsf] 在签名块内包含 .SF 文件[-sectionsonly] 不计算整个清单的散列[-protected] 密钥库具有受保护验证路径[-providerName <名称>] 提供方名称[-providerClass <类> 加密服务提供方的名称 [-providerArg <参数>]]... 主类文件和构造器参数[-strict] 将警告视为错误

  比较常用的参数就是指定keystore的位置和签名后的文件,举例如下:

  jarsigner -keystore C:myKey.key -signedjar apk-signed.apk apk-unsigned.apk myKey

  待签名的文件是apk-unsigned.apk,签名后的apk是apk-signed.apk。我们也可以不指定-signedjar参数,则在待签名的apk上直接签名。最后一个myKey是我的keystore的别名。

  签名完成后再用WinRAR打开,会发现META-INF目录下多了MYKEY.RSA和MYKEY.SF两个文件,他们分别是:

  MANIFEST.MF中保存了所有其他文件的SHA-1并base64编码后的值。

  MYKEY.SF中也有其他文件的SHA-1并base64编码的值,而且还多一个MANIFEST.MF文件的SHA-1并base64编码后的值

  MYKEY.RSA包含了公钥信息和发布机构信息

  后两个文件的名称和我的key别名转换为大写后一致。

  关于如何生成本机的keystore就不再赘述了,在AndroidStudio和Eclipse中都有相应的工具,图形界面,so easy。

相关文章

有关虐心的文字签名2023-06-04 23:50:12

表达想念之情的签名2023-06-08 03:49:45

40条伤心分手的签名2023-06-07 09:02:27

关于一个人孤独迷茫的时候的个性签名2023-06-19 03:50:15

人生低估的个性签名精选2023-06-19 00:03:35

超萌很二的签名2023-06-14 01:21:41

上海对外经贸大学和北京交通大学(威海校区)对比哪个好(排名分数线区2024-03-31 16:25:18

河北高考排名237950名物理能上什么大学(能报哪些学校)2024-03-31 16:19:23

山东城市建设职业学院在山东招生人数和招生计划 多少人2024-03-31 16:15:16

上海农林职业技术学院在湖南招生人数和招生计划 多少人2024-03-31 16:12:52

吉林农业科技学院在湖南招生人数和招生计划 多少人2024-03-31 16:09:19

安徽高考多少分可以上云南经贸外事职业学院 招生人数和最低分2024-03-31 16:04:52

伤感个性句子集锦45条2023-06-02 01:45:59

伤感个性句子集合35句2023-06-05 05:51:16

简洁的伤感个性句子汇编85句2023-06-03 16:47:26