Для обеспечения целостности и надежности приложений, устанавливаемых в OpenHarmony, приложения должны быть подписаны, а их подписи должны быть проверены.
Рисунок 1 Архитектура проверки целостности приложений
API между подсистемами: API, предоставляемые модулем проверки целостности приложений для других модулей
Проверка целостности: гарантирует целостность пакетов приложений и предотвращает их изменение через проверку подписи.
Идентификация источника приложения: идентифицирует источник приложения путём сопоставления цепочки сертификатов подписи со списком доверенных источников.
/base/security/appverify
├── interfaces/innerkits/appverify # Модуль проверки целостности приложения
│ ├── config # Корневые сертификаты подписи приложения и конфигурационные файлы для списка доверенных источников
│ ├── include # Файлы заголовков
│ ├── src # Исходный код
│ ├── test # Автоматизированные тестовые случаи
├── test/resource # Тестовые ресурсы
Модуль проверки целостности приложения предоставляет межсистемное API, которое вызывается службой управления пакетами (BMS) во время установки приложения.
int32_t HapVerify(const std::string& filePath, HapVerifyResult& hapVerifyResult) |
Проверяет целостность приложения и идентифицирует источник приложения. |
API HapVerify(), предоставляемый модулем проверки целостности приложения, является межсистемным API. Этот API можно вызвать, передав путь к файлу HAP для проверки целостности приложения, а результат проверки можно получить из возвращаемого значения. Подпись приложения можно получить из входного параметра hapVerifyResult.
Security::Verify::HapVerifyResult verifyResult;
int32_t res = Security::Verify::HapVerify(hapPath, verifyResult);
if (res != Security::Verify::HapVerifyResultCode::VERIFY_SUCCESS) {
// обработка ошибки
}
```## Вовлеченные репозитории<a name="section1371113476307"></a>
Подсистема безопасности
hmf/security/appverify
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )