Operativsystem udviklere
pkgar-formatet foregiver ikke at være universelt og er optimeret under hensyntagen til de specifikke specifikationer af Redox OS-operativsystemet. Pakkehåndteringen understøtter kildebekræftelse ved hjælp af en digital signatur og integritetskontrol. Kontrolsummer beregnes ved hjælp af en hash-funktion
Header-filen indeholder separate kontrolsummer for headeren og strukturer med parametre fra datafilen, samt en digital signatur til at verificere pakken. Datafilen inkluderer en sekventiel liste over alle filer og mapper, der er leveret i pakken. Hvert dataelement er forudgået af en struktur med metadata, der inkluderer en kontrolsum for selve dataene, størrelse, adgangsrettigheder, relativ sti til filen, der installeres, og forskydningen af parametrene for det næste dataelement. Hvis individuelle filer ikke er ændret under opdateringsprocessen, og kontrolsummen matcher, springes de over og indlæses ikke.
Du kan kontrollere kildens integritet ved kun at modtage header-filen og korrektheden af den valgte datafil ved kun at indlæse strukturerne med parametrene for denne fil og sørge for, at de overholder kontrolsummen, der er certificeret i header-filen. Selve dataene kan kontrolleres, efter at de er blevet indlæst, ved hjælp af kontrolsummen fra strukturen med parametre, der går forud for dataene.
Pakker er i sagens natur gentagelige, hvilket betyder, at oprettelse af en pakke til en specifik mappe altid vil resultere i en identisk pakke. Efter installationen gemmes kun metadata i systemet, hvilket er tilstrækkeligt til at rekonstruere pakken fra de installerede data (sammensætningen af pakken, kontrolsummer, stier og adgangsrettigheder er indeholdt i metadataene).
Hovedmål med pkgar:
- Atomicitet - opdateringer anvendes automatisk, når det er muligt.
- Trafikbesparelser - data overføres kun over netværket, når hashen ændres (under opdatering downloades kun ændrede filer).
- Der bruges højtydende, hurtige kryptografiske algoritmer (blake3 understøtter parallel databehandling ved beregning af hash). Hvis dataene fra depotet ikke tidligere er blevet cachelagret, kan en hash for de downloadede data beregnes på downloadtidspunktet.
- Minimalistisk - I modsætning til andre formater inkluderer pkgar kun de metadata, der er nødvendige for at udtrække pakken.
- Uafhængighed af installationsmappen - pakken kan installeres i enhver mappe, af enhver bruger (brugeren skal have skrivetilladelse til den valgte mappe).
- Sikkerhed - Pakker verificeres altid kryptografisk, og verifikation udføres før egentlige handlinger udføres på pakken (headeren indlæses først, og hvis den digitale signatur er korrekt, indlæses data i en midlertidig mappe, som flyttes til målbiblioteket efter verifikation).
Kilde: opennet.ru