Node-to-Node CoPy (NNCP) чыгаруу, файлдарды, электрондук почтаны жана сактоо жана алдыга жөнөтүү режиминде аткаруу үчүн буйруктарды коопсуз өткөрүү үчүн утилиталардын топтому. POSIX-шайкеш операциялык системаларда иштөөнү колдойт. Утилиталар Go программасында жазылган жана GPLv3 лицензиясы боюнча таратылат.
Бул утилиталар файлдарды коопсуз өткөрүп берүү, файл суроо-талаптары, электрондук почта жана буйруктарды аткаруу суроо-талаптары үчүн статикалык маршруттоо менен кичинекей теңтуштан теңтушка чейинки достордон досторго тармактарды (ондогон түйүндөр) түзүүгө жардам берүү үчүн иштелип чыккан. Бардык берилген пакеттер башынан аягына чейин шифрленет жана теңтуштардын белгилүү ачык ачкычтарын колдонуу менен ачык түрдө аутентификацияланат. Пияз шифрлөөсү (Tor сыяктуу) бардык ортоңку пакеттерге колдонулат. Ар бир түйүн кардар же хост катары иштей алат. сервер жана түртүү жана сурамжылоо жүрүм-турум моделдерин колдонуңуз.
NNCP, жогоруда айтылган шифрлөө жана аутентификациядан тышкары, UUCP жана FTN (FidoNet Technology Network) чечимдеринен, кооптуу жергиликтүү жана коомдук тармактардан физикалык жактан обочолонгон (аба менен бөлүнгөн) дискет тармактар жана компьютерлер үчүн даяр колдоо көрсөтүү менен айырмаланат. NNCP ошондой эле учурдагы электрондук почта кызматтары менен оңой интеграциялоого (UUCP сыяктуу) ээ. серверлер, мисалы, Postfix жана Exim.
NNCPти колдонуунун мүмкүн болгон аймактарына Интернетке туруктуу туташуусу жок түзмөктөргө почта жөнөтүүнү/кабыл алууну уюштуруу, тармактык туташуулардын туруксуз шарттарында файлдарды өткөрүп берүү, физикалык алып жүрүүчүлөргө өтө чоң көлөмдөгү маалыматтарды коопсуз өткөрүп берүү, обочолонгон маалыматтарды берүү тармактарын түзүү кирет. MitM чабуулдары, тармактык цензураны жана байкоону айланып өтүү. Пакет тармак аркылуу же физикалык алып жүрүүчү аркылуу жеткирилгенине карабастан, чечмелөө ачкычы алуучунун гана колунда болгондуктан, пакет кармалып калса дагы, үчүнчү тарап мазмунду окуй албайт. Өз кезегинде, санариптик кол тамганын аутентификациясы башка жөнөтүүчүнүн атын жамынып, жасалма билдирүү түзүүгө жол бербейт.
NNCP 8.8.0 инновацияларынын арасында мурунку жаңылыктарга салыштырмалуу (5.0.0 версиясы):
- BLAKE2b хэшинин ордуна, файлдардын бүтүндүгүн текшерүү үчүн BLAKE3 хэшин колдонгон MTH: Merkle Tree негизделген Хешинг колдонулат. Бул жүктөө учурунда пакеттин шифрленген бөлүгүнүн бүтүндүгүн эсептөөгө мүмкүндүк берет, келечекте аны окууну талап кылбастан. Бул ошондой эле бүтүндүгүн текшерүүнү чексиз параллелизациялоого мүмкүндүк берет.
- Жаңы шифрленген пакет форматы маалыматтардын көлөмү алдын ала белгисиз болгондо агымга толугу менен ыңгайлуу. Аутентификацияланган өлчөм менен өткөрүп берүүнүн аяктагандыгы жөнүндө сигнал түздөн-түз шифрленген агымдын ичине кирет. Мурда, өткөрүлүп берилген маалыматтардын көлөмүн билүү үчүн, аны убактылуу файлга сактоо керек болчу. Ошентип, "nncp-exec" буйругу "-use-tmp" опциясын жоготту, анткени ал таптакыр керексиз.
- Колдонулган криптографиялык примитивдердин санын азайтуу жана кодду жөнөкөйлөтүү үчүн BLAKE2b KDF жана XOF функциялары BLAKE3 менен алмаштырылды.
- Эми “ff02::4e4e:4350” дарегине мультикастинг аркылуу локалдык тармактагы башка түйүндөрдү аныктоого болот.
- Көптөгөн топтор пайда болду (FidoNet эхо конференцияларына же Usenet жаңылык топторуна окшош), бир пакет бир нече топтун мүчөлөрүнө маалыматтарды жөнөтүүгө мүмкүндүк берет, мында ар бири пакетти калган кол коюучуларга жөнөтөт. Мультикастациялык пакетти окуу үчүн ачкыч жуптарын билүү талап кылынат (сиз топтун мүчөсү болушуңуз керек), бирок релейди каалаган түйүн аткара алат.
- Азыр пакетти алуунун ачык тастыктоосун колдоо бар. Жөнөтүүчү алуучудан атайын ACK пакетин алганга чейин күтүп, жөнөткөндөн кийин пакетти өчүрө албайт.
- Yggdrasil кабаттуу тармагына орнотулган колдоо: онлайн демондор үчүнчү тараптын Yggdrasil ишке ашырууларын колдонбостон жана виртуалдык тармак интерфейсинде IP стек менен толук иштебестен, толук кандуу көз карандысыз тармактын катышуучулары катары иштей алат.
- Структураланган саптардын ордуна (RFC 3339) журнал GNU Recutils утилиталары менен колдонулушу мүмкүн болгон recfile жазууларын колдонот.
- Кошумча, шифрленген пакеттердин аталыштары "hdr/" подкаталогунда өзүнчө файлдарда сакталышы мүмкүн, бул ZFS сыяктуу чоң блок өлчөмдөрү бар файл системаларында пакеттердин тизмесин издөө операцияларын кыйла тездетет. Мурда пакеттин башын алуу үчүн демейки боюнча дисктен 128KiB блокту гана окуу керек болчу.
- Жаңы файлдарды текшерүү ыктыярдуу түрдө kqueue'ди колдонуп, ядронун подсистемаларын эскертип, системалык чалууларды азайтат.
- Утилиталар ачык файлдарды азыраак кармап, аларды азыраак жаап жана кайра ачышат. Пакеттердин көп саны менен мурда ачык файлдардын максималдуу санына чектөө киргизүүгө мүмкүн болчу.
- Көптөгөн командалар пакеттерди жүктөө/жүктөө, көчүрүү жана иштетүү (таштоо) сыяктуу операциялардын жүрүшүн жана ылдамдыгын көрсөтө баштады.
- “nncp-file” буйругу бир гана файлдарды эмес, каталогдорду да жөнөтүп, алардын мазмуну менен пакс архивин түзө алат.
- Онлайн утилиталар таңгак ийгиликтүү жүктөлүп алынгандан кийин, өзүнчө "nncp-toss" демону иштетпестен, дароо пакет ыргытууну чакыра алат.
- Башка катышуучуга онлайн чалуу таймер иштетилгенде гана эмес, спулдун каталогунда чыгуучу пакет пайда болгондо да болушу мүмкүн.
- Мурда колдоого алынган FreeBSD жана GNU/Linuxдан тышкары NetBSD жана OpenBSD OS астында иштөөнү камсыздайт.
- "nncp-daemon" UCSPI-TCP интерфейси менен толук шайкеш келет. Белгиленген файл дескрипторуна кирүү мүмкүнчүлүгү менен бирге (мисалы, "NNCPLOG=FD:4" орнотуу менен), ал демонтолго окшош утилиталарда иштөөгө толук ыңгайлуу.
- Долбоордун жыйындысы толугу менен редо системасына өткөрүлдү.
Source: opennet.ru
