Dosyaları, e-postaları ve komutları depola ve ilet modunda yürütmek üzere güvenli bir şekilde aktarmaya yönelik bir dizi yardımcı program olan Node-to-Node CoPy'nin (NNCP) piyasaya sürülmesi. POSIX uyumlu işletim sistemlerinde çalışmayı destekler. Yardımcı programlar Go'da yazılmıştır ve GPLv3 lisansı altında dağıtılmaktadır.
Bu yardımcı programlar, güvenli, tek seferde dosya transferi, dosya istekleri, e-posta ve komut yürütme istekleri için statik yönlendirme ile küçük eşler arası (onlarca düğüm) ağlar oluşturmaya yardımcı olmak üzere tasarlanmıştır. İletilen tüm paketler uçtan uca şifrelenir ve eşlerin bilinen genel anahtarları kullanılarak açıkça doğrulanır. Tüm ara paketlere Onion şifrelemesi (Tor gibi) uygulanır. Her düğüm, istemci veya sunucu olarak hareket edebilir. sunucu ve hem push hem de poll davranış modellerini kullanın.
NNCP, yukarıda belirtilen şifreleme ve kimlik doğrulamanın yanı sıra, disket ağları ve güvensiz yerel ve genel ağlardan fiziksel olarak izole edilmiş (hava boşluklu) bilgisayarlar için kullanıma hazır destek sağlamasıyla UUCP ve FTN (FidoNet Teknoloji Ağı) çözümlerinden farklıdır. NNCP ayrıca (UUCP gibi) mevcut e-posta hizmetleriyle kolay entegrasyon özelliğine sahiptir. sunucularPostfix ve Exim gibi.
NNCP'nin olası uygulama alanları arasında, kalıcı bir İnternet bağlantısı olmayan cihazlara posta gönderme/alma işlemlerinin organize edilmesi, kararsız ağ bağlantısı koşullarında dosyaların aktarılması, çok büyük miktarda verinin fiziksel ortama güvenli bir şekilde aktarılması, bilgisayar korsanlarından korunan izole veri iletim ağlarının oluşturulması yer alır. MitM saldırıları, ağ sansürünü ve gözetimini atlayarak. Paketin ağ üzerinden mi yoksa fiziksel medya üzerinden mi iletildiğine bakılmaksızın şifre çözme anahtarı yalnızca alıcının elinde olduğundan, pakete müdahale edilse bile üçüncü bir taraf içeriği okuyamaz. Buna karşılık, dijital imza kimlik doğrulaması, başka bir gönderenin kisvesi altında hayali bir mesaj oluşturulmasına izin vermez.
Önceki haberlerle (sürüm 8.8.0) karşılaştırıldığında NNCP 5.0.0'ın yenilikleri arasında:
- BLAKE2b hash'i yerine, dosyaların bütünlüğünü kontrol etmek için BLAKE3 hash'ini kullanan MTH: Merkle Ağacı Tabanlı Hashing kullanılır. Bu, paketin şifrelenmiş kısmının bütünlüğünü, gelecekte okunmasına gerek kalmadan doğrudan indirme sırasında hesaplamanıza olanak tanır. Bu aynı zamanda bütünlük kontrollerinin sınırsız paralelleştirilmesine de olanak tanır.
- Yeni şifrelenmiş paket formatı, verinin boyutu önceden bilinmediğinde tamamen akış dostudur. Kimliği doğrulanmış bir boyutla aktarımın tamamlandığının sinyali doğrudan şifrelenmiş akışın içine gider. Önceden, aktarılan verilerin boyutunu bulmak için onu geçici bir dosyaya kaydetmek gerekiyordu. Yani “nncp-exec” komutu tamamen gereksiz olduğundan “-use-tmp” seçeneğini kaybetmiştir.
- BLAKE2b KDF ve XOF fonksiyonları, kullanılan kriptografik temel öğelerin sayısını azaltmak ve kodu basitleştirmek için BLAKE3 ile değiştirildi.
- Artık “ff02::4e4e:4350” adresine çoklu yayın yaparak yerel ağdaki diğer düğümleri tespit etmek mümkün.
- Çoklu yayın grupları (FidoNet yankı konferanslarına veya Usenet haber gruplarına benzer şekilde) ortaya çıktı ve bir paketin birden fazla grup üyesine veri göndermesine izin verdi; burada her biri paketi diğer imzacılara da iletti. Çok noktaya yayın paketini okumak, anahtar çifti hakkında bilgi gerektirir (açıkça grubun bir üyesi olmanız gerekir), ancak aktarma herhangi bir düğüm tarafından yapılabilir.
- Artık paket alımının açıkça onaylanması desteği var. Gönderici, alıcıdan özel bir ACK paketi alana kadar paketi gönderdikten sonra silemez.
- Yggdrasil yer paylaşımı ağı için yerleşik destek: Çevrimiçi arka plan programları, üçüncü taraf Yggdrasil uygulamalarını kullanmadan ve bir sanal ağ arayüzünde IP yığınıyla tam olarak çalışmaya gerek kalmadan, tam teşekküllü bağımsız ağ katılımcıları olarak hareket edebilir.
- Günlük, yapılandırılmış dizeler (RFC 3339) yerine, GNU Recutils yardımcı programlarıyla kullanılabilen recfile girişlerini kullanır.
- İsteğe bağlı olarak, şifrelenmiş paket başlıkları "hdr/" alt dizinindeki ayrı dosyalarda saklanabilir ve bu, ZFS gibi büyük blok boyutlarına sahip dosya sistemlerinde paket listesi alma işlemlerini önemli ölçüde hızlandırır. Daha önce paket başlığını almak, varsayılan olarak diskten yalnızca 128KiB'lik bir bloğun okunmasını gerektiriyordu.
- Yeni dosyaların kontrol edilmesi isteğe bağlı olarak kqueue ve inotify çekirdek alt sistemlerini kullanabilir, böylece daha az sistem çağrısı yapılabilir.
- Yardımcı programlar daha az açık dosya tutar ve bunları daha az sıklıkta kapatıp yeniden açar. Daha önce çok sayıda pakette maksimum açık dosya sayısı sınırlamasıyla karşılaşmak mümkündü.
- Birçok ekip, paket indirme/yükleme, kopyalama ve işleme (atma) gibi işlemlerin ilerlemesini ve hızını göstermeye başladı.
- “nncp-file” komutu yalnızca tek dosyaları değil aynı zamanda dizinleri de göndererek içerikleriyle birlikte anında bir pax arşivi oluşturabilir.
- Çevrimiçi yardımcı programlar, isteğe bağlı olarak, bir paket başarıyla indirildikten sonra, ayrı bir nncp-toss arka plan programı çalıştırmadan hemen atmayı çağırabilir.
- Başka bir katılımcıya yapılan çevrimiçi çağrı, isteğe bağlı olarak yalnızca bir zamanlayıcı tetiklendiğinde değil, aynı zamanda kuyruk dizininde giden bir paket göründüğünde de gerçekleşebilir.
- Daha önce desteklenen FreeBSD ve GNU/Linux'a ek olarak NetBSD ve OpenBSD işletim sistemi altında çalışabilirliği sağlar.
- "nncp-daemon", UCSPI-TCP arayüzüyle tamamen uyumludur. Belirli bir dosya tanımlayıcıda oturum açma yeteneğiyle (örneğin "NNCPLOG=FD:4" ayarıyla) birleştiğinde, daemontools benzeri yardımcı programlar altında çalıştırılması tamamen kolaydır.
- Proje montajı tamamen redo sistemine aktarılmıştır.
Kaynak: opennet.ru
