1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/openharmony-security_appverify

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Проверка приложения

Введение

Чтобы обеспечить целостность и надёжность приложений, предназначенных для установки в OpenHarmony, эти приложения должны быть подписываться, а их подписи должны проверяться.

  • При разработке приложений: После создания приложения вам необходимо подписать его пакет установки, чтобы гарантировать, что пакет установки не был модифицирован при распространении на устройствах. Чтобы подписать пакет приложения, вы можете использовать средства подписи и сертификаты открытых ключей и следовать спецификациям генерации сертификата подписи, предоставляемым модулем проверки целостности приложений. Для вашего удобства в OpenHarmony зарезервирован сертификат открытого ключа и соответствующий закрытый ключ. Вам следует заменить сертификат открытого ключа и закрытый ключ в вашей коммерческой версии OpenHarmony.- При установке приложений: Подсистема Application Framework OpenHarmony устанавливает приложения. Получив пакет установки приложения, подсистема Application Framework анализирует подпись пакета установки и проверяет подпись с помощью API модуля проверки целостности приложений. Приложение может быть установлено только после успешной проверки. Во время проверки модуль проверки целостности приложений использует зарезервированный сертификат открытого ключа для проверки подписи.## Архитектура

Рисунок 1 Архитектура проверки целостности приложений архитектура-проверки-целостности-приложений

  • API между подсистемами: API, предоставляемые модулем проверки целостности приложений для других модулей

  • Проверка целостности: гарантирует целостность пакетов приложений и предотвращает модификацию через проверку подписей

  • Идентификация источника приложения: идентифицирует источник приложения путём сравнения цепочки сертификатов подписи с списком доверенных источников

Структура директорий

/base/security/appverify
├── interfaces/innerkits/appverify         # Модуль проверки целостности приложений
│       ├── config                         # Сертификаты корневых подписей приложений и конфигурационные файлы для списка доверенных источников
│       ├── include                        # Заголовочные файлы
│       ├── src                            # Исходный код
│       ├── test                           # Автоматизированные тестовые случаи
├── test/resource                          # Тестовые ресурсы

ОграниченияСертификаты, используемые для проверки целостности приложений, специфичны для OpenHarmony. Соответствующие публичные ключи сертификатов и приватные ключи заранее установлены в открытых репозиториях исходного кода OpenHarmony для предоставления возможностей офлайн-подписи и верификации для сообщества открытого исходного кода. Публичные ключи сертификатов и соответствующие им приватные ключи должны быть заменены в коммерческих версиях, основанных на OpenHarmony.## Использование

Модуль проверки целостности приложений предоставляет межсубсистемный API, который вызывается службой управления пакетами (Bundle Manager Service) во время установки приложений.

Доступные API

API Описание
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) {
    // обработка ошибки
}

В涉猎的仓库

Подсистема безопасности

hmf/security/appverify

В涉猎的仓库

Подсистема безопасности

hmf/security/appverify

Перевод:

Исследуемые репозитории

Подсистема безопасности

hmf/security/appverify

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Временно отсутствует описание. Развернуть Свернуть
Apache-2.0
Отмена

Обновления (1)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/openharmony-security_appverify.git
git@api.gitlife.ru:oschina-mirror/openharmony-security_appverify.git
oschina-mirror
openharmony-security_appverify
openharmony-security_appverify
master