自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名

系統(tǒng) OpenHarmony
為了保證OpenHarmony應(yīng)用的完整性和來源可靠,在應(yīng)用構(gòu)建時(shí)需要對(duì)應(yīng)用進(jìn)行簽名。經(jīng)過簽名的應(yīng)用才能在設(shè)備上安裝、運(yùn)行、和調(diào)試。

??想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??

概述

文檔環(huán)境

  • 開發(fā)環(huán)境:MacBook Pro
  • DevEco Studio 版本:DevEco Studio 3.1 Beta1(3.1.0.200)
  • SDK 版本:3.2.10.6
  • 開發(fā)板型號(hào):DAYU 200
  • 系統(tǒng)版本:OpenHarmony 3.2 Beta5

功能簡(jiǎn)介

為了保證OpenHarmony應(yīng)用的完整性和來源可靠,在應(yīng)用構(gòu)建時(shí)需要對(duì)應(yīng)用進(jìn)行簽名。經(jīng)過簽名的應(yīng)用才能在設(shè)備上安裝、運(yùn)行、和調(diào)試。DevEco Studio自動(dòng)化簽名功能僅用于應(yīng)用調(diào)試階段使用,不可用于發(fā)布上架應(yīng)用市場(chǎng)。

基本概念

Hap包簽名工具支持本地簽名需求的開發(fā),為OpenHarmony應(yīng)用提供完整性保護(hù)和來源管控機(jī)制,該簽名工具基于PKI公鑰證書的機(jī)制實(shí)現(xiàn),在進(jìn)行開發(fā)前,開發(fā)者應(yīng)了解以下基本概念:

  • 非對(duì)稱密鑰對(duì):非對(duì)稱密鑰算法是數(shù)據(jù)簽名/驗(yàn)簽的基礎(chǔ),應(yīng)用簽名工具實(shí)現(xiàn)了標(biāo)準(zhǔn)的非對(duì)稱密鑰對(duì)生成功能(支持的密鑰對(duì)類型包括ECC P384/256、RSA2048/3072/4096)
  • CSR:CSR(Certificate Signing Request)證書簽發(fā)請(qǐng)求是生成證書的前提,他包括證書的公鑰、證書主題和私鑰簽名,在申請(qǐng)證書之前,需要先基于密鑰對(duì)生成CSR,然后提交給CA簽發(fā)證書。
  • 證書:OpenHarmony采用RFC5280標(biāo)準(zhǔn)構(gòu)建X509證書信任體系。用于應(yīng)用簽名的OpenHarmony證書共有三級(jí),分為:根CA證書、中間CA證書、最終實(shí)體證書,其中最終實(shí)體證書分為應(yīng)用簽名證書和profile簽名證書。應(yīng)用簽名證書表示應(yīng)用開發(fā)者的身份,可保證系統(tǒng)上安裝的應(yīng)用來源可追溯,profile簽名證書實(shí)現(xiàn)對(duì)profile文件的簽名進(jìn)行驗(yàn)簽,保證profile文件的完整性。
  • HAP包:HAP(OpenHarmony Ability Package)是Ability的部署包,OpenHarmony應(yīng)用代碼圍繞Ability組件展開,它是由一個(gè)或者多個(gè)Ability組成。
  • profile文件:Hap包中的描述文件,該描述文件描述了已授權(quán)的證書權(quán)限和設(shè)備ID信息等信息。

簽名配置

應(yīng)用簽名信息配置于工程目錄build-profile.json5文件中,配置項(xiàng)說明:

{
"app": { //工程級(jí)別信息配置,包含API等級(jí)、簽名和產(chǎn)品信息
"signingConfigs": [{ //工程的簽名信息,可包含多個(gè)簽名信息
"name": "default", //標(biāo)識(shí)簽名方案的名稱
"material": { //該方案的簽名材料
"certpath": "ohos.cer", //調(diào)試或發(fā)布證書文件,格式為.cer
"storePassword": "******", //密鑰庫(kù)Password,以密文形式呈現(xiàn)
"keyAlias": "debug_ohos", //密鑰別名信息
"keyPassword": "******", //密鑰Password,以密文形式呈現(xiàn)
"profile": "ohos.p7b", //調(diào)試或發(fā)布證書Profile文件,格式為.p7b
"signAlg": "SHA256withECDSA", //密鑰庫(kù)signAlg參數(shù)
"storeFile": "ohos.p12" //密鑰庫(kù)文件,格式為.p12
}
}],
"products": [{ //定義構(gòu)建的產(chǎn)品品類,如通用默認(rèn)版、付費(fèi)版、免費(fèi)版等
"name": "default", //定義產(chǎn)品的名稱,由開發(fā)者自定義
"signingConfig": "default" //指定當(dāng)前產(chǎn)品品類對(duì)應(yīng)的簽名信息,簽名信息需要在signingConfigs中進(jìn)行定義
}]
···
}
}
···

自動(dòng)化簽名

未簽名的HAP包

使用DevEco Studio創(chuàng)建一個(gè)新的工程,默認(rèn)是沒有配置簽名信息的。簽名信息可通過工程根路徑的build-profile.json5文件查看。未簽名的HAP包無(wú)法保證應(yīng)用的完整性和來源可靠,在OpenHarmony系統(tǒng)是無(wú)法被安裝的。

  • 新創(chuàng)建的工程,在build-profile.json5文件的signingConfigs配置項(xiàng)中不包含簽名信息。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

  • 當(dāng)未配置簽名信息的工程執(zhí)行HAP打包時(shí),僅會(huì)生成unsigned標(biāo)記的HAP包。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

  • hvigor編譯構(gòu)建工具進(jìn)行build時(shí),提示未配置簽名信息。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

  • 未簽名的HAP包在系統(tǒng)中安裝時(shí),報(bào)未簽名錯(cuò)誤。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

DevEco Studio 自動(dòng)簽名

應(yīng)用在真機(jī)設(shè)備上運(yùn)行,需要提前為應(yīng)用進(jìn)行簽名,DevEco Studio為開發(fā)者提供了自動(dòng)化簽名方案,可以一鍵完成應(yīng)用簽名。

配置自動(dòng)簽名:

  • 單擊File > Project Structure > Project > SigningConfigs界面勾選Automatically generate signature,等待自動(dòng)簽名完成即可,單擊OK。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

  • 查看build-profile.json5配置信息,配置信息中增加自動(dòng)簽名生成的證書信息。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

  • 使用hvigor編譯構(gòu)建工具build,在output目錄中生成標(biāo)記為signed的HAP包。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

修改應(yīng)用權(quán)限等級(jí)

OpenHarmony針對(duì)應(yīng)用訪問額外的系統(tǒng)或其他應(yīng)用的數(shù)據(jù)(包括用戶個(gè)人數(shù)據(jù))或功能,提供了一種訪問控制機(jī)制來保證這些數(shù)據(jù)或功能不會(huì)被不當(dāng)或惡意使用,即應(yīng)用權(quán)限。根據(jù)權(quán)限對(duì)于不同等級(jí)應(yīng)用有不同的開放范圍,權(quán)限類型對(duì)應(yīng)分為以下三種,等級(jí)依次提高。

  • normal權(quán)限
  • system_basic權(quán)限
  • system_core權(quán)限

默認(rèn)情況下自動(dòng)化簽名功能只能申請(qǐng)權(quán)限等級(jí)為“normal”的權(quán)限。若使用了更高級(jí)別的權(quán)限system_core或system_basic,需修改自動(dòng)化簽名所需要的Profile模板,然后再使用自動(dòng)化簽名功能對(duì)應(yīng)用進(jìn)行簽名。

修改Profile模板:

  • 打開OpenHarmony SDK所在目錄,可通過工程根路徑local.properties文件或DevEco Studio菜單欄中單擊File > Settings > SDK > OpenHarmony 界面查看 。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

  • OpenHarmony SDK目錄下,進(jìn)入{Version} > toolchains > lib文件夾,打開UnsgnedReleasedProfileTemplate.json文件。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

  • 根據(jù)需求對(duì)Profile文件進(jìn)行修改,例如需申請(qǐng)最高級(jí)別的權(quán)限等級(jí),則修改apl system_coreProfile修改參考??HarmonyAppProvision配置文件的說明??。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

  • 使用DevEco Studio自動(dòng)化簽名功能(需重新點(diǎn)擊Automatically generate signature )為應(yīng)用重新生成證書文件和配置信息,安裝后通過bm dump指令查看權(quán)限生效情況。

OpenHarmony應(yīng)用簽名 - DevEco Studio 自動(dòng)簽名-開源基礎(chǔ)軟件社區(qū)

??想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??

責(zé)任編輯:jianghua 來源: 51CTO 開源基礎(chǔ)軟件社區(qū)
相關(guān)推薦

2023-03-01 14:55:09

2023-05-23 14:53:26

鴻蒙應(yīng)用開發(fā)

2022-09-21 14:58:11

OH應(yīng)用簽名鴻蒙

2022-03-02 16:08:31

Harmony應(yīng)用開發(fā)鴻蒙

2023-07-11 14:37:20

私有簽名密鑰

2017-09-07 16:00:20

2017-01-04 15:30:33

Android Stu開發(fā)工具自動(dòng)簽名

2012-05-23 09:33:37

TitaniumStudioAndroid APK

2009-08-14 13:40:17

數(shù)字簽名電子簽名安全體系結(jié)構(gòu)

2011-05-27 10:13:39

Android 簽名

2014-07-28 10:09:30

Android

2022-04-12 11:35:43

IDE工具OHOS應(yīng)用鴻蒙

2010-09-02 21:10:13

2022-07-28 14:31:04

canvas鴻蒙

2011-05-27 09:33:31

Android 程序 簽名

2017-02-24 09:30:17

iOS簽名代碼

2021-12-27 16:20:45

鴻蒙HarmonyOS應(yīng)用

2023-12-29 08:58:48

Launch分析調(diào)優(yōu)工具

2010-09-13 08:48:04

Visual Stud

2025-03-25 08:10:00

惡意軟件網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)