Sequoia 1.0, perpustakaan yang menerapkan standard OpenPGP

Selepas tiga setengah tahun pembangunan, pakej edisi Sequoia 1.0 telah dikeluarkan , membangunkan perpustakaan fungsi dan alat baris arahan dengan pelaksanaan piawaian OpenPGP (RFC-4880).

Siaran tersebut meringkaskan kerja-kerja API peringkat rendah , yang melaksanakan liputan standard OpenPGP yang mencukupi untuk kegunaan penuh. Kod projek ditulis dalam Rust dan diedarkan di bawah lesen GPLv2+.

Projek ini diasaskan oleh tiga penyumbang GnuPG daripada g10code, sebuah firma pembangun plugin GnuPG dan pengauditan kriptosistem. Pasukan Sequoia juga dikenali kerana mencipta pelayan kunci Hagrid, yang digunakan oleh perkhidmatan keys.openpgp.org.

Matlamat projek baru adalah merancang semula seni bina dan menerapkan teknik baru untuk meningkatkan keselamatan dan kebolehpercayaan pangkalan data.

Untuk meningkatkan keselamatan, Sequoia bukan sahaja menggunakan alat pengaturcaraan selamat yang menggunakan bahasa Rust, tetapi juga perlindungan ralat tahap API.

Contohnya, API menghalang anda daripada mengeksport bahan kunci rahsia secara tidak sengaja , kerana operasi eksport memerlukan pemilihan eksplisit secara lalai. Begitu juga, API memastikan bahawa tiada langkah penting yang terlepas semasa mengemas kini tandatangan digital; secara lalai, masa penciptaan, algoritma hash dan penerbit tandatangan dikemas kini secara automatik.

Sequoia juga cuba menghapuskan kekurangan GnuPG , seperti penyahsegerakan fungsi alat baris arahan dengan pustaka fungsi (sesetengah tindakan hanya boleh dilakukan menggunakan utiliti) dan gandingan yang terlalu ketat antara komponen, yang menjadikannya sukar untuk membuat perubahan, mengaburkan pangkalan kod dan menghalang penciptaan sistem pengujian unit yang lengkap.

Sequoia membangunkan utiliti baris arahan sq dengan sokongan subarahan gaya Git , program sqv (pengganti gpgv) untuk mengesahkan tandatangan berasingan, utiliti sqop (Stateless OpenPGP CLI) dan pustaka sequoia-openpgp.

Terdapat pautan untuk bahasa C dan Python. Sebilangan besar fungsi yang dijelaskan dalam standard OpenPGP serasi dengan enkripsi, penyahsulitan, penciptaan dan pengesahan tandatangan digital.

Di antara ciri canggih, diperhatikan bahawa ia menyokong pengesahan menggunakan tandatangan digital yang disediakan secara terpisah (tandatangan berasingan), penyesuaian untuk penyatuan dengan pengurus pakej (APT, RPM, muat naik, dll.), Kemampuan untuk membatasi tandatangan dengan nilai ambang dan masa.

Untuk mempermudah pengembangan, penyahpepijatan, dan analisis kejadian, disediakan alat pemeriksaan paket, yang berintegrasi dengan penganalisis dan memungkinkan anda menganalisis secara visual struktur pesan yang dienkripsi, tandatangan digital, dan kunci.

Atas sebab keselamatan, penggunaan perkhidmatan kriptografi, seperti kopemproses untuk pengkomputeran dalam enklaf terpencil, dibenarkan. Untuk pengasingan selanjutnya, perkhidmatan yang berfungsi dengan kunci awam dan persendirian diasingkan kepada proses yang berbeza (interaksi proses disusun menggunakan protokol Cap'n Proto). Contohnya, stor kunci dilaksanakan sebagai proses yang berasingan.

Terdapat dua pilihan API: tahap rendah dan tahap tinggi. API tahap rendah mereplikasi sedekat mungkin keupayaan OpenPGP dan beberapa sambungan berkaitan, seperti sokongan ECC, notarisasi (tandatangan-atas-tandatangan), dan elemen daripada draf edisi standard yang akan datang.

Diperhatikan bahawa mengikut fungsi yang dirancang, Sequoia telah mencapai kesediaan untuk versi 1.0 setahun yang lalu, tetapi pembangun memutuskan untuk tidak tergesa-gesa dan sebaliknya meluangkan lebih banyak masa mencari pepijat dan menulis dokumentasi lengkap dan berkualiti tinggi dengan pautan ke maklumat dalam standard OpenPGP dan contoh penggunaan.

Versi 1.0 pada masa ini hanya merangkumi kotak sequoia-openpgp dan utiliti pengesahan tandatangan digital sqv. CLI "sq" dan API peringkat tinggi masih dalam proses muktamad dan belum lagi distabilkan.

Batasan yang direncanakan akan dihapus dalam rilis mendatang termasuk pelaksanaan perkhidmatan untuk menyimpan kunci peribadi dan umum, sokongan untuk tanda tangan digital teks yang jelas, dan kemampuan untuk menggunakan ungkapan biasa untuk menentukan tanda tangan yang dipercayai.


Tambahkan sebagai sumber pilihan dalam Google