forked from I2P_Developers/i2p.www
Migrate proposal 111 to the specification section
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
{% extends "global/layout.html" %}
|
||||
{% block title %}{% trans %}Transport Overview{% endtrans %}{% endblock %}
|
||||
{% block lastupdated %}{% trans %}September 2014{% endtrans %}{% endblock %}
|
||||
{% block accuratefor %}0.9.15{% endblock %}
|
||||
{% block lastupdated %}{% trans %}June 2018{% endtrans %}{% endblock %}
|
||||
{% block accuratefor %}0.9.36{% endblock %}
|
||||
{% block content %}
|
||||
<h2>{% trans %}Transports in I2P{% endtrans %}</h2>
|
||||
|
||||
@@ -15,11 +15,12 @@ is the one who should receive a given message.
|
||||
|
||||
<p>{% trans -%}
|
||||
I2P supports multiple transports simultaneously.
|
||||
There are two transports currently implemented:
|
||||
There are three transports currently implemented:
|
||||
{%- endtrans %}</p>
|
||||
<ol>
|
||||
<li>{% trans ntcp=site_url('docs/transport/ntcp') %}<a href="{{ ntcp }}">NTCP</a>, a Java New I/O (NIO) TCP transport{% endtrans %}</li>
|
||||
<li>{% trans ssu=site_url('docs/transport/ssu') %} <a href="{{ ssu }}">SSU</a>, or Secure Semireliable UDP{% endtrans %}</li>
|
||||
<li>{% trans ntcp2=site_url('docs/spec/ntcp2') %}<a href="{{ ntcp2 }}">NTCP2</a>, a new version of NTCP{% endtrans %}</li>
|
||||
</ol>
|
||||
|
||||
<p>{% trans -%}
|
||||
|
@@ -1,11 +1,10 @@
|
||||
{% extends "global/layout.html" %}
|
||||
{% block title %}{% trans %}NTCP (NIO-based TCP){% endtrans %}{% endblock %}
|
||||
{% block lastupdated %}{% trans %}September 2017{% endtrans %}{% endblock %}
|
||||
{% block accuratefor %}0.9.32{% endblock %}
|
||||
{% block lastupdated %}{% trans %}June 2018{% endtrans %}{% endblock %}
|
||||
{% block accuratefor %}0.9.36{% endblock %}
|
||||
{% block content %}
|
||||
<p>{% trans transports=site_url('docs/transport'), ssu=site_url('docs/transport/ssu') -%}
|
||||
NTCP is one of two <a href="{{ transports }}">transports</a> currently implemented in I2P.
|
||||
The other is <a href="{{ ssu }}">SSU</a>.
|
||||
<p>{% trans transports=site_url('docs/transport'), ssu=site_url('docs/transport/ssu'), ntcp2=site_url('docs/spec/ntcp2') -%}
|
||||
The others are <a href="{{ ssu }}">SSU</a> and <a href="{{ ntcp2 }}">NTCP2</a>.
|
||||
NTCP is a Java NIO-based transport introduced in I2P release 0.6.1.22.
|
||||
Java NIO (new I/O) does not suffer from the 1 thread per connection issues of the old TCP transport.
|
||||
NTCP-over-IPv6 is supported as of version 0.9.8.
|
||||
|
@@ -1,18 +1,17 @@
|
||||
{% extends "global/layout.html" %}
|
||||
{% block title %}{% trans %}Secure Semireliable UDP{% endtrans %} (SSU){% endblock %}
|
||||
{% block lastupdated %}{% trans %}March 2018{% endtrans %}{% endblock %}
|
||||
{% block accuratefor %}0.9.34{% endblock %}
|
||||
{% block lastupdated %}{% trans %}June 2018{% endtrans %}{% endblock %}
|
||||
{% block accuratefor %}0.9.36{% endblock %}
|
||||
{% block content %}
|
||||
|
||||
<p>{% trans transports=site_url('docs/transport'), ntcp=site_url('docs/transport/ntcp') -%}
|
||||
<p>{% trans transports=site_url('docs/transport'), ntcp=site_url('docs/transport/ntcp'), ntcp2=site_url('docs/spec/ntcp2') -%}
|
||||
SSU (also called "UDP" in much of the I2P documentation and user interfaces)
|
||||
is one of two <a href="{{ transports }}">transports</a> currently implemented in I2P.
|
||||
The other is <a href="{{ ntcp }}">NTCP</a>.
|
||||
is one of three <a href="{{ transports }}">transports</a> currently implemented in I2P.
|
||||
The others are <a href="{{ ntcp }}">NTCP</a> and <a href="{{ ntcp2 }}">NTCP2</a>.
|
||||
{%- endtrans %}</p>
|
||||
|
||||
<p>{% trans -%}
|
||||
SSU is the newer of the two transports,
|
||||
introduced in I2P release 0.6.
|
||||
SSU was introduced in I2P release 0.6.
|
||||
In a standard I2P installation, the router uses both NTCP and SSU for outbound connections.
|
||||
SSU-over-IPv6 is supported as of version 0.9.8.
|
||||
{%- endtrans %}</p>
|
||||
|
@@ -3,8 +3,8 @@ Low-level Cryptography Specification
|
||||
====================================
|
||||
.. meta::
|
||||
:category: Design
|
||||
:lastupdated: October 2016
|
||||
:accuratefor: 0.9.27
|
||||
:lastupdated: June 2018
|
||||
:accuratefor: 0.9.36
|
||||
|
||||
.. contents::
|
||||
|
||||
@@ -401,17 +401,15 @@ encrypted with AES (as above). The primary reason to do the DH negotiation
|
||||
instead of using ElGamalAES+SessionTag [ELG-AES]_ is that it provides
|
||||
'(perfect) forward secrecy' [PFS]_, while ElGamalAES+SessionTag does not.
|
||||
|
||||
In order to migrate to a more standardized implementation (TLS/SSL or even
|
||||
SSH), the following issues must be addressed:
|
||||
|
||||
1. Can we somehow reestablish sessions securely (ala session tags) or do we
|
||||
need to do full negotiation each time?
|
||||
|
||||
2. Can we simplify/avoid the x509 or other certificate formats and use our own
|
||||
RouterInfo structure (which contains the ElGamal and DSA keys)?
|
||||
|
||||
See the NTCP specification [NTCP]_ for details.
|
||||
|
||||
NTCP2 connections
|
||||
-----------------
|
||||
|
||||
NTCP2 connections use X25519 Diffie-Hellman and ChaCha20_Poly1305 authenticated encryption.
|
||||
|
||||
See the NTCP2 specification [NTCP2]_ for details and references.
|
||||
|
||||
.. _udp:
|
||||
|
||||
UDP connections
|
||||
@@ -490,6 +488,9 @@ References
|
||||
.. [NTCP]
|
||||
{{ site_url('docs/transport/ntcp', True) }}
|
||||
|
||||
.. [NTCP2]
|
||||
{{ site_url('docs/spec/ntcp2', True) }}
|
||||
|
||||
.. [PFS]
|
||||
http://en.wikipedia.org/wiki/Perfect_forward_secrecy
|
||||
|
||||
|
2055
i2p2www/spec/ntcp2.rst
Normal file
2055
i2p2www/spec/ntcp2.rst
Normal file
File diff suppressed because it is too large
Load Diff
@@ -7,16 +7,19 @@ NTCP 2
|
||||
:created: 2014-02-13
|
||||
:thread: http://zzz.i2p/topics/1577
|
||||
:lastupdated: 2018-06-23
|
||||
:status: Open
|
||||
:status: Closed
|
||||
:supercedes: 106
|
||||
:target: 0.9.36
|
||||
:implementedin: 0.9.36
|
||||
|
||||
.. contents::
|
||||
|
||||
|
||||
Note
|
||||
====
|
||||
Minor revisions in progress. Ready for test implementations only.
|
||||
Not ready for network deployment.
|
||||
Proposal phase is closed.
|
||||
See [SPEC]_ for the official specification.
|
||||
This proposal may still be referenced for background information.
|
||||
|
||||
|
||||
Overview
|
||||
@@ -2519,6 +2522,9 @@ References
|
||||
.. [SipHash]
|
||||
https://www.131002.net/siphash/
|
||||
|
||||
.. [SPEC]
|
||||
{{ site_url('docs/spec/ntcp2', True) }}
|
||||
|
||||
.. [SSU]
|
||||
{{ site_url('docs/transport/ssu', True) }}
|
||||
|
||||
|
Reference in New Issue
Block a user