Распрацоўнікі аперацыйнай сістэмы
Фармат pkgar не прэтэндуе на ўніверсальнасць і аптымізаваны з улікам спецыфікі аперацыйнай сістэмы Redox OS. Пакетным мэнэджэрам падтрымліваецца верыфікацыя крыніцы па лічбавым подпісе і кантроль цэласнасці. Кантрольныя сумы разлічваюцца пры дапамозе хэш-функцыі
Файл з загалоўкам утрымоўвае асобныя кантрольныя сумы для загалоўка і структур з параметрамі з файла дадзеных, а таксама лічбавы подпіс для праверкі пакета. Файл c дадзенымі ўключае паслядоўны пералік усіх файлаў і каталогаў, якія пастаўляюцца ў пакеце. Перад кожным элементам дадзеных прыводзіцца структура з метададзенымі, якія ўключаюць кантрольную суму для саміх дадзеных, памер, правы доступу, адносны шлях усталёўванага файла і зрушэнне параметраў наступнага элемента дадзеных. Калі падчас абнаўленняў асобныя файлы не змяніліся і кантрольная сума супадае, то яны прапускаюцца і не загружаюцца.
Праверыць цэласнасць крыніцы можна атрымаўшы толькі загалоўкавых файлаў, а карэктнасць абранага файла з дадзенымі - загрузіўшы толькі структуры з параметрамі гэтага файла і пераканаўшыся ў іх адпаведнасці кантрольнай суме, заверанай у загалоўкавым файле. Непасрэдна самі дадзеныя можна праверыць пасля іх загрузкі, выкарыстоўваючы кантрольную суму са структуры з параметрамі, якая ідзе перад дадзенымі.
Пакеты першапачаткова маюць на ўвазе магчымасць паўтаранай зборкі, якая прадугледжвае тое, што стварэнне пакета для вызначанага каталога заўсёды прыводзіць да фармавання ідэнтычнага пакета. Пасля ўсталёўкі ў сістэме захоўваюцца толькі метададзеныя, якіх досыць для рэканструявання пакета з усталяваных дадзеных (склад пакета, кантрольныя сумы, шляхі і правы доступу маюцца ў метададзеных).
Асноўныя мэты pkgar:
- Атамарнасць - абнаўленні ўжываюцца па магчымасці аўтаматычна.
- Эканомія трафіку - дадзеныя перадаюцца па сетцы толькі пры змене хэша (пры абнаўленні загружаюцца толькі якія змяніліся файлы).
- Высокая прадукцыйнасць, задзейнічаны хуткія крыптаграфічныя алгарытмы (blake3 падтрымлівае распаралельванне апрацоўкі дадзеных пры вылічэнні хеша). Калі дадзеныя з рэпазітара не былі раней пракэшаваныя хэш для загружаных дадзеных можа быць вылічаны падчас загрузкі.
- Мінімалістычнасць - у адрозненне ад іншых фарматаў, pkgar уключае толькі метададзеныя, неабходныя для вымання пакета.
- Незалежнасць ад каталога ўсталёўкі - пакет можа быць усталяваны ў любы каталог, любым карыстачом (карыстальнік павінен мець права на запіс у абраны каталог).
- Бяспека - пакеты заўсёды крыптаграфічна верыфікуюцца, а верыфікацыя выконваецца да здзяйснення фактычных аперацый з пакетам (спачатку загружаецца загаловак і калі лічбавы подпіс дакладны, у часовы каталог загружаюцца дадзеныя, якія перамяшчаюцца ў мэтавы каталог пасля верыфікацыі).
Крыніца: opennet.ru