HarmonyOS 应用通过数字证书和授权文件来保证应用的完整性,在申请数字证书和 Profile 文件前,需要通过 DevEco Studio 来生成私钥(存放在 .p12 文件中)和证书请求文件(.csr 文件)。同时,也可以使用命令行工具的方式来生成密钥和证书请求文件,用于构筑工程流水线。

使用 DevEco Studio 生成证书请求文件

使用 DevEco Studio 生成证书请求文件的方式有以下两种情况:

如果还未生成密钥文件,则可以一键生成密钥和证书请求文件。

一键生成密钥和证书请求文件

在主菜单栏点击 Build > Generate Key。

在 Key Store Path 中,可以点击 Choose Existing 选择已有的密钥库文件;如果没有密钥库文件,点击 New 进行创建。下面以新创建密钥库文件为例进行说明。

在 Create Key Store 窗口中,填写密钥库信息后,点击 OK。

Key Store Path:选择密钥库文件存储路径。

Password:设置密钥库密码,必须由大写字母、小写字母、数字和特殊符号中的两种以上字符的组合,长度至少为 8 位。请记住该密码,后续签名配置需要使用。

Confirm Password:再次输入密钥库密码。

andirons证书私钥密码 证书密钥文件在哪里找_库文件

在 Generate Key 界面中,继续填写密钥信息后,点击 Generate Key and CSR。

Alias:密钥的别名信息,用于标识密钥名称。请记住该别名,后续签名配置需要使用。

Password:输入密钥对应的密码,密钥密码需要与密钥库密码保持一致。请记住该密码,后续签名配置需要使用。

Confirm Password:再次输入密钥密码。

Validity:证书有效期,建议设置为 25 年及以上,覆盖应用的完整生命周期。

Certificate:输入证书基本信息,如组织、城市或地区、国家码等。

andirons证书私钥密码 证书密钥文件在哪里找_ide_02

在弹出的窗口中,点击 CSR File Path 对应的

andirons证书私钥密码 证书密钥文件在哪里找_鸿蒙os申请填写方法_03

图标,选择 CSR 文件存储路径。

andirons证书私钥密码 证书密钥文件在哪里找_ide_04

点击 OK 按钮,创建 CSR 文件成功,工具会同时生成密钥文件(.p12)和证书请求文件(.csr)。

andirons证书私钥密码 证书密钥文件在哪里找_库文件_05

使用已有密钥生成证书请求文件

在主菜单栏点击 Build > Generate Certificate Request File。

在 Generate CSR 界面,填写证书请求文件生成参数,点击 OK。

key Store Path:点击 Choose Existing 选择已有的密钥库文件,后缀格式为 .p12。

Key Store Password:输入创建密钥时填写的密钥库密码。

Key Alias:输入创建密钥时填写的别名信息。

Key Password:输入创建密钥时填写的密钥密码。

Certificate Path:点击

andirons证书私钥密码 证书密钥文件在哪里找_鸿蒙os申请填写方法_06

按钮,选择证书请求文件存储路径和名称。

andirons证书私钥密码 证书密钥文件在哪里找_库文件_07

打开证书请求文件存储目录,获取证书请求文件(.csr文件)。

使用命令行工具生成证书请求文件

使用 Open JDK 携带的 Keytool 工具生成证书请求文件。

使用管理员身份运行命令行工具。

andirons证书私钥密码 证书密钥文件在哪里找_库文件_08

切换到 keytool 工具所在路径,实际路径请根据安装目录进行修改。

andirons证书私钥密码 证书密钥文件在哪里找_鸿蒙os申请填写方法_09

执行如下命令,生成密钥文件。例如,生成的密钥名称为 ide_demo_app.p12,存储到 D 盘根目录下。

keytool -genkeypair -alias "ide_demo_app" -keyalg EC -sigalg SHA256withECDSA -dname "C=CN,O=HUAWEI,OU=HUAWEI IDE,CN=ide_demo_app" -keystore d:\\idedemokey.p12 -storetype pkcs12 -validity 9125 -storepass 123456 -keypass 123456

生成密钥文件的参数说明如下:

说明

请记录 下 alias、storepass 和 keypass 的值,后续编译构建生成 HAP和编译构建生成 APP会使用到。

alias:密钥的别名信息,用于标识密钥名称。

sigalg:签名算法,固定为 SHA256withECDSA。

dname

:按照操作界面提示进行输入。

C:国家/地区代码,如 CN。

O:组织名称,如 HUAWEI。

OU:组织单位名称,如 HUAWEI IDE。

CN:名字与姓氏,建议与别名一致。

validity:证书有效期,建议设置为 9125(25年)。

storepass:设置密钥库密码。

keypass:设置密钥的密码,请与 storepass 保持一致。

执行如下命令,执行后需要输入 storepass 密码,生成证书请求文件,后缀格式为 .csr。

keytool -certreq -alias "ide_demo_app" -keystore d:\\idedemokey.p12 -storetype pkcs12 -file d:\\idedemokey.csr

生成证书请求文件的参数说明如下:

alias:与 3 中输入的 alias 保持一致。

file:生成的证书请求文件名称,后缀为 .csr。