mirror of
https://github.com/monero-project/monero-site.git
synced 2024-11-18 10:01:18 +00:00
32 lines
1.3 KiB
Markdown
32 lines
1.3 KiB
Markdown
---
|
|
tags: ["kovri"]
|
|
terms: ["NTCP"]
|
|
summary: "NIO-Based TCP (Non-blocking I/O based TCP): one of two Kovri transports"
|
|
---
|
|
|
|
### The Basics
|
|
|
|
*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
|
|
|
|
- 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)
|