ืฉื—ืจื•ืจ ืฉืœ NNCP 8.8.0, ื›ืœื™ ืขื–ืจ ืœื”ืขื‘ืจืช ืงื‘ืฆื™ื/ืคืงื•ื“ื•ืช ื‘ืžืฆื‘ ืื—ืกื•ืŸ ื•ื”ืขื‘ืจื”

ืฉื—ืจื•ืจื• ืฉืœ 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):

  • ื‘ืžืงื•ื ื”-hash BLAKE2b, ืžื” ืฉื ืงืจื MTH: Merkle Tree-based Hashing, ื”ืžืฉืชืžืฉ ื‘-hash BLAKE3, ืžืฉืžืฉ ืœื‘ื“ื™ืงืช ืชืงื™ื ื•ืช ื”ืงื‘ืฆื™ื. ื–ื” ืžืืคืฉืจ ืœืš ืœื—ืฉื‘ ืืช ืฉืœืžื•ืช ื”ื—ืœืง ื”ืžื•ืฆืคืŸ ืฉืœ ื”ื—ื‘ื™ืœื” ืžืžืฉ ื‘ืžื”ืœืš ื”ื”ื•ืจื“ื”, ืžื‘ืœื™ ืœื“ืจื•ืฉ ืื•ืชื” ื‘ืขืชื™ื“. ื–ื” ื’ื ืžืืคืฉืจ ื”ืงื‘ื™ืœื” ื‘ืœืชื™ ืžื•ื’ื‘ืœืช ืฉืœ ื‘ื“ื™ืงื•ืช ืชืงื™ื ื•ืช.
  • ืคื•ืจืžื˜ ื”ื—ื‘ื™ืœื•ืช ื”ืžื•ืฆืคืŸ ื”ื—ื“ืฉ ื™ื“ื™ื“ื•ืชื™ ืœื—ืœื•ื˜ื™ืŸ ืœืกื˜ืจื™ืžื™ื ื’ ื›ืืฉืจ ื’ื•ื“ืœ ื”ื ืชื•ื ื™ื ืื™ื ื• ื™ื“ื•ืข ืžืจืืฉ. ื”ืื•ืช ืขืœ ื”ืฉืœืžืช ื”ื”ืขื‘ืจื”, ืขื ื’ื•ื“ืœ ืžืื•ืžืช, ืขื•ื‘ืจ ื™ืฉื™ืจื•ืช ืœืชื•ืš ื”ื–ืจื ื”ืžื•ืฆืคืŸ. ื‘ืขื‘ืจ, ื›ื“ื™ ืœื’ืœื•ืช ืืช ื’ื•ื“ืœ ื”ื ืชื•ื ื™ื ื”ืžื•ืขื‘ืจื™ื, ื”ื™ื” ืฆื•ืจืš ืœืฉืžื•ืจ ืื•ืชื ื‘ืงื•ื‘ืฅ ื–ืžื ื™. ืื– ื”ืคืงื•ื“ื” "nncp-exec" ืื™ื‘ื“ื” ืืช ื”ืืคืฉืจื•ืช "-use-tmp" ืžื›ื™ื•ื•ืŸ ืฉื”ื™ื ืžื™ื•ืชืจืช ืœื—ืœื•ื˜ื™ืŸ.
  • ื”ืคื•ื ืงืฆื™ื•ืช BLAKE2b KDF ื•-XOF ื”ื•ื—ืœืคื• ื‘-BLAKE3 ื›ื“ื™ ืœืฆืžืฆื ืืช ืžืกืคืจ ื”ืคืจื™ืžื™ื˜ื™ื‘ื™ื ื”ื”ืฆืคื ื” ื‘ืฉื™ืžื•ืฉ ื•ืœืคืฉื˜ ืืช ื”ืงื•ื“.
  • ื›ืขืช ื ื™ืชืŸ ืœื–ื”ื•ืช ืฆืžืชื™ื ืื—ืจื™ื ื‘ืจืฉืช ื”ืžืงื•ืžื™ืช ื‘ืืžืฆืขื•ืช ืฉื™ื“ื•ืจ ืจื‘ ืœื›ืชื•ื‘ืช "ff02::4e4e:4350".
  • ืงื‘ื•ืฆื•ืช ืจื™ื‘ื•ื™ ืฉื™ื“ื•ืจ ื”ื•ืคื™ืขื• (ื‘ื“ื•ืžื” ืœื›ื ืกื™ื ืฉืœ FidoNet ื”ื“ ืื• ืงื‘ื•ืฆื•ืช ื—ื“ืฉื•ืช ืฉืœ Usenet), ื”ืžืืคืฉืจื•ืช ืœื—ื‘ื™ืœื” ืื—ืช ืœืฉืœื•ื— ื ืชื•ื ื™ื ืœืžืกืคืจ ื—ื‘ืจื™ ืงื‘ื•ืฆื”, ื›ืืฉืจ ื›ืœ ืื—ื“ ืžื”ื ื’ื ืžืขื‘ื™ืจ ืืช ื”ื—ื‘ื™ืœื” ืœืฉืืจ ื”ื—ื•ืชืžื™ื. ืงืจื™ืืช ื—ื‘ื™ืœืช ืจื™ื‘ื•ื™ ืฉื™ื“ื•ืจ ืžืฆืจื™ื›ื” ื™ื“ืข ืขืœ ืฆืžื“ ื”ืžืคืชื—ื•ืช (ืขืœื™ืš ืœื”ื™ื•ืช ื—ื‘ืจ ื‘ืžืคื•ืจืฉ ื‘ืงื‘ื•ืฆื”), ืืš ื ื™ืชืŸ ืœื‘ืฆืข ื”ืขื‘ืจื” ืขืœ ื™ื“ื™ ื›ืœ ืฆื•ืžืช.
  • ื›ืขืช ื™ืฉ ืชืžื™ื›ื” ื‘ืื™ืฉื•ืจ ืžืคื•ืจืฉ ืฉืœ ืงื‘ืœืช ืžื ื•ืช. ื”ืฉื•ืœื— ืขืฉื•ื™ ืฉืœื ืœืžื—ื•ืง ืืช ื”ื—ื‘ื™ืœื” ืœืื—ืจ ื”ืฉืœื™ื—ื”, ื™ืžืชื™ืŸ ืขื“ ืฉื™ืงื‘ืœ ื—ื‘ื™ืœืช ACK ืžื™ื•ื—ื“ืช ืžื”ืžืงืœื˜.
  • ืชืžื™ื›ื” ืžื•ื‘ื ื™ืช ื‘ืจืฉืช ืฉื›ื‘ืช ื”ืขืœ ืฉืœ Yggdrasil: ื“ืžื•ื ื™ื ืžืงื•ื•ื ื™ื ื™ื›ื•ืœื™ื ืœืคืขื•ืœ ื›ืžืฉืชืชืคื™ ืจืฉืช ืขืฆืžืื™ื™ื ืžืŸ ื”ืžื ื™ื™ืŸ, ืžื‘ืœื™ ืœื”ืฉืชืžืฉ ื‘ื”ื˜ืžืขื•ืช Yggdrasil ืฉืœ ืฆื“ ืฉืœื™ืฉื™ ื•ืžื‘ืœื™ ืœืขื‘ื•ื“ ื‘ืื•ืคืŸ ืžืœื ืขื ืžื—ืกื ื™ืช ื”-IP ืขืœ ืžืžืฉืง ืจืฉืช ื•ื™ืจื˜ื•ืืœื™ืช.
  • ื‘ืžืงื•ื ืžื—ืจื•ื–ื•ืช ืžื•ื‘ื ื•ืช (RFC 3339), ื”ื™ื•ืžืŸ ืžืฉืชืžืฉ ื‘ืขืจื›ื™ recfile, ืฉื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื”ื ืขื ื›ืœื™ ื”ืฉื™ืจื•ืช ืฉืœ GNU Recutils.
  • ืœื—ืœื•ืคื™ืŸ, ื ื™ืชืŸ ืœืื—ืกืŸ ื›ื•ืชืจื•ืช ืžื ื•ืช ืžื•ืฆืคื ื•ืช ื‘ืงื‘ืฆื™ื ื ืคืจื“ื™ื ื‘ืกืคืจื™ื™ืช ื”ืžืฉื ื” "hdr/", ืœื–ืจื– ืžืฉืžืขื•ืชื™ืช ืืช ืคืขื•ืœื•ืช ืื—ื–ื•ืจ ืจืฉื™ืžืช ื”ืžื ื•ืช ื‘ืžืขืจื›ื•ืช ืงื‘ืฆื™ื ื‘ืขืœื•ืช ื’ื“ืœื™ ื‘ืœื•ืงื™ื ื’ื“ื•ืœื™ื, ื›ื’ื•ืŸ ZFS. ื‘ืขื‘ืจ, ืื—ื–ื•ืจ ื›ื•ืชืจืช ื”ื—ื‘ื™ืœื” ื“ืจืฉ ืงืจื™ืื” ืจืง ื‘ืœื•ืง ืฉืœ 128KiB ืžื”ื“ื™ืกืง ื›ื‘ืจื™ืจืช ืžื—ื“ืœ.
  • ื‘ื“ื™ืงืช ืงื‘ืฆื™ื ื—ื“ืฉื™ื ื™ื›ื•ืœื” ืœื”ืฉืชืžืฉ ื‘-kqueue ื•ืœืœื ืžื™ื“ืข ืขืœ ืชืช-ืžืขืจื›ื•ืช ื”ืœื™ื‘ื”, ื•ืœื‘ืฆืข ืคื—ื•ืช ืงืจื™ืื•ืช ืžืขืจื›ืช.
  • ื›ืœื™ ืขื–ืจ ืžื—ื–ื™ืงื™ื ืคื—ื•ืช ืงื‘ืฆื™ื ืคืชื•ื—ื™ื ื•ืกื•ื’ืจื™ื ื•ืคื•ืชื—ื™ื ืื•ืชื ืžื—ื“ืฉ ื‘ืชื“ื™ืจื•ืช ื ืžื•ื›ื” ื™ื•ืชืจ. ืขื ืžืกืคืจ ืจื‘ ืฉืœ ื—ื‘ื™ืœื•ืช, ื‘ืขื‘ืจ ื ื™ืชืŸ ื”ื™ื” ืœื”ื™ืชืงืœ ื‘ืžื’ื‘ืœื” ืขืœ ื”ืžืกืคืจ ื”ืžืจื‘ื™ ืฉืœ ืงื‘ืฆื™ื ืคืชื•ื—ื™ื.
  • ืฆื•ื•ืชื™ื ืจื‘ื™ื ื”ื—ืœื• ืœื”ืจืื•ืช ืืช ื”ื”ืชืงื“ืžื•ืช ื•ื”ืžื”ื™ืจื•ืช ืฉืœ ืคืขื•ืœื•ืช ื›ื’ื•ืŸ ื”ื•ืจื“ื”/ื”ืขืœืื”, ื”ืขืชืงื” ื•ืขื™ื‘ื•ื“ (ื”ืฉืœื›ืช) ื—ื‘ื™ืœื•ืช.
  • ื”ืคืงื•ื“ื” "nncp-file" ื™ื›ื•ืœื” ืœืฉืœื•ื— ืœื ืจืง ืงื‘ืฆื™ื ื‘ื•ื“ื“ื™ื, ืืœื ื’ื ืกืคืจื™ื•ืช, ื•ืœื™ืฆื•ืจ ืืจื›ื™ื•ืŸ pax ืขื ื”ืชื•ื›ืŸ ืฉืœื”ื ืชื•ืš ื›ื“ื™ ืชื ื•ืขื”.
  • ื›ืœื™ ืขื–ืจ ืžืงื•ื•ื ื™ื ื™ื›ื•ืœื™ื ื‘ืื•ืคืŸ ืื•ืคืฆื™ื•ื ืœื™ ืœื”ืคืขื™ืœ ืžื™ื“ ื–ืจื™ืงืช ืžื ื•ืช ืœืื—ืจ ื”ื•ืจื“ืช ื—ื‘ื™ืœื” ื‘ื”ืฆืœื—ื”, ืžื‘ืœื™ ืœื”ืคืขื™ืœ ื“ืžื•ืŸ ื ืคืจื“ ืžืกื•ื’ "nncp-toss".
  • ืฉื™ื—ื” ืžืงื•ื•ื ืช ืœืžืฉืชืชืฃ ืื—ืจ ื™ื›ื•ืœื” ืœื”ืชืจื—ืฉ ื‘ืื•ืคืŸ ืื•ืคืฆื™ื•ื ืœื™ ืœื ืจืง ื›ืืฉืจ ื˜ื™ื™ืžืจ ืžื•ืคืขืœ, ืืœื ื’ื ื›ืืฉืจ ืžื•ืคื™ืขื” ื—ื‘ื™ืœื” ื™ื•ืฆืืช ื‘ืกืคืจื™ื™ืช ื”ืกืœื•ืœืจ.
  • ืžื‘ื˜ื™ื— ืชืคืขื•ืœ ืชื—ืช NetBSD ื•-OpenBSD OS, ื‘ื ื•ืกืฃ ืœ-FreeBSD ื•-GNU/Linux ืฉื ืชืžื›ื• ื‘ืขื‘ืจ.
  • "nncp-daemon" ืชื•ืื ื‘ืื•ืคืŸ ืžืœื ืœืžืžืฉืง UCSPI-TCP. ื™ื—ื“ ืขื ื”ื™ื›ื•ืœืช ืœื”ื™ื›ื ืก ืืœ ืžืชืืจ ืงื•ื‘ืฅ ืžื•ื’ื“ืจ (ืœื“ื•ื’ืžื” ืขืœ ื™ื“ื™ ื”ื’ื“ืจืช "NNCPLOG=FD:4"), ื–ื” ื™ื“ื™ื“ื•ืชื™ ืœื—ืœื•ื˜ื™ืŸ ืœืจื•ืฅ ืชื—ืช ื›ืœื™ ืขื–ืจ ื“ืžื•ื™ื™ daemontools.
  • ื”ืจื›ื‘ืช ื”ืคืจื•ื™ืงื˜ ื”ื•ืขื‘ืจื” ืœื—ืœื•ื˜ื™ืŸ ืœืžืขืจื›ืช ื”ื—ื–ืจื”.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”