Projeya Redox OS rêveberê pakêta pkgar, ku bi Rust hatî nivîsandin destnîşan kir

Pêşdebirên pergala xebitandinê redox, nivîsandin bikaranîna zimanê Rust û têgeha microkernel, pêşkêş kirin rêveberê pakêtê ya nû pkgar. Proje formatek pakêtê ya nû, pirtûkxaneyek rêveberiya pakêtê, û amûrek rêza fermanê ji bo afirandina û vegerandina berhevokek pelan a verastkirî ya krîptografî pêş dixe. Koda pkgar bi Rust û hatiye nivîsandin belav kirin ji hêla di bin lîsansa MIT.

Forma pkgar wekî gerdûnî xuya nake û li gorî taybetmendiyên pergala xebitandina Redox OS-ê xweşbîn e. Rêvebirê pakêtê verastkirina çavkaniyê bi karanîna nîşanek dîjîtal û kontrolkirina yekparebûnê piştgirî dike. Checksums bi karanîna fonksiyonek hash têne hesibandin blake3. Karbidestiya pkgar-ê ya girêdayî verastkirinê bêyî ku bi rastî arşîva pakêtê were hilanîn, tenê bi manîpulekirina beşa sernavê dikare were gihîştin. Bi taybetî, pakêt ji pelê sernavê (.pkgar_head) û pelê daneyê (.pkgar_data) pêk tê. Pakêtek kurteya bêkêmasî (.pkgar) ya ku bi rast hatî îmzekirin dikare bi tenê bi pêvekirina pelê sernavê li pelê daneyê ("cat example.pkgar_head example.pkgar_data > example.pkgar") were bidestxistin.

Pelê sernavê ji bo sernav û strukturên bi parametreyên ji pelê daneyê, û hem jî îmzeyek dîjîtal ji bo verastkirina pakêtê kontrolên cihêreng vedihewîne. Di pelê daneyê de navnîşek rêzdar a hemî pel û peldankên ku di pakêtê de têne peyda kirin vedihewîne. Berî her hêmanek daneyê avahiyek bi metadata heye ku ji bo daneya xwe, mezinahî, mafên gihîştinê, rêça têkildar a pelê ku tê saz kirin, û veqetandina pîvanên hêmana daneya paşîn kontrolek vedihewîne. Ger di dema pêvajoya nûvekirinê de pelên kesane nehatine guhertin û jimareya kontrolê li hev bikin, wê hingê ew têne avêtin û nayên barkirin.

Hûn dikarin yekbûna çavkaniyê bi wergirtina tenê pelê sernavê, û rastbûna pelê daneya hilbijartî kontrol bikin bi tenê strukturên bi pîvanên vê pelê barkirin û pê ewle bibin ku ew li gorî jimareya kontrolê ya ku di pelê sernavê de hatî pejirandin tevdigerin. Dane bixwe dikare piştî ku hate barkirin, bi karanîna jimareya kontrolê ya ji strukturê digel pîvanên berî daneyê were kontrol kirin.

Pakêt bi xwezayî têne dubare kirin, tê vê wateyê ku çêkirina pakêtek ji bo pelrêçek taybetî dê her gav pakêtek wekhev encam bide. Piştî sazkirinê, tenê metadata di pergalê de tê hilanîn, ku ji bo nûvekirina pakêtê ji daneyên sazkirî bes e (tevlîheva pakêtê, jimareyên kontrolê, rê û mafên gihîştinê di metadata de hene).

Armancên sereke yên pkgar:

  • Atomicity - nûvekirin dema ku gengaz dibe bixweber têne sepandin.
  • Teserûfa trafîkê - tenê dema ku haş diguhere, dane li ser torê tê veguheztin (di dema nûvekirinê de, tenê pelên guheztin têne dakêşandin).
  • Performansa bilind, algorîtmayên krîptografî yên bilez têne bikar anîn (blake3 dema ku haşeyan hesab dike pêvekirina daneya paralel piştgirî dike). Heke daneyên ji depoyê berê nehatibin cache, ji bo daneyên dakêşandî haşek dikare di dema dakêşanê de were hesibandin.
  • Minimalistic - Berevajî formatên din, pkgar tenê metadata ku ji bo derxistina pakêtê hewce dike vedihewîne.
  • Serxwebûna pelrêça sazkirinê - pakêt dikare di her pelrêça, ji hêla her bikarhênerek ve were saz kirin (divê bikarhêner destûrnameya nivîsandina pelrêça hilbijartî hebe).
  • Ewlekarî - Paket her gav bi şîfre têne verast kirin, û verastkirin berî ku operasyonên rastîn li ser pakêtê bêne kirin (sernivîsa pêşîn tê barkirin û heke îmzeya dîjîtal rast be, dane di pelrêçekek demkî de tê barkirin, ku piştî pelrêça armanc tê bar kirin. tesdîq).

Source: opennet.ru

Add a comment