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

OSCHINA-MIRROR/openharmony-security_appverify

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

appverify

Введение

Для обеспечения целостности и надежности приложений, устанавливаемых в 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, которое вызывается службой управления пакетами (BMS) во время установки приложения.

Доступные 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) {
    // обработка ошибки
}
```## Вовлеченные репозитории<a name="section1371113476307"></a>

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

hmf/security/appverify

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

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

Введение

Временно отсутствует описание. Развернуть Свернуть
C++ и 2 других языков
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