commit 5e6398b779d58ff1fb4d85f7ed8a39714c18c4c1
parent 39066bc50cb773d374f2ce369e07ca1e9c2bb0ca
Author: Julius Bünger <buenger@mytum.de>
Date: Thu, 17 Oct 2024 10:12:29 +0200
cong: Text for overview, links to core
Diffstat:
1 file changed, 13 insertions(+), 6 deletions(-)
diff --git a/developers/apis/cong.rst b/developers/apis/cong.rst
@@ -6,9 +6,16 @@
CONG
====
-CONG (COre Next Generation) is the name of the project redesigns the CORE
-service. Here we document the design decisions and parts that are about to
-change.
+CONG (COre Next Generation) is the name of the project redesigns the
+:ref:`CORE-Subsystem-Dev` service. Here we document the design decisions and
+parts that are changing.
+The most notable change concerns peer ids: In order to avoid location tracking,
+they are being made non-permanent - they change with each change of underlying
+addresses. Next to that, the cryptographic primitives in use change, and the
+interface to the (transport) layers below. The interface to the underlying
+layers is made more generic so that libp2p can be switched in for gnunet's own
+transport (layer 2 overlay/L2O). Finally, protocol-versioning above core will
+be introduced.
..
TODO (from project plan)
@@ -31,9 +38,9 @@ change.
Key exchange
------------
-While we are at it we may as well improve the key exchange.
-Currently, we are using our own ECDHE key exchange that derives
-2x2 keys.
+While we are at it we may as well improve the key exchange
+(:ref:`The-CORE-Peer_002dto_002dPeer-Protocol`).
+Currently, we are using our own ECDHE key exchange that derives 2x2 keys.
2 keys for each direction (sending/receiving).
Each direction uses two 256-bit symmetric encryption keys derived through the ECDH exchange.
Each payload is encrypted using AES(kA, Twofish(kB, payload)) both in CFB mode (!).