public inbox for
Atom feed
From: Sergey Matveev <stargrave@stargrave•org>
Subject: [EN] NNCP 7.0.0 release announcement
Date: Wed, 30 Jun 2021 15:31:50 +0300	[thread overview]
Message-ID: <> (raw)

[-- Attachment #1: Type: text/plain, Size: 3026 bytes --]

I am pleased to announce NNCP 7.0.0 release availability!

NNCP (Node to Node copy) is a collection of utilities simplifying
secure store-and-forward files and mail exchanging.

This utilities are intended to help build up small size (dozens of
nodes) ad-hoc friend-to-friend (F2F) statically routed darknet
delay-tolerant networks for fire-and-forget secure reliable files, file
requests, Internet mail and commands transmission. All packets are
integrity checked, end-to-end encrypted (E2EE), explicitly authenticated
by known participants public keys. Onion encryption is applied to
relayed packets. Each node acts both as a client and server, can use
push and poll behaviour model.

Out-of-box offline sneakernet/floppynet, dead drops, sequential and
append-only CD-ROM/tape storages, air-gapped computers support. But
online TCP daemon with full-duplex resumable data transmission exists.

------------------------ >8 ------------------------

The main improvements for that release are:

* Merkle Tree-based Hashing with BLAKE3 (MTH) is used instead of
  BLAKE2b.  Because of that, there are backward *incompatible*
  changes of encrypted files (everything laying in the spool
  directory) and ".meta" files of chunked transfer.

  Current implementation is far from being optimal: it lacks
  parallelizable calculations and has higher memory consumption:
  nearly 512 KiB for each 1 GiB of file’s data.  Future performance
  and memory size optimizations should not lead to packet’s format
  change.  But it is still several times faster than BLAKE2b.

* Resumed online downloads, because of MTH, require reading only of
  the preceding part of file, not the whole one as was before.

* "nncp-hash" utility appeared for calculating file’s MTH hash.

* BLAKE2 KDF and XOF functions are replaced with BLAKE3 in encrypted
  packets.  Lowering number of used primitives.  Also, its encrypted
  packet’s header is used as an associated data during encryption.

* MultiCast Discovery uses ff02::4e4e:4350 address instead of

* "nncp-cfgenc" mistakenly asked passphrase three times during

* "nncp-stat" reports about partly downloaded packets.

* Updated dependencies.

------------------------ >8 ------------------------

NNCP's home page is:

Source code and its signature for that version can be found here: (1123 KiB)

SHA256 hash: D4D28E9A CF40FE12 68BDE134 9CD36076 282395BE 70094EFB 0DB75CE8 C32EA664
GPG key ID: 0x2B25868E75A1A953 NNCP releases <releases@nncpgo•org>
Fingerprint: 92C2 F0AE FE73 208E 46BF  F3DE 2B25 868E 75A1 A953

Please send questions regarding the use of NNCP, bug reports and patches
to mailing list:

Sergey Matveev (
OpenPGP: CF60 E89A 5923 1E76 E263  6422 AE1A 8109 E498 57EF

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

             reply	other threads:[~2021-06-30 12:32 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-30 12:31 Sergey Matveev [this message]
2021-06-30 13:28 ` [EN] NNCP 7.0.0 release announcement John Goerzen
2021-06-30 14:09   ` MTH Sergey Matveev
2021-06-30 14:31   ` nncp-redir Sergey Matveev
2021-06-30 17:25     ` nncp-redir Sergey Matveev
2021-07-01 15:03       ` nncp-redir John Goerzen
2021-07-01 16:19         ` nncp-redir Sergey Matveev
2021-06-30 23:39 ` [EN] NNCP 7.0.0 release announcement Shawn K. Quinn
2021-07-01  7:28   ` build fail Sergey Matveev