From 52a5c71214394fe171ac1062c3245142ee732e79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=9B=E6=99=93=E5=AE=87?= Date: Thu, 14 Aug 2025 01:50:30 +0000 Subject: [PATCH 1/5] reopen hap verify in parallel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 丛晓宇 --- .../innerkits/appverify/src/util/hap_signing_block_utils.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interfaces/innerkits/appverify/src/util/hap_signing_block_utils.cpp b/interfaces/innerkits/appverify/src/util/hap_signing_block_utils.cpp index 5e1cbad..b8b4c56 100644 --- a/interfaces/innerkits/appverify/src/util/hap_signing_block_utils.cpp +++ b/interfaces/innerkits/appverify/src/util/hap_signing_block_utils.cpp @@ -666,7 +666,7 @@ bool HapSigningBlockUtils::InitDigestPrefix(const DigestParameter& digestParam, bool HapSigningBlockUtils::HapVerifyParallelizationSupported() { - return OHOS::system::GetBoolParameter("const.appverify.hap_verify_parallel", false); + return OHOS::system::GetBoolParameter("const.appverify.hap_verify_parallel", true); } } // namespace Verify } // namespace Security -- Gitee From 87389a068717f70d1f249f4c928316fe1c0a3b4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=9B=E6=99=93=E5=AE=87?= Date: Thu, 14 Aug 2025 01:53:13 +0000 Subject: [PATCH 2/5] add interface MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 丛晓宇 --- .../innerkits/appverify/include/common/random_access_file.h | 1 + 1 file changed, 1 insertion(+) diff --git a/interfaces/innerkits/appverify/include/common/random_access_file.h b/interfaces/innerkits/appverify/include/common/random_access_file.h index 3e7c799..43f2f15 100644 --- a/interfaces/innerkits/appverify/include/common/random_access_file.h +++ b/interfaces/innerkits/appverify/include/common/random_access_file.h @@ -46,6 +46,7 @@ private: long long ReadFileFullyFromOffsetV2(char buf[], long long offset, int32_t bufCapacity); long long ReadFileFullyFromOffsetV2(HapByteBuffer& buffer, long long offset); bool ReadFileFromOffsetAndDigestUpdateV2(const DigestParameter& digestParam, int32_t chunkSize, long long offset); + static bool HapVerifyParallelizationSupported(); static const int32_t FILE_OPEN_FAIL_ERROR_NUM; static int32_t memoryPageSize; int32_t fd = 0; -- Gitee From ae90b4e0ca587ec419cdb1883274a3ffeb1af782 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=9B=E6=99=93=E5=AE=87?= Date: Thu, 14 Aug 2025 01:55:51 +0000 Subject: [PATCH 3/5] use pread for hap verify in parallel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 丛晓宇 --- .../innerkits/appverify/src/common/random_access_file.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/interfaces/innerkits/appverify/src/common/random_access_file.cpp b/interfaces/innerkits/appverify/src/common/random_access_file.cpp index d654f66..508fce1 100644 --- a/interfaces/innerkits/appverify/src/common/random_access_file.cpp +++ b/interfaces/innerkits/appverify/src/common/random_access_file.cpp @@ -17,6 +17,7 @@ #include #include +#include #include #include #include @@ -178,7 +179,7 @@ long long RandomAccessFile::ReadFileFullyFromOffset(HapByteBuffer& buffer, long bool RandomAccessFile::ReadFileFromOffsetAndDigestUpdate(const DigestParameter& digestParam, int32_t chunkSize, long long offset) { - if (readFile_) { + if (readFile_ || HapVerifyParallelizationSupported()) { return ReadFileFromOffsetAndDigestUpdateV2(digestParam, chunkSize, offset); } MmapInfo mmapInfo; @@ -264,6 +265,11 @@ bool RandomAccessFile::ReadFileFromOffsetAndDigestUpdateV2(const DigestParameter delete[] buffer; return res; } + +bool RandomAccessFile::HapVerifyParallelizationSupported() +{ + return OHOS::system::GetBoolParameter("const.appverify.hap_verify_parallel", true); +} } // namespace Verify } // namespace Security } // namespace OHOS -- Gitee From 43a93eb5e22960f76061b330fca6cd82ddb706f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=9B=E6=99=93=E5=AE=87?= Date: Thu, 14 Aug 2025 09:09:54 +0000 Subject: [PATCH 4/5] update interfaces/innerkits/appverify/src/util/hap_signing_block_utils.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 丛晓宇 --- .../innerkits/appverify/src/util/hap_signing_block_utils.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interfaces/innerkits/appverify/src/util/hap_signing_block_utils.cpp b/interfaces/innerkits/appverify/src/util/hap_signing_block_utils.cpp index b8b4c56..5e1cbad 100644 --- a/interfaces/innerkits/appverify/src/util/hap_signing_block_utils.cpp +++ b/interfaces/innerkits/appverify/src/util/hap_signing_block_utils.cpp @@ -666,7 +666,7 @@ bool HapSigningBlockUtils::InitDigestPrefix(const DigestParameter& digestParam, bool HapSigningBlockUtils::HapVerifyParallelizationSupported() { - return OHOS::system::GetBoolParameter("const.appverify.hap_verify_parallel", true); + return OHOS::system::GetBoolParameter("const.appverify.hap_verify_parallel", false); } } // namespace Verify } // namespace Security -- Gitee From 035a428ece8eb1f1d01a0de3ef4b16580e8a5af8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=9B=E6=99=93=E5=AE=87?= Date: Thu, 14 Aug 2025 09:10:38 +0000 Subject: [PATCH 5/5] update interfaces/innerkits/appverify/src/common/random_access_file.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 丛晓宇 --- .../innerkits/appverify/src/common/random_access_file.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interfaces/innerkits/appverify/src/common/random_access_file.cpp b/interfaces/innerkits/appverify/src/common/random_access_file.cpp index 508fce1..fc5a9c3 100644 --- a/interfaces/innerkits/appverify/src/common/random_access_file.cpp +++ b/interfaces/innerkits/appverify/src/common/random_access_file.cpp @@ -268,7 +268,7 @@ bool RandomAccessFile::ReadFileFromOffsetAndDigestUpdateV2(const DigestParameter bool RandomAccessFile::HapVerifyParallelizationSupported() { - return OHOS::system::GetBoolParameter("const.appverify.hap_verify_parallel", true); + return OHOS::system::GetBoolParameter("const.appverify.hap_verify_parallel", false); } } // namespace Verify } // namespace Security -- Gitee