使用jks文件为apk签名

使用jks文件为apk签名参与的项目近期要求安全检测,apk不达标并且无法修复的话会要求使用官方加固包。加固之后的包签名会失效,所有需要重新进行签名。今天借此机会记录一下整个操作流程。原来apk是使用jks格式的签名文件来操作的,还有一种是keystore文件格式。我们先来看jks文件格式怎么操作一、jks格式操作步骤:1、基本语法jarsigner-digestalgSHA1-sigalgSHA1withRSA-verbose-keystore{签名文件}-storepass{签名密码}-signe.

大家好,又见面了,我是你们的朋友全栈君。

参与的项目近期要求安全检测,apk不达标并且无法修复的话会要求使用官方加固包。加固之后的包签名会失效,所有需要重新进行签名。今天借此机会记录一下整个操作流程。

原来apk是使用jks格式的签名文件来操作的,还有一种是keystore文件格式。我们先来看jks文件格式怎么操作

一、jks格式操作步骤:
1、基本语法
jarsigner -digestalg SHA1 -sigalg SHA1withRSA -verbose -keystore { 
   签名文件} -storepass { 
   签名密码} -signedjar { 
   签名之后的包名} { 
   需要签名的apk} { 
   别名}

这里很多人说签名文件及需要签名的apk要使用绝对路径,经过测试发现使用相对路径也是可以的。

2、示例
#先进入目录,如D:\sign_test
cd D:\sign_test
#再敲入下面的签名指令,签名文件是sign.jks,apk包名sign_test_2.41.apk
jarsigner -digestalg SHA1 -sigalg SHA1withRSA -verbose -keystore ./sign.jks -storepass xxxx -signedjar sign_test_2.41_signed.apk ./sign_test_2.41.apk "sign app"

演示环境是Windows,在相同目录操作的,所以使用./xxx;别名因为有空格所以使用了双引号。这里注意的是如果没有设置有效期的话会给出警告。

二、keystore格式操作步骤
1、基本语法
jarsigner -digestalg SHA1 -sigalg RSA -keystore { 
   keystore文件路径} -storepass { 
   keystore文件的密码} -signedjar { 
   新的apk包名} { 
   要签名的apk包路径} { 
   别名}
2、示例
#先进入目录,如D:\sign_test
cd D:\sign_test
#再敲入下面的签名指令,签名文件是sign.keystore,apk包名sign_test_2.41.apk
jarsigner -digestalg SHA1 -sigalg RSA -keystore ./sign.keystore -storepass xxxx -signedjar sign_test_2.41_signed.apk ./sign_test_2.41.apk "sign app"
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132570.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 基于stm32门禁系统_老式门禁

    基于stm32门禁系统_老式门禁0、前言RC522射频门禁识别模块非常常用,某宝卖家提供的程序基本都是使用软件模拟SPI的方式进行驱动的,但是实测使用软件模拟SPI识别速率、准确性没有硬件SPI驱动时高,因此本篇博客用于记录使用STM32硬件SPI驱动RC522门禁模块。1、硬件连接单片机:STM32F103RCT6硬件接口:SPI2MISO->PB14(主机输入,从机输出)MOSI->PB15(主机输出,从机输入)SCK->PB13(时钟信号SCLK)SDA->PC

    2022年9月16日
    5
  • sql文件怎么导入sql server数据库_sql怎么导入数据库

    sql文件怎么导入sql server数据库_sql怎么导入数据库展开全部其实导入的方法很简单,可32313133353236313431303231363533e78988e69d8331333365633836以采用工具导入和只用mysql命令界面导入两种方式,mysql的数据库图形界面工具是很多的,用起来也比较方便。工具/原料NavicatforMySQLMySQL命令行界面SQL脚本方法一:1、首先使用MySQL提供的命令行界面来导入数据库,确保电脑…

    2022年10月2日
    2
  • Struts2拦截器的简单应用,登录权限拦截器及与过滤器的区别(八)

    Struts2拦截器的简单应用,登录权限拦截器及与过滤器的区别(八)勿以恶小而为之,勿以善小而不为————————–刘备劝诸君,多行善事积福报,莫作恶主要内容有:1,拦截器的配置2权限拦截器

    2022年5月14日
    32
  • redis可视化工具下载_redis集群管理工具

    redis可视化工具下载_redis集群管理工具[i]首页我先把redis的密码设置为:123456redis127.0.0.1:6379>CONFIGSETrequirepass123456OKredis127.0.0.1:6379>AUTH123456Ok[/i][i]该可视化工具github地址[url]https://github.com/caoxinyu/RedisClient[/url][/i…

    2022年10月11日
    5
  • odoo环境搭建_apache web服务器

    odoo环境搭建_apache web服务器1.新建用户1.1新建只能在控制台下登录的用户1)切换为root用户为了获取创建用户的权限peng@ubuntu:~$sudosu2)添加一个新用户(如用户名为csdn)root@ubuntu:/home/peng#useraddcsdn3)为该用户设定登录密码root@ubuntu:/home/peng#passwdcsdn4)为该用户指定命令解释程序(通常为/bin/b…

    2025年8月7日
    2
  • 深入编程之QQ盗号核心代码[通俗易懂]

    深入编程之QQ盗号核心代码[通俗易懂]经常有听到有朋友QQ被盗的消息,总感觉做出这种行为的人是可鄙的,不就是对QQ窗口进行监视,然后再是记录用户输入的号码和密码,认为没什么了不起。对于Windows核心编程,本人还是一只菜鸟,前一段时间把《Windows系统编程》粗略的看一边(当然重点地方仔细的看),由于对于C++有点基础,感觉学起来比较容易上手。但到了这两天真正实践的时候,遇到了各种各样的问题。即使一个小小的问题都足以让我…

    2022年6月26日
    67

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号