1# 签名工具仓<a name="ZH-CN_TOPIC_0000001086718894"></a> 2 3- [简介](#section11660541593) 4- [目录](#section161941989596) 5- [约束](#section119744591305) 6- [说明](#section1312121216216) 7 8## 简介<a name="section11660541593"></a> 9 10在OpenHarmony构建中需要对应用进行签名,以此保证应用完整性和来源可靠。本仓提供二进制签名工具(hapsigntoolv2.jar),用于OpenHarmony应用签名。 11 12## 目录<a name="section161941989596"></a> 13 14``` 15/prebuilts/signcenter 16├── NOTICE # 开源NOTICE 17├── hapsigntool # 签名工具存放目录 18│ └── hapsigntoolv2.jar # OpenHarmony应用签名工具 19``` 20 21## 约束<a name="section119744591305"></a> 22 23运行环境约束:JDK8 24 25## 说明<a name="section1312121216216"></a> 26 27签名命令示例: 28 29``` 30java -jar hapsigntoolv2.jar sign -mode localjks -privatekey "OpenHarmony Software Signature" -inputFile camera.hap -outputFile signed_camera.hap -signAlg SHA256withECDSA -keystore OpenHarmony.jks -keystorepasswd 123456 -keyaliaspasswd 123456 -profile camera_release.p7b -certpath OpenHarmony.cer -profileSigned 1 31``` 32 33关键字段说明: 34 35``` 36hapsigntoolv2.jar :OpenHarmony签名工具 37-mode :签名模式。OpenHarmony签名密钥存放于本地keystore文件,因此签名模式选择localjks 38-privatekey:密钥对别名 39-inputFile :待签名的应用 40-outputFile:签名后的应用 41-signAlg : 签名算法 42-keystore:keystore文件路径 43-keystorepasswd:keystore的密码,OpenHarmony.jks的默认密码为123456 44-keyaliaspasswd:签名密钥的密码,密钥(OpenHarmony Software Signature)的默认密码为123456 45-profile :应用能力授权文件 46-certpath:签名证书文件路径 47-profileSigned:指示profile文件是否带有签名,1表示有签名,0表示没有签名,缺省值为1。 48``` 49 50