Files
i2p.www/www.i2p2/pages/updates_de.html

90 lines
4.7 KiB
HTML

{% extends "_layout.html" %}
{% block title %}I2P Software Update Specification{% endblock %}
{% block content %}
Diese Seite wurde zuletzt im September 2010 aktualisiert und bezieht sich auf die Routerversion (I2P-Version) 0.8.
<h3>&Uuml;bersicht</h3>
<p>
I2P setzt ein einfaches, aber sicheres System zur automatischen Softwareaktualisierung ein.
Die Routerkonsole l&auml;dt in regelm&auml;&szlig;igen Abst&auml;nden eine Datei mit Neuigkeiten rund um I2P von einer konfigurierbaren URL.
F&uuml;r den Fall, dass der Server nicht erreichbar ist, ist eine Ersatz-URL fest einprogrammiert.
</p><p>
Der Inhalt der Neuigkeitendatei wird auf der Eingangsseite der Routerkonsole angezeigt.
Zus&auml;tzlich enth&auml;lt die Datei die neueste I2P-Versionsnummer.
Wenn die Versionsnummer h&ouml;her als die Routerversion ist, wird dem
Benutzer angezeigt, dass eine neue Version verf&uuml;gbar ist.
</p><p>
Wenn der Router entsprechend eingestellt ist, l&auml;dt er die neue Version
herunter und installiert sie ggf. auch gleich.
</p>
<h3>Format der Neuigkeitendatei</h3>
<p>
Die Datei news.xml kann die folgenden Elemente enthalten:
</p>
<pre>
&lt;i2p.news date="$Date: 2010-01-22 00:00:00 $" /&gt;
&lt;i2p.release version="0.7.14" date="2010/01/22" minVersion="0.6" /&gt;
</pre>
<p>
Elemente k&ouml;nnen in XML-Kommentaren eingeschlossen werden, wenn sie nicht im Browser angezeigt werden sollen.
Die Elemente <tt>i2p.release</tt> und <tt>version</tt> sind Pflicht. Alle anderen sind optional und werden derzeit nicht verwendet.
</p><p>
Der Nachrichtenquelle wird nur insoweit vertraut, als sie angibt, ob eine neue Version verf&uuml;gbar ist.
Die Aktualisierungs-URL, die Pr&uuml;fsumme und alle anderen Informationen werden daraus nicht bezogen.
</p>
<h3>Format der Aktualisierungsdatei</h3>
<p>
Die digital unterschriebene Aktualisierungsdatei ist eine Zip-Datei mit einem vorangestellten, 56 Byte langen Vorspann. Als Dateiname ist <tt>i2pupdate.sud</tt> &uuml;blich.
Der Vorspann enth&auml;lt:
<ul>
<li>
Eine 40 Byte lange <a href="common_structures_spec.html#type_signature">DSA-Signatur</a> und
</li><li>
Eine 16 Byte lange UTF8-Zeichenkette, die die I2P-Version angibt und falls n&ouml;tig am Ende mit Nullen aufgef&uuml;llt wird.
</li></ul>
</p><p>
Die Signatur deckt nur die Zip-Datei, nicht den Versionsvorspann ab.
Die Signatur muss auf einen der fest in den Router einprogrammierten <a href="common_structures_spec.html#type_SigningPublicKey">&Ouml;ffentlichen DSA-Schl&uuml;ssel</a> der I2P-Projektverantwortlichen passen.
</p><p>
Beim Versionsvergleich wird [0-9]* als Hauptversion bzw. Unterversionen und '-', '_' und '.' als Trennzeichen interpretiert; alle anderen Zeichen werden ignoriert.
</p>
<h3>Laden und Installation</h3>
<p>
Der Router l&auml;dt die Aktualisierungsdatei mit Hilfe des eingebauten HTTP-Klienten und -Proxys von einer URL in einer konfigurierbaren I2P-URL-Liste.
Es sind mehrere URLs fest einprogrammiert.
Der Router &uuml;berpr&uuml;ft, ob die Version in der Aktualisierungsdatei neuer als die installierte Version ist. Die Signatur wird selbstverst&auml;ndlich auch &uuml;berpr&uuml;ft.
</p><p>
Die Zip-Datei wird im Verzeichnis <tt>$I2P</tt>, d.h. im I2P-Grundverzeichnis installiert.
</p><p>
Neuere Routerversionen unterst&uuml;tzen die Pack200-Komprimierung.
Dateien im Zip-Archiv, die auf .jar.pack oder .war.pack enden, werden selbstt&auml;tig in eine Jar- bzw. War-Datei dekomprimiert.
Aktualisierungsdateien, die Pack200-Dateien enthalten, haben &uuml;blicherweise die Endung ".su2".
Pack200 verkleinert die Aktualisierungsdateien um ca. 60%.
</p>
<h3>Zuk&uuml;nftige Verbesserungen</h3>
<ul><li>
Der Router k&ouml;nnte die neueste Versionsnummer mit einer HEAD-Anfrage ermitteln.
Dadurch w&uuml;rde verhindert, dass statt der neuen die alte Version heruntergeladen und installiert wird, weil der Aktualisierungsserver noch nichts von der neuen Version mitbekommen hat.
</li><li>
Wenn irgendwann ein neues Format f&uuml;r die Aktualisierungsdatei festgelegt wird, sollte die DSA-Signaturschl&uuml;ssell&auml;nge erh&ouml;ht werden und die Signatur die Versionsnummer einschlie&szlig;en.
Eine Versionsnummer f&uuml;r das Dateiformat w&auml;re auch erw&auml;genswert.
</li><li>
Das I2P-Netzwerk wird fr&uuml;her oder sp&auml;ter f&uuml;r Aktualisierungen &uuml;ber HTTP zu gro&szlig; werden.
Mit dem eingebauten Bittorrent-Klient, I2PSnark, kann dann die Aktualisierung verteilt durchgef&uuml;hrt werden.
Mit der Arbeit daran wurde 2009 begonnen; diese ruht aber, bis die Funktionalit&auml;t ben&ouml;tigt wird.
</li><li>
Der Router-Aktualisierungsmechanismus ist Teil der (Web-) Routerkonsole.
Eine Aktualisierung von Routern, die in Kleinger&auml;ten laufen und keine Routerkonsole haben, ist zur Zeit nicht m&ouml;glich (au&szlig;er nat&uuml;rlich von Hand).
</li></ul>
{% endblock %}