Vývojáři operačního systému
Formát pkgar nepředstírá, že je univerzální a je optimalizován s ohledem na specifika operačního systému Redox OS. Správce balíčků podporuje ověření zdroje pomocí digitálního podpisu a kontroly integrity. Kontrolní součty se počítají pomocí hashovací funkce
Soubor hlavičky obsahuje samostatné kontrolní součty pro hlavičku a struktury s parametry z datového souboru a také digitální podpis pro ověření balíčku. Datový soubor obsahuje sekvenční výpis všech souborů a adresářů dodaných v balíčku. Každému datovému prvku předchází struktura s metadaty, která obsahuje kontrolní součet pro samotná data, velikost, přístupová práva, relativní cestu k instalovanému souboru a offset parametrů dalšího datového prvku. Pokud se během procesu aktualizace jednotlivé soubory nezměnily a kontrolní součet se shoduje, jsou přeskočeny a nenačtou se.
Integritu zdroje můžete zkontrolovat přijetím pouze hlavičkového souboru a správnost vybraného datového souboru načtením pouze struktur s parametry tohoto souboru a ujištěním se, že odpovídají kontrolnímu součtu certifikovanému v hlavičkovém souboru. Samotná data lze po načtení zkontrolovat pomocí kontrolního součtu ze struktury s parametry předcházejícími datům.
Balíčky jsou ze své podstaty opakovatelné, což znamená, že vytvoření balíčku pro konkrétní adresář bude mít vždy za následek identický balíček. Po instalaci jsou v systému uložena pouze metadata, která stačí k rekonstrukci balíčku z nainstalovaných dat (složení balíčku, kontrolní součty, cesty a přístupová práva jsou obsaženy v metadatech).
Hlavní cíle pkgar:
- Atomicita – aktualizace jsou aplikovány automaticky, kdykoli je to možné.
- Úspora provozu - data jsou přenášena po síti pouze při změně hashe (při aktualizaci se stahují pouze změněné soubory).
- Používají se vysoce výkonné, rychlé kryptografické algoritmy (blake3 podporuje paralelní zpracování dat při výpočtu hashů). Pokud data z úložiště nebyla dříve uložena do mezipaměti, lze v době stahování vypočítat hash pro stažená data.
- Minimalistický – Na rozdíl od jiných formátů obsahuje pkgar pouze metadata potřebná k extrahování balíčku.
- Nezávislost na instalačním adresáři - balíček může být instalován do libovolného adresáře, libovolným uživatelem (uživatel musí mít oprávnění k zápisu do zvoleného adresáře).
- Zabezpečení - Pakety jsou vždy kryptograficky ověřeny a ověření se provádí před provedením skutečných operací s balíčkem (nejprve se načte hlavička a pokud je digitální podpis správný, data se načtou do dočasného adresáře, který se poté přesune do cílového adresáře). ověření).
Zdroj: opennet.ru