鴻蒙OS 生成密鑰和證書請(qǐng)求文件

2020-09-19 10:53 更新

HarmonyOS 應(yīng)用通過數(shù)字證書和授權(quán)文件來保證應(yīng)用的完整性,在申請(qǐng)數(shù)字證書和 Profile 文件前,需要通過 DevEco Studio 來生成私鑰(存放在 .p12 文件中)和證書請(qǐng)求文件(.csr 文件)。同時(shí),也可以使用命令行工具的方式來生成密鑰和證書請(qǐng)求文件,用于構(gòu)筑工程流水線。

使用 DevEco Studio 生成證書請(qǐng)求文件

使用 DevEco Studio 生成證書請(qǐng)求文件的方式有以下兩種情況:

一鍵生成密鑰和證書請(qǐng)求文件

  1. 在主菜單欄點(diǎn)擊 Build > Generate Key

  1. Key Store Path 中,可以點(diǎn)擊 Choose Existing 選擇已有的密鑰庫(kù)文件;如果沒有密鑰庫(kù)文件,點(diǎn)擊 New 進(jìn)行創(chuàng)建。下面以新創(chuàng)建密鑰庫(kù)文件為例進(jìn)行說明。

  1. Create Key Store 窗口中,填寫密鑰庫(kù)信息后,點(diǎn)擊 OK。

  • Key Store Path:選擇密鑰庫(kù)文件存儲(chǔ)路徑。
  • Password:設(shè)置密鑰庫(kù)密碼,必須由大寫字母、小寫字母、數(shù)字和特殊符號(hào)中的兩種以上字符的組合,長(zhǎng)度至少為 8 位。請(qǐng)記住該密碼,后續(xù)簽名配置需要使用。
  • Confirm Password:再次輸入密鑰庫(kù)密碼。

img

  1. Generate Key 界面中,繼續(xù)填寫密鑰信息后,點(diǎn)擊 Generate Key and CSR

  • Alias:密鑰的別名信息,用于標(biāo)識(shí)密鑰名稱。請(qǐng)記住該別名,后續(xù)簽名配置需要使用。
  • Password:輸入密鑰對(duì)應(yīng)的密碼,密鑰密碼需要與密鑰庫(kù)密碼保持一致。請(qǐng)記住該密碼,后續(xù)簽名配置需要使用。
  • Confirm Password:再次輸入密鑰密碼。
  • Validity:證書有效期,建議設(shè)置為 25 年及以上,覆蓋應(yīng)用的完整生命周期。
  • Certificate:輸入證書基本信息,如組織、城市或地區(qū)、國(guó)家碼等。

img

  1. 在彈出的窗口中,點(diǎn)擊 CSR File Path 對(duì)應(yīng)的img圖標(biāo),選擇 CSR 文件存儲(chǔ)路徑。

img

  1. 點(diǎn)擊 OK 按鈕,創(chuàng)建 CSR 文件成功,工具會(huì)同時(shí)生成密鑰文件(.p12)和證書請(qǐng)求文件(.csr)。

img

使用已有密鑰生成證書請(qǐng)求文件

  1. 在主菜單欄點(diǎn)擊 Build > Generate Certificate Request File。

  1. 在 Generate CSR 界面,填寫證書請(qǐng)求文件生成參數(shù),點(diǎn)擊 OK。

  • key Store Path:點(diǎn)擊 Choose Existing 選擇已有的密鑰庫(kù)文件,后綴格式為 .p12。
  • Key Store Password:輸入創(chuàng)建密鑰時(shí)填寫的密鑰庫(kù)密碼。
  • Key Alias:輸入創(chuàng)建密鑰時(shí)填寫的別名信息。
  • Key Password:輸入創(chuàng)建密鑰時(shí)填寫的密鑰密碼。
  • Certificate Path:點(diǎn)擊img按鈕,選擇證書請(qǐng)求文件存儲(chǔ)路徑和名稱。

img

  1. 打開證書請(qǐng)求文件存儲(chǔ)目錄,獲取證書請(qǐng)求文件(.csr文件)。

使用命令行工具生成證書請(qǐng)求文件

使用 Open JDK 攜帶的 Keytool 工具生成證書請(qǐng)求文件。

  1. 使用管理員身份運(yùn)行命令行工具。

img

  1. 切換到 keytool 工具所在路徑,實(shí)際路徑請(qǐng)根據(jù)安裝目錄進(jìn)行修改。

img

  1. 執(zhí)行如下命令,生成密鑰文件。例如,生成的密鑰名稱為 ide_demo_app.p12,存儲(chǔ)到 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

生成密鑰文件的參數(shù)說明如下:

說明

請(qǐng)記錄 下 alias、storepasskeypass 的值,后續(xù)編譯構(gòu)建生成 HAP編譯構(gòu)建生成 APP會(huì)使用到。

  • alias:密鑰的別名信息,用于標(biāo)識(shí)密鑰名稱。

  • sigalg:簽名算法,固定為 SHA256withECDSA。

  • dname

:按照操作界面提示進(jìn)行輸入。

  • C:國(guó)家/地區(qū)代碼,如 CN。
  • O:組織名稱,如 HUAWEI。
  • OU:組織單位名稱,如 HUAWEI IDE。
  • CN:名字與姓氏,建議與別名一致。

  • validity:證書有效期,建議設(shè)置為 9125(25年)。

  • storepass:設(shè)置密鑰庫(kù)密碼。

  • keypass:設(shè)置密鑰的密碼,請(qǐng)與 storepass 保持一致。

  1. 執(zhí)行如下命令,執(zhí)行后需要輸入 storepass 密碼,生成證書請(qǐng)求文件,后綴格式為 .csr。

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

生成證書請(qǐng)求文件的參數(shù)說明如下:

  • alias:與 3 中輸入的 alias 保持一致。
  • file:生成的證書請(qǐng)求文件名稱,后綴為 .csr。
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)