1# signcenter\_tool<a name="EN-US_TOPIC_0000001086718894"></a> 2 3- [Introduction](#section11660541593) 4- [Directory Structure](#section161941989596) 5- [Constraints](#section119744591305) 6- [Usage](#section1312121216216) 7 8## Introduction<a name="section11660541593"></a> 9 10During system building, OpenHarmony signs system applications to ensure their integrity and source reliability. This module provides a binary tool \(**hapsigntoolv2.jar**\) for signing OpenHarmony system applications. 11 12## Directory Structure<a name="section161941989596"></a> 13 14``` 15/prebuilts/signcenter 16├── NOTICE # Open-source NOTICE file 17├── hapsigntool # Signing tool 18│ └── hapsigntoolv2.jar # OpenHarmony signing tool 19``` 20 21## Constraints<a name="section119744591305"></a> 22 23Running environment: JDK 8 24 25## Usage<a name="section1312121216216"></a> 26 27The following is an example command for signing applications: 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 33Descriptions of the fields in the preceding command: 34 35``` 36hapsigntoolv2.jar: OpenHarmony signing tool 37-mode: signing mode. The OpenHarmony signing key pair is stored in the local keystore file. The signing mode is localjks. 38-privatekey: alias of the signing key pair 39-inputFile: application to be signed 40-outputFile: signed application 41-signAlg: signing algorithm 42-keystore: path of the keystore file 43-keystorepasswd: password of the keystore file. The default password of OpenHarmony.jks is 123456. 44-keyaliaspasswd: password of the signing key pair. The password of OpenHarmony Software Signature is 123456. 45-profile: a file declaring the capabilities and permissions of the application 46-certpath: path of the signing certificate 47-profileSigned: whether the application profile is signed. Value 1 indicates that the profile is signed; value 0 indicates the opposite. The default value is 1. 48``` 49 50