Fix errors that tests/scripts/checkxml.sh found
This commit is contained in:
@ -19,7 +19,7 @@ ATalk application. It isn't really useful, but it is
|
||||
heavily documented code.</p>
|
||||
|
||||
<p>This client package provides the basic necessity for communicating over I2P,
|
||||
but there are three other subpackages that are helpful. Specifically:<ul>
|
||||
but there are three other subpackages that are helpful. Specifically:</p><ul>
|
||||
<li>{@link net.i2p.client.datagram} - for applications that want their messages
|
||||
to be both authenticated and repliable</li>
|
||||
<li>{@link net.i2p.client.naming} - for applications that want to resolve
|
||||
@ -28,7 +28,7 @@ but there are three other subpackages that are helpful. Specifically:<ul>
|
||||
a streaming API to provide reliable in order message delivery (<b>note</b>:
|
||||
the streaming library is packaged seperate from the main SDK - in the
|
||||
mstreaming.jar and streaming.jar)</li>
|
||||
</ul></p>
|
||||
</ul>
|
||||
|
||||
<p>The {@link net.i2p.client.I2PSession} implementation itself communicates with
|
||||
the I2P router by the I2CP (the client protocol).</p>
|
||||
|
@ -45,7 +45,7 @@
|
||||
<ul>
|
||||
<li>Pick a name for your eepsite (<i>something</i>.i2p). Use all lower-case.
|
||||
You may wish to check first in your own router's address book
|
||||
<a href="http://127.0.0.1:7657/susidns/addressbook.jsp?book=router&filter=none">here</a>,
|
||||
<a href="http://127.0.0.1:7657/susidns/addressbook.jsp?book=router&filter=none">here</a>,
|
||||
or the file <code>i2p/hosts.txt</code> to see if your name is already taken.
|
||||
Enter the new name for your eepsite on the
|
||||
<a href="http://127.0.0.1:7657/i2ptunnel/edit.jsp?tunnel=3">eepsite i2ptunnel configuration page</a>
|
||||
|
@ -113,7 +113,7 @@ Verzeichnis <code>~/.i2p/eepsite/docroot/</code> (Linux) oder <code>%APPDATA%\I2
|
||||
und benennen Sie dieses Dokument von <em>„index.html“</em> in <em>„hilfe.html“</em> um, so können Sie später darauf zurückgreifen. Erstellen Sie Ihre eigene <em>„index.html“</em> und füllen diese mit Inhalten, Bildern oder was auch immer Sie anderen mitteilen wollen.</li>
|
||||
</ol>
|
||||
|
||||
<h4><a name="AnkerDEOeA" id="AnkerDEOeA"></a>3. Die Eepseite öffentlich ankündigen</h4>
|
||||
<h4><a name="AnkerDEOeA"></a>3. Die Eepseite öffentlich ankündigen</h4>
|
||||
|
||||
<ul>
|
||||
<li>Nun ist es an der Zeit, Ihre Eepsite in einem globalen I2P-Adressbuch, wie beispielsweise bei <a href="http://stats.i2p/i2p/addkey.html">stats.i2p</a>,
|
||||
@ -183,7 +183,7 @@ beschreibt ein Verfahren zur Kodierung von 8-Bit-Binärdaten in eine
|
||||
Zeichenfolge, die nur aus wenigen, Codepage-unabhängigen ASCII-Zeichen
|
||||
besteht.
|
||||
</p><p class="footnote"><a class="footnum" name="fn.2" href="#fnr.2">2.</a> Anmerkung: Wenn dieses Vorgehen mit der Fehlermeldung „Invalid nonce. Are you being spoofed?“ quittiert wird, müssen <em>Cookies</em> im Browser erlaubt werden. Ist dies nicht möglich, können Sie mit einem Editor die Datei <em>„i2p/userhosts.txt“</em> bearbeiten und so die Adressen einfügen. <a href="http://sperrbezirk.i2p/Konqueror_Susi.html">Konqueror</a> ist etwas eigenwillig.
|
||||
</p><p class="footnote"><a class="footnum" name="fn.3" href="#fnr.3">3.</a> Gleiches wie unter <sup><a class="footref" name="fnr.2" href="#fn.2">2</a></sup> gilt für <em>„i2p/addressbook/subscriptions.txt“</em>.</p>
|
||||
</p><p class="footnote"><a class="footnum" name="fn.3" href="#fnr.3">3.</a> Gleiches wie unter gilt für <em>„i2p/addressbook/subscriptions.txt“</em>.</p>
|
||||
|
||||
<div class="notify">
|
||||
<b>Hinweis:</b> Diese Seite, die Weibseite sowie die Routerkonsole müssen alle in IHRE Sprache übersetzt werden, falls dies nicht bereits geschehen ist oder gerade stattfindet. Helfen Sie dem Projekt zu wachsen, indem Sie <a href="http://www.i2p2.i2p/getinvolved.html">helfen</a> (beispielsweise durch Übersetzungen)! Kontaktieren Sie uns über den oben erwähnten IRC-Kanal! Vielen Dank!</div>
|
||||
|
@ -44,7 +44,7 @@
|
||||
<ul>
|
||||
<li>Choissisez un nom pour votre eepsite (<i>quelquechose</i>.i2p). Tout en minuscule.
|
||||
D'abord, vérifiez dans le carnet d'adresse de votre router
|
||||
<a href="http://127.0.0.1:7657/susidns/addressbook.jsp?book=router&filter=none">ici</a>,
|
||||
<a href="http://127.0.0.1:7657/susidns/addressbook.jsp?book=router&filter=none">ici</a>,
|
||||
ou dans le fichier <code>i2p/hosts.txt</code> pour voir si le nom a déjà été pris.
|
||||
Entrez le nouveau nom de votre eepsite sur le
|
||||
<a href="http://127.0.0.1:7657/i2ptunnel/edit.jsp?tunnel=3">eepsite i2ptunnel page de configuration</a>
|
||||
|
@ -46,7 +46,7 @@
|
||||
<ul>
|
||||
<li>Kies een naam voor je eepsite (<i>mijnsite</i>.i2p). Gebruik alleen kleine letters.
|
||||
Kijk eerst
|
||||
<a href="http://127.0.0.1:7657/susidns/addressbook.jsp?book=router&filter=none">hier</a>,
|
||||
<a href="http://127.0.0.1:7657/susidns/addressbook.jsp?book=router&filter=none">hier</a>,
|
||||
in het adresboek van je router of in het bestand <code>i2p/hosts.txt</code> of de naam nog beschikbaar is.
|
||||
Voer de nieuwe naam voor je eepsite in op de
|
||||
<a href="http://127.0.0.1:7657/i2ptunnel/edit.jsp?tunnel=3">eepsite i2ptunnel configuratie pagina</a>
|
||||
|
@ -40,7 +40,7 @@
|
||||
Ваш i2p-сайт по умолчанию остановлен. Хотя Вы его и запустили, другим людям трудно его найти, ведь у сайта пока нет имени, а Ваш очень-длинный-Base64-ключ никому не известен. Вы, конечно, можете просто выдавать людям этот очень-длинный-Base64-ключ, но, к счастью, в I2P есть механизм адресных книг и несколько простых способов для сообщения людям о своем сайте. Далее подробные инструкции.
|
||||
|
||||
<ul>
|
||||
<li>Выберите имя для своего сайта (<i>something</i>.i2p). Используйте только символы в нижнем регистре. Загляните в <a href="http://127.0.0.1:7657/susidns/addressbook.jsp?book=router&filter=none">адресную книгу</a> Вашего маршрутизатора или в файл <code>i2p/hosts.txt</code> для проверки, возможно такое имя уже кто-то занял. Введите новое имя Вашего сайта на <a href="http://127.0.0.1:7657/i2ptunnel/edit.jsp?tunnel=3">странице настроек туннеля для i2p-сайта</a> в поле «Имя веб-сайта». Это заменит имя сайта по умолчанию «mysite.i2p». Поставьте галочку «Автозапуск». Ваш сайт будет доступен извне всегда, когда запущен Ваш маршрутизатор. Не забудьте нажать «Сохранить».
|
||||
<li>Выберите имя для своего сайта (<i>something</i>.i2p). Используйте только символы в нижнем регистре. Загляните в <a href="http://127.0.0.1:7657/susidns/addressbook.jsp?book=router&filter=none">адресную книгу</a> Вашего маршрутизатора или в файл <code>i2p/hosts.txt</code> для проверки, возможно такое имя уже кто-то занял. Введите новое имя Вашего сайта на <a href="http://127.0.0.1:7657/i2ptunnel/edit.jsp?tunnel=3">странице настроек туннеля для i2p-сайта</a> в поле «Имя веб-сайта». Это заменит имя сайта по умолчанию «mysite.i2p». Поставьте галочку «Автозапуск». Ваш сайт будет доступен извне всегда, когда запущен Ваш маршрутизатор. Не забудьте нажать «Сохранить».
|
||||
|
||||
<li>Кликните <a href="http://127.0.0.1:7657/i2ptunnel/index.jsp">в менеджере туннелей</a> на кнопке запуска вашего сайта. Вы должны увидеть запись «i2p-сайт» в списке «Локальные туннели» в левой части <a href="http://127.0.0.1:7657/index.jsp">консоли маршрутизатора</a>. С этого момента Ваш сайт запущен.
|
||||
|
||||
|
@ -7,31 +7,30 @@ communicate with the network routers. In addition, various transport protocols d
|
||||
the specifics of how data is passed from one router to another over the network. I2NP
|
||||
does not specify or require any particular transport layer, allowing transport protocols
|
||||
to work over TCP, Polling HTTP, SMTP+POP3/IMAP, UDP, among anything else
|
||||
that can pass data. I2NP merely requires that they:
|
||||
that can pass data. I2NP merely requires that they:</p>
|
||||
<ul>
|
||||
<li>
|
||||
Register a unique identifier for use in RouterAddress structures consisting of no
|
||||
more than 32 UTF-8 characters.
|
||||
more than 32 UTF-8 characters.</li>
|
||||
<li>
|
||||
Define standard text based options that uniquely define a contact method (for
|
||||
example .hostname. and .port. or .email address.) as usable in the
|
||||
RouterAddress structure's set of options.
|
||||
RouterAddress structure's set of options.</li>
|
||||
<li>
|
||||
Provide a means to reliably deliver a chunk of data, where the contents of any
|
||||
particular chunk is delivered in order. However, different chunks of data do not
|
||||
need to be delivered in order.
|
||||
need to be delivered in order.</li>
|
||||
<li>
|
||||
Secure the chunks of data from alteration or disclosure (e.g. encrypt them and use
|
||||
checksums).
|
||||
checksums).</li>
|
||||
<li>
|
||||
Enable the router to control the transport's bandwidth usage.
|
||||
Enable the router to control the transport's bandwidth usage.</li>
|
||||
<li>
|
||||
Provide estimates for the latency and bandwidth associated with passing a chunk of
|
||||
data.
|
||||
data.</li>
|
||||
<li>
|
||||
Provide a programmable interface suitable for integration with various routers.
|
||||
Provide a programmable interface suitable for integration with various routers.</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
Transports themselves can implement advanced features, such as steganography,
|
||||
constant rate delivery, dummy message delivery, and may even run on top of existing
|
||||
@ -56,12 +55,12 @@ message to be sent. The router then determines where to send it, delivers it thr
|
||||
outbound tunnels, instructing the end point to pass it along to the appropriate inbound
|
||||
tunnel, where it is passed along again to that tunnel's end point and made available to
|
||||
the target for reception. To understand fully, each step in the process must be
|
||||
explained in detail.
|
||||
explained in detail.</p>
|
||||
<ul>
|
||||
<li>
|
||||
First, once the originating router receives the message and the Destination, it
|
||||
attempts to find the LeaseSet associated with it as stored in the Network Database
|
||||
under the key calculated by SHA256 of the Destination.
|
||||
under the key calculated by SHA256 of the Destination.</li>
|
||||
<li>
|
||||
The router then builds a GarlicMessage addressed to the SHA256 of the
|
||||
PublicKey from the LeaseSet with the real data to be delivered. This
|
||||
@ -71,48 +70,48 @@ and in fact, if the source router desires guaranteed delivery, it will include a
|
||||
requesting source route delivery of a DeliveryStatusMessage back to itself. The
|
||||
body of the GarlicMessage with all enclosed GarlicCloves is encrypted to the key
|
||||
specified on the LeaseSet using the ElGamal+AES256 algorithm described in the
|
||||
data structure spec.
|
||||
data structure spec.</li>
|
||||
<li>
|
||||
The router then selects one or more outbound tunnels through which the
|
||||
GarlicMessage will be delivered.
|
||||
GarlicMessage will be delivered.</li>
|
||||
<li>
|
||||
Then the router selects one or more of those Lease structures from the LeaseSet
|
||||
and constructs a TunnelMessage along with DeliveryInstructions for the
|
||||
outbound tunnel's end point to deliver the GarlicMessage to the inbound tunnel's
|
||||
gateway router.
|
||||
gateway router.</li>
|
||||
<li>
|
||||
The source router then passes the various TunnelMessages down the outbound
|
||||
tunnel to that tunnel's end point, where the instructions are decrypted, specifying
|
||||
where the message should be delivered.
|
||||
where the message should be delivered.</li>
|
||||
<li>
|
||||
At this point, the end point must determine how to contact the router specified in
|
||||
the decrypted DeliveryInstructions, perhaps looking up RouterInfo or
|
||||
LeaseSet structures in the Network Database, and maybe even delaying a
|
||||
requested period of time before passing on the message.
|
||||
requested period of time before passing on the message.</li>
|
||||
<li>
|
||||
Once the tunnel end point has the data it needs to contact the inbound tunnel's
|
||||
gateway router, it then attempts to contact it either directly through one of its public
|
||||
RouterAddress or source routed through one of its published trusted peers. Over
|
||||
this medium the tunnel end point delivers the GarlicMessage as it was wrapped by
|
||||
the source router, along with the TunnelId.
|
||||
the source router, along with the TunnelId.</li>
|
||||
<li>
|
||||
Once delivered to the inbound tunnel's gateway, the gateway builds a
|
||||
TunnelMessage wrapping the GarlicMessage, encrypting a
|
||||
DeliveryInstructions to specify local delivery upon arrival at the tunnel's end
|
||||
point.
|
||||
point.</li>
|
||||
<li>
|
||||
Once the TunnelMessage is passed down to the end point in inbound tunnel, the
|
||||
router opens the DeliveryInstructions, notes the request to deliver it locally,
|
||||
and then proceeds to review the contents of the TunnelMessage's payload, which in
|
||||
this case is a GarlicMessage addressed to the SHA256 of a LeaseSet that it has
|
||||
published. It then decrypts the payload of the message with ElGamal + AES256.
|
||||
published. It then decrypts the payload of the message with ElGamal + AES256.</li>
|
||||
<li>
|
||||
After opening up the GarlicMessage, it reviews each of the GarlicCloves and
|
||||
processes them each. Cloves with DeliveryInstructions addressed to a local
|
||||
Destination are delivered to the associated client application, other cloves asking
|
||||
for local processing (e.g. Network Database messages or DeliveryStatusMessages)
|
||||
are processed, and cloves asking for forwarding to other routers are passed off for
|
||||
delivery.
|
||||
delivery.</li>
|
||||
</ul>
|
||||
<p>
|
||||
There are several important points of note in this scenario. First, the source router
|
||||
|
Reference in New Issue
Block a user