Android/Ophone应用程序签名步骤:

1.确保电脑上安装了JDK,因为我们将使用JDK自带的创建和管理数字证书的工具Keytool。在命令行下输入如下命令:

Java代码
  1. keytool-genkey-v-keystoreophone.keystore-aliasophone-keyalgRSA-validity20000

该命令中,-keystore ophone.keystore 表示生成的证书,可以加上路径(默认在用户主目录下);-alias ophone 表示证书的别名是ophone;-keyalg RSA 表示采用的RSA算法;-validity 20000表示证书的有效期是20000天。回车

========================================

输入keystore密码:[密码不显示]
再次输入新密码:[密码不显示]
您的名字与姓氏是什么?
[Unknown]: yang
您的组织单位名称是什么?
[Unknown]: yarin
您的组织名称是什么?
[Unknown]: yarin
您的组织名称是什么?
[Unknown]: yarin
您所在的城市或区域名称是什么?
[Unknown]: Chengdu
您所在的州或省份名称是什么?
[Unknown]: Sichuan
该单位的两字母国家代码是什么?
[Unknown]: CN CN=yarin, OU=yang, O=yarin, L=Chengdu, ST=Sichuan, C=CN
正确吗?
[否]: Y
输入<ophonesdn.keystore>的主密码
(如果和 keystore 密码相同,按回车):

正在存储证书...
完成

========================================

此时,我们会在互用主目录下看到ophone.keystore,即我们刚刚创建的证书。

2.给应用程序(apk)签名,在EC中,右键单击应用程序工程,如图选择



如果是Android则选择“Android Tools”......

然后选择证书的存放路径,填写相关资料,完成,即可生成被签名的apk文件。如下图所示:



如上图所示,我们可以看到也可以在这里选择”Create new keystore“来创建一个证书。输入密码,点击下一步,填写相关信息,如下图所示。



需要注意,这里的证书有效期只能填写1-1000天。图形界面,还更简单了。呵呵...

顺便找了点keytool的资料。

附:

JDK中keytool常用命令
-genkey 在用户主目录中创建一个默认文件".keystore",还会产生一个别名,证书中包含用户的公钥、私钥和证书
-alias 产生别名
-keystore 指定密钥库的名称(产生的各类信息将不在.keystore文件中)
-keyalg指定密钥的算法
-validity 指定创建的证书有效期多少天
-keysize 指定密钥长度
-storepass 指定密钥库的密码
-keypass 指定别名条目的密码
-dname 指定证书拥有者信息 例如: "CN=sagely,OU=atr,O=szu,L=sz,ST=gd,C=cn"
-list 显示密钥库中的证书信息 keytool -list -v -keystore sage -storepass ....
-v 显示密钥库中的证书详细信息
-export 将别名指定的证书导出到文件 keytool -export -alias caroot -file caroot.crt
-file 参数指定导出到文件的文件名
-delete 删除密钥库中某条目 keytool -delete -alias sage -keystore sage
-keypasswd 修改密钥库中指定条目口令 keytool -keypasswd -alias sage -keypass .... -new .... -storepass ... -keystore sage
-import 将已签名数字证书导入密钥库 keytool -import -alias sage -keystore sagely -file sagely.crt
导入已签名数字证书用keytool -list -v 以后可以明显发现多了认证链长度,并且把整个CA链全部打印出来。

1.证书的显示
-list
[-v | -rfc] [-alias <alias>]
[-keystore <keystore>] [-storepass <storepass>]
[-storetype <storetype>] [-provider <provider_class_name>]
例如:keytool -list -v -alias RapaServer -keystore cacerts -storepass 12345678
keytool -list -v -keystore d2aapplet.keystore -storepass 12345678 -storetype IAIKKeystore
2.将证书导出到证书文件
例如:keytool -export -keystore monitor.keystore -alias monitor -file monitor.cer
将把证书库 monitor.keystore 中的别名为 monitor 的证书导出到 monitor.cer 证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开。
keytool -export -keystore d2aApplet.keystore -alias RapaServer -file Rapa.cert -storetype IAIKKeystore
3.将keystore导入证书中
这里向Java默认的证书 cacerts导入Rapa.cert
keytool -import -alias RapaServer -keystore cacerts -file Rapa.cert -keystore cacerts
4.证书条目的删除
keytool的命令行参数 -delete 可以删除密钥库中的条目,如: keytool -delete -alias RapaServer -keystore d2aApplet.keystore ,这条命令将 d2aApplet.keystore 中的 RapaServer 这一条证书删除了。
5.证书条目口令的修改
使用 -keypasswd 参数,如:keytool -keypasswd -alias RapaServer -keystore d2aApplet.keystore,可以以交互的方式修改 d2aApplet.keystore证书库中的条目为 RapaServer 的证书。
Keytool -keypasswd -alias RapaServer -keypass 654321 -new 123456 -storepass 888888 -keystore d2aApplet.keystore这一行命令以非交互式的方式修改库中别名为 RapaServer 的证书的密码为新密码 654321,行中的 123456 是指该条证书的原密码, 888888 是指证书库的密码。

更多相关文章

  1. Android(安卓)多媒体扫描过程(Android(安卓)Media Scanner Proces
  2. Android(安卓)命令行编译、打包生成apk文件
  3. android 命令(adb shell)进入指定模拟器或设备
  4. Android(安卓)7.0 https/tls证书配置问题
  5. android 单选框
  6. gson使用在android使用例子
  7. 自定义ProgressBar的样式失效
  8. android framework在launcher中隐藏指定app
  9. android ScreenObserver 实现打开锁屏键时,跳到指定的页面

随机推荐

  1. Android Support Library 23.2
  2. Android(安卓)动画特效的运用
  3. android FactoryReset
  4. android访问本地电脑上的网站
  5. Android应用程序的Activity启动过程简要
  6. SlidingLayout
  7. Android 封装的数据库管理操作类
  8. android 图片处理
  9. ContentProvider(一)
  10. Android7.0中文API -- SeekBar