rPGP 0.10 ํ๋ก์ ํธ๊ฐ ๊ฒ์๋์ด Rust ์ธ์ด๋ก OpenPGP ํ์ค(RFC-2440, RFC-4880) ๊ตฌํ์ ๊ฐ๋ฐํ๊ณ ์ด๋ฉ์ผ ์ํธํ๋ฅผ ์ํ Autocrypt 1.1 ์ฌ์์ ์ ์๋ ์ ์ฒด ๊ธฐ๋ฅ ์ธํธ๋ฅผ ์ ๊ณตํฉ๋๋ค. rPGP๋ฅผ ์ฌ์ฉํ๋ ๊ฐ์ฅ ์ ๋ช ํ ํ๋ก์ ํธ๋ ์ด๋ฉ์ผ์ ์ ์ก ์๋จ์ผ๋ก ์ฌ์ฉํ๋ Delta Chat ๋ฉ์ ์ ์ ๋๋ค. ํ๋ก์ ํธ ์ฝ๋๋ MIT ๋ฐ Apache 2.0 ๋ผ์ด์ผ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค.
rPGP์ OpenPGP ํ์ค ์ง์์ ํ์ฌ ํ์ ์์ค API๋ก๋ง ์ ํ๋ฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๋ฅผ ์ํด pgp ํฌ๋ ์ดํธ ํจํค์ง๋ ๋ฌผ๋ก ๋ช ๋ ์ ์ ๋ ๋ฆฝ์ ์ธ ๋ณด์ ๊ฐ์ฌ๋ฅผ ํต๊ณผํ RSA ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ๊ตฌํํ rsa ํจํค์ง๋ ์ ๊ณต๋ฉ๋๋ค. ํ์ ๊ณก์ ๊ธฐ๋ฐ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ Curve25519-dalek ํจํค์ง๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ํ Node.js ํ๋ซํผ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๋ธ๋ผ์ฐ์ ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์คํํ๊ธฐ ์ํด WebAssembly ์ค๊ฐ ์ฝ๋๋ก์ ์ปดํ์ผ์ด ์ง์๋ฉ๋๋ค. ์ง์๋๋ ์ด์ ์ฒด์ ๋ Linux, Android, Windows, iOS ๋ฐ macOS์ ๋๋ค.
Rust์์ OpenPGP ๊ตฌํ๋ ์ ๊ณตํ๋ Sequoia ํ๋ก์ ํธ์๋ ๋ฌ๋ฆฌ, rPGP๋ MIT ๋ฐ Apache 2.0 ํ์ฉ ๋ผ์ด์ ์ค๋ฅผ ์ฌ์ฉํฉ๋๋ค(Sequoia ์ฝ๋๋ GPLv2+ ์นดํผ๋ ํํธ ๋ผ์ด์ ์ค์ ๋ฐ๋ผ ์ ๊ณต๋จ). ๊ฐ๋ฐ์ ํจ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์๋ง ์ค์ ์ ๋ก๋๋ค(Sequoia๋ gpg ์ ํธ๋ฆฌํฐ), ๋ชจ๋ ์ํธํ ๊ธฐ๋ณธ ์์๋ Rust๋ก ์์ฑ๋์์ต๋๋ค(Sequoia๋ C๋ก ์์ฑ๋ Nettle ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค).
์ถ์ฒ : opennet.ru