ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ Redox OS прСдстави ΠΏΠ°ΠΊΠ΅Ρ‚Π΅Π½ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€ pkgar, написан Π½Π° Rust

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ‚Π° систСма Redox, написана с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΅Π·ΠΈΠΊΠ° Rust ΠΈ концСпцията Π·Π° микроядро, прСдставиха Π½ΠΎΠ² ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ pkgar. Π’ Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° сС Ρ€Π°Π·Π²ΠΈΠ²Π° Π½ΠΎΠ² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠΈ инструмСнти Π·Π° командния Ρ€Π΅Π΄ Π·Π° създаванС ΠΈ ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅ Π½Π° криптографски ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΈ ΠΊΠΎΠ»Π΅ΠΊΡ†ΠΈΠΈ ΠΎΡ‚ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅. ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° pkgar Π΅ написан Π½Π° Π΅Π·ΠΈΠΊΠ° Rust ΠΈ сС разпространява ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π· MIT.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ΡŠΡ‚ Π½Π° pkgar Π½Π΅ ΠΏΡ€Π΅Ρ‚Π΅Π½Π΄ΠΈΡ€Π° Π·Π° унивСрсалност ΠΈ Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ с ΠΎΠ³Π»Π΅Π΄ спСцификата Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ‚Π° систСма Redox OS. ΠœΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€ΡŠΡ‚ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° вСрификация Π½Π° ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊΠ° ΠΏΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ² подпис ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° цСлостта. ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΈΡ‚Π΅ суми сС изчисляват с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Ρ…Π΅Ρˆ-функция blake3. Π‘Π²ΡŠΡ€Π·Π°Π½Π°Ρ‚Π° с вСрификацията функционалност Π½Π° pkgar ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Π΄ΠΎΡΡ‚ΡŠΠΏΠ½Π° Π±Π΅Π· фактичСското Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° Π°Ρ€Ρ…ΠΈΠ²Π° Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π°, ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€Π°ΠΉΠΊΠΈ само Π·Π°Π³Π»Π°Π²Π½Π°Ρ‚Π° част. Π’ частност, ΠΏΠ°ΠΊΠ΅Ρ‚ΡŠΡ‚ сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ Π·Π°Π³Π»Π°Π²Π΅Π½ Ρ„Π°ΠΉΠ» (.pkgar_head) ΠΈ Ρ„Π°ΠΉΠ» с Π΄Π°Π½Π½ΠΈ (.pkgar_data). ΠšΠΎΡ€Π΅ΠΊΡ‚Π½ΠΎ подписан Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½ ΠΏΠ°ΠΊΠ΅Ρ‚ (.pkgar) ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ Ρ‡Ρ€Π΅Π· просто съСдиняванС Π½Π° заглавния Ρ„Π°ΠΉΠ» с Ρ„Π°ΠΉΠ»Π° с Π΄Π°Π½Π½ΠΈ (Β«cat example.pkgar_head example.pkgar_data > example.pkgarΒ»).

Заглавният Ρ„Π°ΠΉΠ» ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΈ суми Π·Π° Π·Π°Π³Π»Π°Π²ΠΈΠ΅Ρ‚ΠΎ ΠΈ структуритС с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ ΠΎΡ‚ Ρ„Π°ΠΉΠ»Π° с Π΄Π°Π½Π½ΠΈ, Π° ΡΡŠΡ‰ΠΎ ΠΈ Ρ†ΠΈΡ„Ρ€ΠΎΠ² подпис Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Π€Π°ΠΉΠ»ΡŠΡ‚ с Π΄Π°Π½Π½ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π²Π° послСдоватСлно изброяванС Π½Π° всички Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, доставяни Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π°. ΠŸΡ€Π΅Π΄ΠΈ всСки Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС прСдоставя структура с ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ, която Π²ΠΊΠ»ΡŽΡ‡Π²Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π° сума Π·Π° самитС Π΄Π°Π½Π½ΠΈ, Ρ€Π°Π·ΠΌΠ΅Ρ€, ΠΏΡ€Π°Π²Π° Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏ, относитСлСн ΠΏΡŠΡ‚ Π½Π° инсталирания Ρ„Π°ΠΉΠ» ΠΈ офсСт Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° слСдващия Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈΡ‚Π΅. Ако ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΡŠΠΏΠ΄Π΅ΠΉΡ‚ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π½Π΅ са ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Π½ΠΈ ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π°Ρ‚Π° сума съвпада, Ρ‚Π΅ сС пропускат ΠΈ Π½Π΅ сС Π·Π°Ρ€Π΅ΠΆΠ΄Π°Ρ‚.

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π°Ρ‚Π° Π½Π° цСлостта Π½Π° ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠΈ с получСния само Π·Π°Π³Π»Π°Π²Π΅Π½ Ρ„Π°ΠΉΠ», Π° корСктността Π½Π° избрания Ρ„Π°ΠΉΠ» с Π΄Π°Π½Π½ΠΈ β€” ΠΊΠ°Ρ‚ΠΎ сС зарСдят само структуритС с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π½Π° Ρ‚ΠΎΠ·ΠΈ Ρ„Π°ΠΉΠ» ΠΈ сС ΠΏΠΎΡ‚Π²ΡŠΡ€Π΄ΠΈ ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅Ρ‚ΠΎ ΠΈΠΌ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π° сума, Π·Π°Π²Π΅Ρ€Π΅Π½Π° Π² заглавния Ρ„Π°ΠΉΠ». Π‘Π°ΠΌΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΈ слСд тяхното Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π° сума ΠΎΡ‚ структурата с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ, ΠΈΠ΄Π²Π°Ρ‰Π° ΠΏΡ€Π΅Π΄ΠΈ Π΄Π°Π½Π½ΠΈΡ‚Π΅.

ΠŸΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ ΠΏΡ€Π΅Π΄Π²ΠΈΠΆΠ΄Π°Ρ‚ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ сглобяванС, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π²ΠΈΠ½Π°Π³ΠΈ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π΅Π½ ΠΏΠ°ΠΊΠ΅Ρ‚. Π‘Π»Π΅Π΄ инсталиранС Π² систСмата остават само ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ са Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ Π·Π° рСконструиранС Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΎΡ‚ инсталиранитС Π΄Π°Π½Π½ΠΈ (ΡΡŠΡΡ‚Π°Π² Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π°, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΈ суми, ΠΏΡŠΡ‚ΠΈΡ‰Π° ΠΈ ΠΏΡ€Π°Π²Π° Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏ сС ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‚ Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈΡ‚Π΅).

Основни Ρ†Π΅Π»ΠΈ Π½Π° pkgar:

  • Атомарност β€” Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈΡ‚Π΅ сС ΠΏΡ€ΠΈΠ»Π°Π³Π°Ρ‚ ΠΏΠΎ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ.
  • БпСстяванС Π½Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊ β€” Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚ ΠΏΠΎ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° само ΠΏΡ€ΠΈ промяна Π½Π° Ρ…Π΅ΡˆΠ° (ΠΏΡ€ΠΈ актуализация сС изтСглят само ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅).
  • Висока производитСлност, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ сС Π±ΡŠΡ€Π·ΠΈ криптографски Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ (blake3 ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΏΡ€ΠΈ изчислСниС Π½Π° Ρ…Π΅Ρˆ). Ако Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΎΡ‚ рСпозитория Π½Π΅ са Π±ΠΈΠ»ΠΈ ΠΊΠ΅ΡˆΠΈΡ€Π°Π½ΠΈ ΠΏΡ€Π΅Π΄ΠΈ, Ρ…Π΅ΡˆΡŠΡ‚ Π·Π° ΠΈΠ·Ρ‚Π΅Π³Π»Π΅Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС изчислСн ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° изтСглянСто.
  • Минимализъм β€” Π·Π° Ρ€Π°Π·Π»ΠΈΠΊΠ° ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ, pkgar Π²ΠΊΠ»ΡŽΡ‡Π²Π° само ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈΡ‚Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π°.
  • НСзависимост ΠΎΡ‚ инсталационния ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ β€” ΠΏΠ°ΠΊΠ΅Ρ‚ΡŠΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС инсталиран Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, ΠΎΡ‚ всСки ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» (потрСбитСлят трябва Π΄Π° ΠΈΠΌΠ° ΠΏΡ€Π°Π²ΠΎ Π½Π° запис Π² избрания ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³).
  • Бигурност β€” ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ Π²ΠΈΠ½Π°Π³ΠΈ сС криптографски провСряват, Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° ΠΏΡ€Π΅Π΄ΠΈ дСйствитСлното ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΏΠ°ΠΊΠ΅Ρ‚Π° (ΠΏΡŠΡ€Π²ΠΎ сС изтСгля Π·Π°Π³Π»Π°Π²ΠΈΠ΅Ρ‚ΠΎ ΠΈ Π°ΠΊΠΎ цифровият подпис Π΅ Π²Π°Π»ΠΈΠ΄Π΅Π½, Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС изтСглят Π² Π²Ρ€Π΅ΠΌΠ΅Π½Π΅Π½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, ΠΊΠΎΠΈΡ‚ΠΎ сС прСмСстват Π² цСлСвия ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ слСд ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π°).

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster