1, 生成key
命令: keytool -genkey -v -keystore app.keystore -alias gundam_wing -keyalg RSA -validity 20000
控制台输出:
输入密钥库口令: 
再次输入新口令: 
您的名字与姓氏是什么?
[Unknown]: TechStone
您的组织单位名称是什么?
[Unknown]: Gundam
您的组织名称是什么?
[Unknown]: Gundam
您所在的城市或区域名称是什么?
[Unknown]: Shanghai
您所在的省/市/自治区名称是什么?
[Unknown]: Shanghai
该单位的双字母国家/地区代码是什么?
[Unknown]: zh
CN=TechStone, OU=Gundam, O=Gundam, L=Shanghai, ST=Shanghai, C=zh是否正确?
[否]: Y

正在为以下对象生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 20,000 天):
CN=TechStone, OU=Gundam, O=Gundam, L=Shanghai, ST=Shanghai, C=zh
输入 <gundam_wing> 的密钥口令
(如果和密钥库口令相同, 按回车): 
[正在存储app.keystore]

这个命令会生成带组织/个人信息的key,并存放在app.keystore文件中
2, 转换key的格式
命令:keytool -importkeystore -srckeystore app.keystore -destkeystore tmp.p12 -srcstoretype JKS -deststoretype PKCS12
控制台会提示输出tmp.p12的密码以及app.keystore的密码,输入正确之后将会生成tmp.p12文件。
3, 将PKCS12格式的key dump为可直接阅读的文本
命令:openssl pkcs12 -in tmp.p12 -nodes -out tmp.rsa.pem
dump过程中也会提示输入密码,正确输入之后可阅读的token会存储在tmp.rsa.pem中
4, 提取
用文本编辑器打开tmp.rsa.pem,将从
-----BEGIN PRIVATE KEY-----
 到
-----END PRIVATE KEY-----
这一段(包含这两个tag)的文本复制出来,新建为文件my_private.rsa.pem
将从
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
这一段(包含这两个tag)的文本复制出来,新建为文件my.x509.pem (签名时用到的公钥)
5, 转换,生成pk8格式的私钥
openssl pkcs8 -topk8 -outform DER -in my_private.rsa.pem -inform PEM -out my_private.pk8 -nocrypt
这个生成的my_private.pk8就是签名时用到的私钥
6, 对apk签名
java -jar signapk.jar my.x509.pem my_private.pk8 my.apk my_signed.apk
==============================================================
本文章参考: http://blog.csdn.net/ilittleone/article/details/17914995  获取各种key格式转换的知识
增加了生成keystore文件的步骤。

创建自己的pk8, x509.pem并给app签名相关推荐

  1. 签名证书keystore,jks,pk8,x509.pem

    .keystore,.jks本身是一个东西,没有区别:在eclipse上生成的是.keystore后缀,在andorid studio上生成的是.jks后缀: 生成.keystore http://w ...

  2. keystore文件转换格式为pk8+x509.pem

    android 一般除了使用jarsigner签名 还有使用signapk 后者位于android源码 前者位于jdk中.两者使用的文件格式不同前者使用JKS 后者使用公钥+私钥 是分开的 第一步 先 ...

  3. 关于keystore 证书转*.x509.pem 和*.pk8

    <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255) ...

  4. 用Android自带的signapk.jar + .x509.pem + .pk8签名应用程序

    文件位置:可以在platform/build/target/product/security/中找到platform.pk8 platform.x509.pem等签名文件,对应不同的权限. signa ...

  5. platform.pk8 和platform.x509.pem转jks

    /** OpenSSL  */ 下载地址:http://slproweb.com/products/Win32OpenSSL.html 安装教程(OpenSSL安装教程_香辣奥利奥的博客-CSDN博客 ...

  6. linux 根据.x509.pem .pk8 生成keystore

    一.前言 goolge为我们提供了4个标准的key,以签名测试程序: testkey -- a generic key for packages that do not otherwise speci ...

  7. iOS 应用创建APNS 和 VOIP的pem证书流程

    早期的极光推送和友盟推送也是需要上传pem文件的,不过可能对接入SDK的开发者来说,要用一堆的命令生成pem文件还是有些太麻烦了,所以现在都改成了上传p12文件,输入密码的形式,这样极大的简化了开发人 ...

  8. tkinter如何lable重复显示到同一行中_如何创建包含 CAD 导入和选择的仿真 App

    在使用 COMSOL 软件二次开发的过程中,你可能会遇到这样的问题:如何使用 App 开发器创建可以处理 CAD 导入并能让用户交互式选择边界条件的仿真 App?我需要了解编程吗?今天我们将为您介绍在 ...

  9. C#实现RSA公钥加密私钥解密、私钥加密公钥解密以及Pcks12、X509证书加解密、签名验签

    RSA的私钥签名公钥验签可以见 http://blog.csdn.net/starfd/article/details/51917916,所以这里就没提供对应代码,具体代码如下: using Org. ...

最新文章

  1. 协议分析中的TCP/IP网络协议
  2. 【分享】分享一款不错的网页视频播放器
  3. python分布式框架有哪些_Python并行分布式框架Celery详解
  4. PHP垃圾回收深入理解
  5. BZOJ 3511 土地划分
  6. Java FileInputStream close()方法与示例
  7. 3 .6 .5 优化Ad-Hoc工作负载
  8. 安全员b本计算机考试,2019年安全员B证考试题库试题资料一.doc
  9. 一步一步使用 DialogFragment 封装链式调用 Dialog
  10. Atitit.可视化与报表原理与概论
  11. 移动设备数据丢失恢复办法
  12. Eclipse Error Reporting (取消错误报告)
  13. 2021年末爆发 Log4j 的史诗级Bug漏洞?5分钟教你如何手把手实现
  14. win11文件资源管理器
  15. 自动驾驶分级 - 练习测验
  16. 海龟交易法则11_历史测试的谎言
  17. np.array与np.ndarray的区别
  18. gawk 命令(转载:http://blog.sina.com.cn/s/blog_6238358c01012h1f.html)
  19. 干货分享 | 分子对接与分子动力学模拟在药物研发中的应用
  20. 中国目前还未掌握的核心技术有哪些?(无图)

热门文章

  1. Mac更新系统后 删除文件后可用空间还变少了?
  2. win10进程太多怎么优化_win10隐藏进程 谁有win10隐藏进程软件或者怎么隐藏
  3. matlab if语句解函数,Matlab:if语句和abs()函数在变步长ODE求解器中
  4. SQL语句 合并列值 将一列的多个值合并成一行
  5. 猎豹移动逆势在美扩张业务 未来2年员工大幅增长
  6. 在线Excel绝配:SpreadJS 16.1.1+GcExcel 6.1.1 Crack
  7. 使用VBA重复多次直线拟合在深度测量数据分析中的应用(原始文件可在我的资源中下载)
  8. Android自定义控件--图片3D翻转(其他控件或布局可以)
  9. webrtc USB摄像头
  10. ci框架 乱码 mysql_mysql设置utf8_unicode_ci字符集php页面输出??乱码的解决方法