Operációs rendszer fejlesztők
A pkgar formátum nem úgy tesz, mintha univerzális lenne, és a Redox OS operációs rendszer sajátosságait figyelembe véve van optimalizálva. A csomagkezelő támogatja a forrásellenőrzést digitális aláírással és integritás-ellenőrzéssel. Az ellenőrző összegek kiszámítása hash függvény segítségével történik
A fejlécfájl külön ellenőrző összegeket tartalmaz a fejléchez és az adatfájlból származó paraméterekkel rendelkező struktúrákhoz, valamint egy digitális aláírást a csomag ellenőrzéséhez. Az adatfájl tartalmazza a csomagban található összes fájl és könyvtár egymás utáni listáját. Minden adatelemet egy metaadatokat tartalmazó struktúra előz meg, amely magában foglalja az adatok ellenőrző összegét, méretét, hozzáférési jogait, a telepítendő fájl relatív elérési útját és a következő adatelem paramétereinek eltolását. Ha a frissítési folyamat során az egyes fájlok nem változtak, és az ellenőrző összeg megegyezik, akkor a rendszer kihagyja és nem tölti be őket.
A forrás sértetlenségét úgy ellenőrizheti, hogy csak a fejlécfájlt fogadja, a kiválasztott adatfájl helyességét pedig úgy, hogy csak a struktúrákat tölti be ennek a fájlnak a paramétereivel, és ellenőrizze, hogy azok megfelelnek-e a fejlécfájlban hitelesített ellenőrző összegnek. Magát az adatot a betöltés után lehet ellenőrizni, az adatot megelőző paraméterekkel rendelkező struktúrából származó ellenőrző összeg segítségével.
A csomagok eredendően megismételhetők, ami azt jelenti, hogy egy adott könyvtárhoz csomag létrehozása mindig azonos csomagot eredményez. Telepítés után csak a metaadatok kerülnek mentésre a rendszerbe, ami elegendő a csomagnak a telepített adatokból történő rekonstruálásához (a csomag összetételét, ellenőrző összegeket, elérési utakat és hozzáférési jogosultságokat a metaadatok tartalmazzák).
A pkgar fő céljai:
- Atomosság – a frissítések automatikusan alkalmazásra kerülnek, amikor csak lehetséges.
- Forgalommegtakarítás - az adatok csak akkor kerülnek átvitelre a hálózaton, ha a hash megváltozik (a frissítés során csak a megváltozott fájlok kerülnek letöltésre).
- Nagy teljesítményű, gyors kriptográfiai algoritmusokat használnak (a blake3 támogatja a párhuzamos adatfeldolgozást a hash kiszámításakor). Ha az adattárból származó adatok korábban nem lettek gyorsítótárazva, a letöltött adatokhoz a letöltéskor kivonat számítható.
- Minimalista – Más formátumoktól eltérően a pkgar csak a csomag kibontásához szükséges metaadatokat tartalmazza.
- A telepítési könyvtár függetlensége - a csomagot bármely könyvtárba, bármely felhasználó telepítheti (a felhasználónak írási jogosultsággal kell rendelkeznie a kiválasztott könyvtárba).
- Biztonság - A csomagokat mindig titkosításilag ellenőrzik, és az ellenőrzést a csomagon végrehajtott tényleges műveletek előtt hajtják végre (először a fejléc töltődik be, és ha a digitális aláírás megfelelő, akkor az adatok egy ideiglenes könyvtárba kerülnek, amely azután átkerül a célkönyvtárba. igazolás).
Forrás: opennet.ru