Skip to content

pkigovkz/NCALayer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

NCALayer

Приложение представляет собой ядро, основанное на Apache Felix и для полной функциональности требует обязательные (required) jar-модули (OSGi bundles) при запуске. Они должны находиться в src/main/resources/kncabundles при сборке. Также для сборки требуется криптопровайдер НУЦ KalkanCrypt.


ncalayer.der представляет собой подписанный CMS (в оригинале - JSON-файл), изначально входит в состав приложения и распаковывается при первом запуске. В дальнейшем скачивается из указанного в updurl адреса. Содержит служебную информацию, такую как:

  • доступность обновлений как для ядра, так и для бандлов;
  • bundles - разрешенные бандлы;
  • syspkgs - экспортируемые пакеты ядром (с версии 1.1).

При запуске (с версии 1.1 также и при установке) бандлы из кэша сверяются со списком из ncalayer.der, а при несоответствиях удаляются.

Бандлы идентифицируются по:

  • symname - Bundle-SymbolicName;
  • csernum - Code-signing certificate's serial number;
  • chash - Code-signing certificate's hash with SHA-256.

Обязательные параметры:

  • name - название бандла для отображения в окне "Управление модулями";

  • version - номер версии;

  • info - краткая информация об обновлении;

  • url - адрес для скачивания бандла;

  • hash - хэш бандла.

Также у бандлов могут быть опциональные параметры, такие как:

  • hidden - бандл скрыт в окне "Управления модулями", но его можно установить вручную. А обновляться будет автоматически;
  • required - бандл является обязательным для успешного запуска приложения.

trusted.jks содержит сертификаты КУЦ и НУЦ, а также сертификаты для верификации файла обновления (ncalayer.der). То есть до истечения срока действия сертификата подписанта необходимо заранее включить его новый сертификат и обновить приложение. Некоторое время файл обновления будет подписываться старым ключом, а в дальнейшем уже будет использоваться новый ключ.

About

The application core

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published