常用Keytool 命令

Keytool 是一个JAVA环境下的安全钥匙与证书的管理工具.它管理一个存储了私有钥匙和验证相应公共钥匙的与它们相关联的X.509 证书链的keystore(相当一个数据库,里面可存放多个X.509标准的证书).

 

Keytool 常用命令:

  • 检查一个keystore

    keytool -list -v -keystore c:\server.jks 
 
  • 检查一个keystore的内容

    keytool -list -v -keystore c:\server.jks 
 
  • 添加一个信任根证书到keystore文件

    keytool -import -alias newroot -file root.cer -keystore server.jks

  • 导入CA签署好的证书 

    keytool -import -keystore c:\server.jks -alias tomcat -file c:\cert.txt 

  • 从 KEYSTORE中导出一个证书文件

    keytool -export -alias myssl -keystore server.jks -rfc -file server.cer 
    *备注: "-rfc" 表示以base64输出文件,否则以二进制输出。

  • 从KEYSTORE中删除一个证书

    keytool -delete -keystore server.jks -alias tomcat 
    *备注:删除了别名为tomcat的证书。
`keytool` 是 Java 自带的一个命令行工具,通常用于生成密钥对、证书请求和管理 keystore(密钥库)。在 Android 开发中,我们常用它来生成签名密钥文件(`.jks` 或 `.keystore`),以便对 APK 或 AAB 文件进行签名。 --- ### 使用 `keytool` 命令的环境 #### 1. **在命令行或终端中使用** `keytool` 是 JDK 的一部分,因此你需要确保系统已经安装了 JDK,并且 `keytool` 命令可以在命令行中访问。 - **Windows 用户**: 打开命令提示符(Command Prompt)或 PowerShell。 - **macOS/Linux 用户**: 打开终端(Terminal)。 你可以通过以下命令检查是否已正确安装 `keytool`: ```bash keytool -version ``` 如果显示类似以下内容,则说明 `keytool` 已经安装成功: ``` Keytool version "1.8.0_281" ``` --- ### 如何使用 `keytool` 命令生成密钥? 以下是生成密钥的完整命令: ```bash keytool -genkeypair -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-key-alias ``` **参数详解:** - `-genkeypair`: 生成一个密钥对(公钥和私钥)。 - `-v`: 显示详细信息。 - `-keystore my-release-key.jks`: 指定生成的密钥库文件名(例如 `my-release-key.jks`)。 - `-keyalg RSA`: 指定密钥算法为 RSA。 - `-keysize 2048`: 指定密钥长度为 2048 位(推荐值)。 - `-validity 10000`: 指定密钥的有效期为 10000 天。 - `-alias my-key-alias`: 指定密钥的别名。 运行上述命令后,系统会提示你输入相关信息,例如: 1. **Keystore 密码 (`storePassword`)**: 设置密钥库的密码。 2. **个人信息**: - 你的姓名或组织名称。 - 组织单位名称。 - 城市或地区。 - 国家/地区代码(如 CN 表示中国)。 3. **密钥密码 (`keyPassword`)**: 设置密钥的密码(可以与密钥库密码相同)。 完成后,你会在当前目录下看到一个名为 `my-release-key.jks` 的文件。 --- ### 示例代码解释 上述命令的作用是生成一个 `.jks` 格式的密钥文件。这个文件包含了用于签署 APK 或 AAB 的私钥和证书链。生成的密钥文件需要妥善保管,因为如果你丢失了它,将无法更新已发布的应用。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值