Rilis NNCP 8.8.0, utilitas untuk mentransfer file/perintah dalam mode simpan dan teruskan

Peluncuran Node-to-Node CoPy (NNCP), seperangkat utilitas untuk mentransfer file, email, dan perintah dengan aman untuk dieksekusi dalam mode simpan dan teruskan. Mendukung pengoperasian pada sistem operasi yang kompatibel dengan POSIX. Utilitasnya ditulis dalam Go dan didistribusikan di bawah lisensi GPLv3.

Utilitas ini difokuskan untuk membantu membangun jaringan teman-ke-teman peer-to-peer kecil (lusinan node) dengan perutean statis untuk transfer file fire-and-forget yang aman, permintaan file, email, dan permintaan perintah. Semua paket yang dikirimkan dienkripsi (end-to-end) dan diautentikasi secara eksplisit menggunakan kunci publik teman yang diketahui. Enkripsi Onion (seperti di Tor) digunakan untuk semua paket perantara. Setiap node dapat bertindak sebagai klien dan server dan menggunakan model perilaku push dan polling.

Perbedaan antara solusi NNCP dan UUCP dan FTN (FidoNet Technology Network), selain enkripsi dan otentikasi yang disebutkan di atas, adalah dukungan siap pakai untuk jaringan floppinet dan komputer yang diisolasi secara fisik (celah udara) dari jaringan lokal dan lokal yang tidak aman. jaringan publik. NNCP juga memiliki fitur integrasi yang mudah (setara dengan UUCP) dengan server email saat ini seperti Postfix dan Exim.

Area penerapan NNCP yang mungkin termasuk mengatur pengiriman/penerimaan email ke perangkat tanpa koneksi permanen ke Internet, mentransfer file dalam kondisi koneksi jaringan yang tidak stabil, mentransfer data dalam jumlah sangat besar secara aman pada media fisik, membuat jaringan transmisi data terisolasi yang dilindungi dari Serangan MitM, melewati sensor dan pengawasan jaringan. Karena kunci dekripsi hanya ada di tangan penerima, terlepas dari apakah paket dikirimkan melalui jaringan atau melalui media fisik, pihak ketiga tidak dapat membaca isinya, meskipun paket tersebut disadap. Pada gilirannya, otentikasi tanda tangan digital tidak mengizinkan pembuatan pesan fiktif dengan menyamar sebagai pengirim lain.

Di antara inovasi NNCP 8.8.0 dibandingkan berita sebelumnya (versi 5.0.0):

  • Alih-alih hash BLAKE2b, apa yang disebut MTH: Hashing berbasis Merkle Tree, yang menggunakan hash BLAKE3, digunakan untuk memeriksa integritas file. Hal ini memungkinkan Anda menghitung integritas bagian paket yang dienkripsi langsung saat mengunduh, tanpa mengharuskannya dibaca lagi di masa mendatang. Hal ini juga memungkinkan paralelisasi pemeriksaan integritas yang tidak terbatas.
  • Format paket terenkripsi baru sepenuhnya ramah streaming ketika ukuran data tidak diketahui sebelumnya. Sinyal selesainya transfer, dengan ukuran yang diautentikasi, langsung masuk ke dalam aliran terenkripsi. Sebelumnya, untuk mengetahui besar kecilnya data yang ditransfer, perlu disimpan ke file sementara. Jadi perintah β€œnncp-exec” telah kehilangan opsi β€œ-use-tmp” karena sama sekali tidak diperlukan.
  • Fungsi BLAKE2b KDF dan XOF telah digantikan oleh BLAKE3 untuk mengurangi jumlah primitif kriptografi yang digunakan dan menyederhanakan kode.
  • Sekarang dimungkinkan untuk mendeteksi node lain di jaringan lokal melalui multicasting ke alamat β€œff02::4e4e:4350”.
  • Grup multicast telah muncul (analog dengan konferensi gema FidoNet atau grup berita Usenet), yang memungkinkan satu paket mengirim data ke beberapa anggota grup, di mana masing-masing juga meneruskan paket tersebut ke penandatangan lainnya. Membaca paket multicast memerlukan pengetahuan tentang pasangan kunci (Anda harus secara eksplisit menjadi anggota grup), namun menyampaikan dapat dilakukan oleh node mana pun.
  • Sekarang ada dukungan untuk konfirmasi penerimaan paket secara eksplisit. Pengirim tidak boleh menghapus paket setelah dikirim, menunggu hingga menerima paket ACK khusus dari penerima.
  • Dukungan bawaan untuk jaringan overlay Yggdrasil: daemon online dapat bertindak sebagai peserta jaringan independen penuh, tanpa menggunakan implementasi Yggdrasil pihak ketiga dan tanpa sepenuhnya bekerja dengan tumpukan IP pada antarmuka jaringan virtual.
  • Alih-alih string terstruktur (RFC 3339), log menggunakan entri recfile, yang dapat digunakan dengan utilitas GNU Recutils.
  • Secara opsional, header paket terenkripsi dapat disimpan dalam file terpisah di subdirektori "hdr/", sehingga secara signifikan mempercepat operasi pengambilan daftar paket pada sistem file dengan ukuran blok besar, seperti ZFS. Sebelumnya, mengambil header paket hanya memerlukan pembacaan blok 128KiB dari disk secara default.
  • Memeriksa file baru secara opsional dapat menggunakan kqueue dan memberi tahu subsistem kernel, sehingga membuat panggilan sistem lebih sedikit.
  • Utilitas menyimpan lebih sedikit file yang terbuka dan lebih jarang menutup serta membukanya kembali. Dengan jumlah paket yang banyak, sebelumnya mungkin saja ada batasan jumlah maksimal file yang terbuka.
  • Banyak tim mulai menunjukkan kemajuan dan kecepatan operasi seperti mengunduh/mengunggah, menyalin dan memproses (melempar) paket.
  • Perintah β€œnncp-file” tidak hanya dapat mengirim file tunggal, tetapi juga direktori, membuat arsip pax dengan isinya dengan cepat.
  • Utilitas online secara opsional dapat segera menjalankan pelemparan paket setelah paket berhasil diunduh, tanpa menjalankan daemon "nncp-toss" terpisah.
  • Panggilan online ke peserta lain secara opsional dapat terjadi tidak hanya ketika pengatur waktu dipicu, tetapi juga ketika paket keluar muncul di direktori spool.
  • Memastikan pengoperasian pada OS NetBSD dan OpenBSD, selain FreeBSD dan GNU/Linux yang sebelumnya didukung.
  • "nncp-daemon" sepenuhnya kompatibel dengan antarmuka UCSPI-TCP. Ditambah dengan kemampuan untuk login ke deskriptor file tertentu (misalnya dengan mengatur "NNCPLOG=FD:4"), ini sepenuhnya ramah untuk dijalankan di bawah utilitas mirip daemontools.
  • Perakitan proyek telah sepenuhnya ditransfer ke sistem redo.

Sumber: opennet.ru

Tambah komentar