Verifying Integrity of a Web SDK Package
Description
Check the integrity of downloaded SDK packages, that is, check whether the packages are tampered with or packets are lost during download.
Starting from 1.0.17, the digital signature CMS file is used for integrity verification. In earlier versions, SHA-256 values are still used.
Verifying a Digital Signature CMS File
1. 1. Obtain the download path of the SDK package from Downloading the Web SDK.
2. Download the SDK package to your device.
3. Download the following root CA certificate and CRLs from the Huawei support website:
Root CA certificate: Huawei Software Integrity Protection Root CA.der
CRLs: HuaweiRootCA.crl, HuaweiCodeSigningCA.crl, HuaweiCodeSigningCA 2.crl, and HuaweiCodeSigningCA 3.crl
4. Convert the formats of the CA certificate and CRLs from DER to PEM.

Names of certificate to be converted may differ from those of downloaded ones. Use the actual certificate names.
For CRLs:
openssl crl -inform DER -in "HuaweiRootCA.crl" -out HuaweiRootCaCrl.pem openssl crl -inform DER -in "HuaweiCodeSigningCA 3.crl" -out HuaweiCodeSigningCA3.pem openssl crl -inform DER -in "HuaweiCodeSigningCA 2.crl" -out HuaweiCodeSigningCA2.pem openssl crl -inform DER -in HuaweiCodeSigningCA.crl -out HuaweiCodeSigningCA.pem
For CA certificate:
openssl x509 -inform DER -in "Huawei Software Integrity Protection Root CA.der" -out HuaweiRootCA.pem
5. Use Notepad to open the files obtained in step 4. Copy and paste the content of HuaweiRootCaCrl.pem, HuaweiCodeSigningCA3.pem, HuaweiCodeSigningCA2.pem, and HuaweiCodeSigningCA.pem sequentially to the end of the content of HuaweiRootCA.pem.
6. Perform CMS verification.
openssl cms -verify -inform DER -crl_check_all -in hwmeeting-1.0.18.tgz.cms -content hwmeeting-1.0.18.tgz -CAfile HuaweiRootCA.pem -out cmsVerifiedData -binary -purpose any -certsout tmpCertChain.pem
If a message similar to the following is displayed, the verification is successful:
CMS Verification successful
Comparing SHA-256 Values
1. Obtain the download path of the SDK package from Downloading the Web SDK.
2. Download the SDK package to your device.
3. Open the CLI and run the following command to generate the SHA-256 value of the downloaded SDK package. In the command, D:\hwmeeting-1.0.16.tgz indicates the local path for storing the SDK package and the SDK package name. Replace it with the actual value.
certutil -hashfile D:\hwmeeting-1.0.16.tgz SHA256
The following is an example of the command output:
SHA256 D:\hwmeeting-1.0.16.tgz hash: 6d73467a02cecc3ec7852b26267d834e327064891c5a28923bd55835c82a50cd CertUtil: -hashfile Command executed
Compare the generated SHA-256 value with that listed in the package download path table. If they are the same, no tampering or packet loss occurred during download.
Version |
Resource |
SHA-256 Value |
---|---|---|
1.0.16 |
Web UI SDK |
47c29685311059b87257b6fbc714eccc58bd32602aad9498ad68e1d6008e1bc9 |
Web UI SDK npm package |
6d73467a02cecc3ec7852b26267d834e327064891c5a28923bd55835c82a50cd |
|
1.0.15 |
Web UI SDK |
aa5fbd96d928e5b3f6e58c1dc1add6c30c8cd78848b01afdfdc9fe46cc4a5669 |
Web UI SDK npm package |
eeb6d77566f869ae775837a608c5ece04a48516e2c37c8472b4ac662e6a127f8 |
|
1.0.13 |
Web UI SDK |
cdab1bd4eb0f36efe13a054d426c1770645f1086dd9d488a85bca751fd9504a2 |
Web UI SDK npm package |
28812170e45fdb23d29ac4fee2cf93e9f0bc49419966f485834b758c18ae2f55 |
|
1.0.12 |
Web UI SDK |
7838af8caaae332d3397f6eff38424c802021f2769ff1bd82d6ed1fcbf13a8e4 |
Web UI SDK npm package |
70794d6385a52482bd9b47af52782ba413958b45d213a97c21813450b00c8cb7 |
|
1.0.11 |
Web UI SDK |
00bdb10546c436b652e45d4722e90df24a9eefc5b205f6a4e7fdbe67a89fbd0c |
Web UI SDK npm package |
60df5eca8cdfd6bbf9c3bb4d38db357c886cacc3a88d5b0e57fe49cbab818a57 |
|
1.0.10 |
Web UI SDK |
ddabd57023b8a0ee2e821b1cdab54124fe921a0ef157d0eb2f04da15cf146e77 |
Web UI SDK npm package |
eeee09aa9b6da896229811f61ab0c8b22ef6c4be2b373301b287b0752d711477 |
|
1.0.9 |
Web UI SDK |
9c50ff7e664496fd24e5ffe257ae920f32c2f9c254e8b28c8acba83f28d80b35 |
Web UI SDK npm package |
f0507d513a05e65368b97ded0dbd3e98131240acdf9f93027a60f024e6ae2d52 |
|
1.0.8 |
Web UI SDK |
ae8d56f5a1d11f4009367051ea5816820478daa7f1d75a16e0b967a4523a1d4d |
Web UI SDK npm package |
6b554db9231b3037903bde4220ab9a5c2cf6148c3501ee3d48d24e87f2cd6476 |
|
1.0.7 |
Web UI SDK |
8be877048299a0ad8fb6813afbf74b21decdd2eb2190507de14e4ef2f6d6baba |
Web UI SDK npm package |
e2aeb2254790aad147167a89acc0786d71600db69399917538627e3c7da7e2c9 |
|
1.0.6 |
Web UI SDK |
d97987ea8bf0e4f90ee358d7426b1e966470dad990116db9371ee3edc91bb925 |
Web UI SDK npm package |
6c5aae05d32cea7d1daa7bc4ad971e311f76cb22713ac6d022eb563ccfe3cfe9 |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot