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:再次输入密钥库密码。

1b7e395c11f0b24f6342170dd12d8de3.png

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

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

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

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

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

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

68cad67dc2fddb909c753b3d33390a89.png

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

77d7c994740a04148cb8945139b4a99b.png图标,选择 CSR 文件存储路径。

69c85320e4e45d7145adb2d436fbf310.png

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

9b7df7326d630ed23d6a57d2833b3cd0.png

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

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

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

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

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

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

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

Certificate Path:点击

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

634127df18d2dc1808b9e9fdefae3c84.png

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

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

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

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

7f774e94c3597ff6f734739df2c68765.png

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

d1875d0fd69a64feff9821bed9772126.png

执行如下命令,生成密钥文件。例如,生成的密钥名称为 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。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐