Die Redox OS-projek het die pkgar-pakketbestuurder bekendgestel wat in Rust geskryf is

bedryfstelsel ontwikkelaars redoks, geskryf die gebruik van die Rust-taal en die mikrokern-konsep, aangebied nuwe pakketbestuurder pkgar. Die projek ontwikkel 'n nuwe pakketformaat, 'n pakketbestuursbiblioteek en 'n opdraglyn-nutsdingstel vir die skep en herwinning van 'n kriptografies geverifieerde versameling lêers. Die pkgar-kode is geskryf in Rust en versprei deur onder die MIT-lisensie.

Die pkgar-formaat gee nie voor om universeel te wees nie en is geoptimaliseer met inagneming van die besonderhede van die Redox OS-bedryfstelsel. Die pakketbestuurder ondersteun bronverifikasie deur 'n digitale handtekening en integriteitsbeheer te gebruik. Kontrolesomme word met behulp van 'n hash-funksie bereken blak3. Die verifikasieverwante funksionaliteit van pkgar kan verkry word sonder om die pakketargief werklik te stoor, deur slegs die kopgedeelte te manipuleer. Die pakket bestaan ​​veral uit 'n koplêer (.pkgar_head) en 'n datalêer (.pkgar_data). 'n Korrek ondertekende volledige opsommingspakket (.pkgar) kan verkry word deur bloot die koplêer by die datalêer te voeg (“cat example.pkgar_head example.pkgar_data > example.pkgar”).

Die koplêer bevat afsonderlike kontrolesomme vir die kopskrif en strukture met parameters van die datalêer, sowel as 'n digitale handtekening om die pakket te verifieer. Die datalêer bevat 'n opeenvolgende lys van alle lêers en gidse wat in die pakket verskaf word. Elke data-element word voorafgegaan deur 'n struktuur met metadata wat 'n kontrolesom vir die data self, grootte, toegangsregte, relatiewe pad van die lêer wat geïnstalleer word, en die afwyking van die parameters van die volgende data-element insluit. As individuele lêers nie verander het tydens die opdateringsproses nie en die kontrolesom pas, dan word hulle oorgeslaan en nie gelaai nie.

U kan die integriteit van die bron nagaan deur slegs die koplêer te ontvang, en die korrektheid van die geselekteerde datalêer deur slegs die strukture met die parameters van hierdie lêer te laai en seker te maak dat hulle voldoen aan die kontrolesom wat in die koplêer gesertifiseer is. Die data self kan nagegaan word nadat dit gelaai is, met behulp van die kontrolesom van die struktuur met parameters wat die data voorafgaan.

Pakkette is inherent herhaalbaar, wat beteken dat die skep van 'n pakket vir 'n spesifieke gids altyd 'n identiese pakket tot gevolg sal hê. Na installasie word slegs metadata in die stelsel gestoor, wat voldoende is om die pakket uit die geïnstalleerde data te rekonstrueer (die samestelling van die pakket, kontrolesomme, paaie en toegangsregte is in die metadata vervat).

Hoofdoelwitte van pkgar:

  • Atomicity-opdaterings word outomaties toegepas waar moontlik.
  • Verkeersbesparing - data word slegs oor die netwerk oorgedra wanneer die hash verander (tydens opdatering word slegs veranderde lêers afgelaai).
  • Hoë werkverrigting, vinnige kriptografiese algoritmes word gebruik (blake3 ondersteun parallelle dataverwerking wanneer hashes bereken word). As die data van die bewaarplek nie voorheen gekas is nie, kan 'n hash vir die afgelaaide data bereken word tydens aflaaityd.
  • Minimalisties - Anders as ander formate, bevat pkgar slegs die metadata wat nodig is om die pakket te onttrek.
  • Onafhanklikheid van die installasiegids - die pakket kan in enige gids geïnstalleer word deur enige gebruiker (die gebruiker moet skryftoestemming na die geselekteerde gids hê).
  • Sekuriteit - Pakkies word altyd kriptografies geverifieer, en verifikasie word uitgevoer voordat werklike bewerkings op die pakket uitgevoer word (die kopskrif word eerste gelaai en as die digitale handtekening korrek is, word data in 'n tydelike gids gelaai, wat na die teikengids geskuif word nadat verifikasie).

Bron: opennet.ru

Voeg 'n opmerking