Выпуск rPGP 0.10, Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ OpenPGP Π½Π° языкС Rust

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ выпуск ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° rPGP 0.10, Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ стандарта OpenPGP (RFC-2440, RFC-4880) Π½Π° языкС Rust, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ ΠΏΠΎΠ»Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… Π² спСцификации Autocrypt 1.1, для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹. НаиболСС извСстным ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌ rPGP являСтся мСссСндТСр Delta Chat, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ email Π² качСствС транспорта. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° распространяСтся ΠΏΠΎΠ΄ лицСнзиями MIT ΠΈ Apache 2.0.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° стандарта OpenPGP Π² rPGP ΠΏΠΎΠΊΠ° ограничиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌ API. Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ поставляСтся crate-ΠΏΠ°ΠΊΠ΅Ρ‚ pgp, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚ rsa с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° RSA, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСсколько Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ ΠΏΡ€ΠΎΡˆΠ»ΠΈ нСзависимый Π°ΡƒΠ΄ΠΈΡ‚ бСзопасности. ΠŸΡ€ΠΈ использовании Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π½Π° Π±Π°Π·Π΅ эллиптичСских ΠΊΡ€ΠΈΠ²Ρ‹Ρ… задСйствован ΠΏΠ°ΠΊΠ΅Ρ‚ Curve25519-dalek. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ поддСрТиваСтся компиляция Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ WebAssembly для выполнСния Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… ΠΈ прилоТСниях Π½Π° Π±Π°Π·Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Node.js. Из ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Linux, Android, Windows, iOS ΠΈ macOS.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Sequoia, Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ OpenPGP Π½Π° Rust, Π² rPGP ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ MIT ΠΈ Apache 2.0 (ΠΊΠΎΠ΄ Sequoia поставляСтся ΠΏΠΎΠ΄ ΠΊΠΎΠΏΠΈΠ»Π΅Ρ„Ρ‚-Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv2+), Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° сосрСдоточСна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (Sequoia Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅Ρ‚ Π·Π°ΠΌΠ΅Π½Ρƒ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ gpg), всС ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ написаны Π½Π° Rust (Π² Sequoia ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Nettle, написанная Π½Π° Π‘ΠΈ).

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

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ