
### 使用说明

- 终端执行脚本
   ```
   chmod +x keytool.sh
   ./keytool.sh
   
   ```

### 功能特点

1. **交互式配置**：
   - 支持自定义所有签名参数
   - 所有选项都有合理的默认值
   - 自动处理密码匹配问题

2. **生成多种格式**：
   - JKS (Java KeyStore) - Android 标准格式
   - PKCS12 (.p12) - 跨平台密钥格式
   - PEM (.cer) - 公钥证书
   - PEM (.key.pem) - 私钥文本格式
   - DER (.key.der) - 私钥二进制格式

3. **安全特性**：
   - 使用 2048 位 RSA 密钥
   - 支持自定义密钥有效期
   - 密码输入不回显

4. **依赖检查**：
   - 自动检测 keytool 和 openssl
   - 清晰的错误提示

### 生成文件说明

| 文件扩展名 | 格式类型 | 主要用途 |
|------------|----------|----------|
| `.jks`     | Java KeyStore | Android 应用签名 |
| `.p12`     | PKCS12 | 跨平台密钥交换 |
| `.cer`     | PEM 证书 | 公钥分发 |
| `.key.pem` | PEM 私钥 | 文本格式私钥 |
| `.key.der` | DER 私钥 | 二进制格式私钥 |

### 使用示例

```bash

sh keytool.sh

密钥库文件名 (默认: android_key): myapp
别名 (默认: mykey): release_key
密钥库密码 (默认: android): [输入密码]
密钥密码 (默认同密钥库密码): [回车]
有效期(年) (默认: 25): 30
名字与姓氏 (默认: Android Developer): [回车]
组织单位 (默认: Mobile Dev): [回车]
组织名称 (默认: Android Inc): [回车]
城市或地区 (默认: Silicon Valley): [回车]
州或省份 (默认: California): [回车]
国家代码(2字母) (默认: US): [回车]
```

### 验证生成的文件

```bash
# 查看JKS内容
keytool -list -v -keystore myapp.jks

# 查看P12内容
openssl pkcs12 -info -in myapp.p12

# 查看PEM证书
openssl x509 -in myapp.cer -text -noout
```
