diff --git a/knowledge-base/moneropedia/base32-address.md b/knowledge-base/moneropedia/base32-address.md index 787b6181..b2482982 100644 --- a/knowledge-base/moneropedia/base32-address.md +++ b/knowledge-base/moneropedia/base32-address.md @@ -2,7 +2,7 @@ layout: moneropedia entry: "Base32 address" tags: ["kovri"] -terms: ["base32-address"] +terms: ["base32-address", "base32-addresses"] summary: "Base32 encoded hash of a Base64 address" --- diff --git a/knowledge-base/moneropedia/base64-address.md b/knowledge-base/moneropedia/base64-address.md index b15f0ada..9bd1e7bc 100644 --- a/knowledge-base/moneropedia/base64-address.md +++ b/knowledge-base/moneropedia/base64-address.md @@ -2,7 +2,7 @@ layout: moneropedia entry: "Base64 address" tags: ["kovri"] -terms: ["base64-address"] +terms: ["base64-address", "base64-addresses"] summary: "Base64 encoded I2P destination" --- diff --git a/knowledge-base/moneropedia/clearnet.md b/knowledge-base/moneropedia/clearnet.md index 54058efc..ea69b03d 100644 --- a/knowledge-base/moneropedia/clearnet.md +++ b/knowledge-base/moneropedia/clearnet.md @@ -28,6 +28,6 @@ These technologies protect you from clearnet by building an anonymous network ** Here is an accurate, [interactive diagram](https://www.eff.org/pages/tor-and-https) provided by the [EFF](https://www.eff.org/) which describes *clearnet* as it relates to **Tor**. The concept also (somewhat) applies to @Kovri and @I2P in terms of anonymity with the exception that: -- @Kovri/@I2P does not use exit nodes when connecting to an @eepsite +- @Kovri does not use exit nodes when connecting to an @eepsite - Your traffic ever need to leave the @I2P network. -- You do not need HTTPS to use @Kovri/@I2P (with the exception of @reseed) +- You do not need HTTPS to use @Kovri (with the exception of @reseed) diff --git a/knowledge-base/moneropedia/destination.md b/knowledge-base/moneropedia/destination.md index 7971da57..b93324f3 100644 --- a/knowledge-base/moneropedia/destination.md +++ b/knowledge-base/moneropedia/destination.md @@ -14,6 +14,6 @@ TODO(anonimal): finish ### In-depth Information -An @I2P destination can be encoded into a @base32-address or @base64-address. Most users will only care about @base32-address or a `.i2p` hostname while, internally, @Kovri/@I2P will use the @base64-address. +An @I2P destination can be encoded into a @base32-address or @base64-address. Most users will only care about @base32-address or a `.i2p` hostname while, internally, @Kovri uses @base64-addresses. TODO(anonimal): finish diff --git a/knowledge-base/moneropedia/garlic-routing.md b/knowledge-base/moneropedia/garlic-routing.md index 8b8b6cac..4b7888bc 100644 --- a/knowledge-base/moneropedia/garlic-routing.md +++ b/knowledge-base/moneropedia/garlic-routing.md @@ -3,7 +3,7 @@ layout: moneropedia entry: "Garlic Routing" tags: ["kovri"] terms: ["garlic-routing"] -summary: "Routing technology as implemented in Kovri/I2P" +summary: "Routing technology as implemented in Kovri" --- ### The Basics diff --git a/knowledge-base/moneropedia/java-i2p.md b/knowledge-base/moneropedia/java-i2p.md index d5f690da..e040579b 100644 --- a/knowledge-base/moneropedia/java-i2p.md +++ b/knowledge-base/moneropedia/java-i2p.md @@ -3,7 +3,7 @@ layout: moneropedia entry: "Java I2P" tags: ["kovri"] terms: ["Java-I2P"] -summary: "The original implementation of I2P; written in Java" +summary: "The original implementation of I2P - written in Java" --- ### The Basics diff --git a/knowledge-base/moneropedia/ntcp.md b/knowledge-base/moneropedia/ntcp.md index 163db18c..69f3152c 100644 --- a/knowledge-base/moneropedia/ntcp.md +++ b/knowledge-base/moneropedia/ntcp.md @@ -3,13 +3,32 @@ layout: moneropedia entry: "NTCP" tags: ["kovri"] terms: ["NTCP"] -summary: "TODO(anonimal): finish" +summary: "NIO-Based TCP (Non-blocking I/O based TCP): one of two Kovri transports" --- ### The Basics -TODO(anonimal): finish +*NIO-Based TCP (Non-blocking I/O based TCP)* is one of two encrypted @transports for @Kovri. + +Similar to @SSU, @NTCP's *primary* purpose is to securely transmit @in-net @I2NP messages through @tunnels but, unlike @SSU, @NTCP functions solely over encrypted [TCP](https://en.wikipedia.org/wiki/Transmission_Control_Protocol). ### In-depth information -TODO(anonimal): finish + - Passes along individual @I2NP messages (both Standard and Time Sync) after: + - TCP has been established + - Establishment Sequence has been completed + - Uses the following @encryption: + - 2048-bit [Diffie-Hellman](https://en.wikipedia.org/wiki/Diffie-hellman) + - [AES-256](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard)/[CBC](https://en.wikipedia.org/wiki/Block_cipher_modes_of_operation) + - Establishment Sequence has the following *states*: + - Pre-establishment + - Establishment + - Post-establishment or "Established" + - Uses the following from the @network-database: + - Transport name: NTCP + - Host: IP (IPv4 or IPv6) or host name (shortened IPv6 address (with "::") is allowed) + - Port: 1024 - 65535 + +### Notes + +For further details, read @Java-I2P's [NTCP](https://geti2p.net/en/docs/transport/ntcp) diff --git a/knowledge-base/moneropedia/ssu.md b/knowledge-base/moneropedia/ssu.md index 303e74ae..665f9c44 100644 --- a/knowledge-base/moneropedia/ssu.md +++ b/knowledge-base/moneropedia/ssu.md @@ -3,24 +3,23 @@ layout: moneropedia entry: "SSU" tags: ["kovri"] terms: ["SSU"] -summary: "I2P's Secure Semi-reliable UDP layer" +summary: "Secure Semi-reliable UDP: one of two Kovri transports" --- ### The Basics -*Secure Semi-reliable UDP* (SSU) is one of two encrypted @transport layers for @Kovri/@I2P. +*Secure Semi-reliable UDP* is one of two encrypted @transports for @Kovri. -SSU's *primary* purpose is to securely transmit @in-net @I2NP messages through @tunnels over encrypted [UDP](https://en.wikipedia.org/wiki/User_Datagram_Protocol). +Similar to @NTCP, @SSU's *primary* purpose is to securely transmit @in-net @I2NP messages through @tunnels but, unlike @NTCP, @SSU functions solely over encrypted [UDP](https://en.wikipedia.org/wiki/User_Datagram_Protocol). ### In-depth information -- Much like its @NTCP counterpart, SSU is a connection-oriented, point-to-point data transport -- Termed *semi-reliable* because SSU will repeatedly retransmit *unacknowledged* messages (up to maximum number then dropped) -- SSU also provides several unique services (in addition to its function as a @transport layer): - - IP detection (local inspection + peer testing) - - NAT traversal (using introducers) - - Firewall status - - If implemented, SSU can notify NTCP if the external address or firewall status changes +- Like @NTCP, @SSU is a connection-oriented, point-to-point data transport +- Termed *semi-reliable* because @SSU will repeatedly retransmit *unacknowledged* messages (up to maximum number then dropped) +- @SSU also provides several unique services (in addition to its function as a @transport layer): + - IP detection (local inspection or with [peer testing](https://geti2p.net/en/docs/transport/ssu#peerTesting)) + - [NAT](https://en.wikipedia.org/wiki/Network_address_translation) traversal (using [introducers](https://geti2p.net/en/docs/transport/ssu#introduction)) + - [Firewall](https://en.wikipedia.org/wiki/Firewall_%28computing%29) status and, if implemented, @SSU can notify @NTCP if the external address or firewall status changes ### Notes diff --git a/knowledge-base/moneropedia/transports.md b/knowledge-base/moneropedia/transports.md index 01b9cebe..71105c7f 100644 --- a/knowledge-base/moneropedia/transports.md +++ b/knowledge-base/moneropedia/transports.md @@ -3,13 +3,19 @@ layout: moneropedia entry: "Transports" tags: ["kovri"] terms: ["transports", "transport"] -summary: "TODO(anonimal): finish" +summary: "The two encrypted transport layers for Kovri" --- ### The Basics -TODO(anonimal): finish +@Kovri comes with two encrypted [transport layer](https://en.wikipedia.org/wiki/Transport_layer) technologies that allow @Kovri to send @messages across the @I2P network. These *@transports* are @SSU and @NTCP. + +@SSU is encrypted [UDP](https://en.wikipedia.org/wiki/User_Datagram_Protocol) and @NTCP is encrypted [TCP](https://en.wikipedia.org/wiki/Transmission_Control_Protocol). They both allow you to securely use @I2P over [TCP/IP](https://en.wikipedia.org/wiki/Tcp/ip) connections. ### In-depth information TODO(anonimal): finish + +### Notes + +Read about the transport layer in the [OSI model](https://en.wikipedia.org/wiki/OSI_model)