Release-Strategie für Chrysalis (IOTA 1.5)

15. Mai'20

Übersetzung des Blogartikel von Autor Jakub Cech, IOTA Foundation.

 

 

Eine der Hauptaufgaben der IOTA-Stiftung besteht darin, einen Entwicklungsfahrplan (Roadmap) zu definieren und umzusetzen, der IOTA zur Produktionsreife und Adoption führt. In einem komplexen und sich ständig verändernden Ökosystem wie der DLT ist eine klar definierte Vision - und eine Strategie, wie man dorthin gelangt - der Schlüssel zum Erfolg.

Das IOTA-Mainnet ist seit 2016 in Betrieb, um eine neue technologische Strategie zu definieren, müssen wir unsere Annahmen an das Feedback und die Anforderungen der Industrie anpassen. Dazu gehört auch die schwierige Entscheidung, bestimmte Projekte, die nicht mehr durchführbar oder relevant sind, einzustellen oder neu zu definieren. Im Mittelpunkt dieser neuen Strategie steht die ausschließliche Konzentration auf Technologien, die innerhalb eines Zeitrahmens von zwei Jahren eingeführt werden sollen.

Die Erforschung von Coordicide brachte viele neue Konzepte hervor, die unglaublich wertvoll sind, wenn sie heute auf dem IOTA-Mainnet umgesetzt werden. Dies veranlasste uns dazu, unsere technische Strategie um Chrysalis (IOTA 1.5) herum zu formalisieren, eine Reihe von Upgrades für das Protokoll, mit denen bereits vor der Coordicide Umsetzung die unternehmerische Einsatzfähigkeit erreicht wird.

Der Vorteil dieses Ansatzes besteht darin, dass ein Großteil der Schwerstarbeit und Migrierens für Token-Inhaber und -Entwickler vor dem Start von Coordicide stattfinden wird, um einen einfacheren Übergang zwischen den Upgrades Chrysalis (IOTA 1.5) und Coordicide (IOTA 2.0) zu erreichen.

Das Ziel der IOTA Foundation in den nächsten zwei Quartalen ist es, das IOTA-Mainnet (und angrenzende Technologien) erfolgreich zu spezifizieren, zu implementieren, zu testen und auf diese neue Version des Protokolls upzugraden.

 

Die geplanten Ergebnisse für Chrysalis sind:

  • Einfacher Übergang zu Coordicide: Mit den bedeutenden Fortschritten von Coordicide und der baldigen Markteinführung von Alphanet wollen wir sicherstellen, dass alle Entwickler und Unternehmen, die auf Chrysalis bauen, mit dem späteren Übergang zu Coordicide keine bahnbrechenden Veränderungen zu erwarten haben.
  • Erhebliche Leistungsverbesserungen: Mit den von Chrysalis eingeführten Änderungen werden wir eine wesentliche Verbesserung der Skalierbarkeit und Zuverlässigkeit des IOTA Mainnet erleben. Das Mainnet wird in der Lage sein, mehrere hundert TPS zu verarbeiten.
  • Verbesserte Entwicklerfreundlichkeit: Die neuen Protokollfunktionen, die neuen Bibliotheken, die neuen Module und die neue Wallet werden IOTA zu einer der besten Plattformen machen, auf der man aufbauen kann, wodurch die heute bestehenden Reibungspunkte für Entwickler beseitigt werden.
  • Beschleunigte Einführung: Chrysalis wird IOTA unternehmenstauglich machen, mit stabilen und zuverlässigen Technologien, die es Start-ups, Unternehmen und Regierungen ermöglichen, Produkte auf der Grundlage von IOTA zu entwickeln und auf den Markt zu bringen.

 

 

Die Etappen zu Chrysalis

 

Das Upgrade von Chrysalis ist ein komplexes Unterfangen. Wir müssen eine Reihe von verschiedenen Produkten koordinieren, um einen reibungslosen Übergang für die derzeitigen Benutzer und Partner von IOTA zu gewährleisten. Abgesehen von der Kern-Node-Software müssen wir auch unsere Wallet-Software, unsere Bibliotheken und die gesamte Infrastruktur aktualisieren.

Eine weitere wichtige Anforderung ist die problemlose Umstellung auf das künftige Coordicide-Netzwerk. Durch sorgfältige Planung der bahnbrechenden Änderungen, die im Laufe der Zeit eingeführt werden, und durch die Unterstützung unserer Entwicklertools werden wir sicherstellen, dass unser wachsendes Ökosystem von Entwicklern, Start-ups und Unternehmen zuverlässig neue innovative Produkte mit IOTA entwickeln und auf den Markt bringen können.

 

 

Der Plan zur Implementierung von Chrysalis ist in zwei Phasen unterteilt.

Die erste Phase besteht aus verbesserter Tip-Auswahl (URTS), Meilenstein-Auswahl, White Flag und Autopeering. Diese werden nach und nach in die Node-Software implementiert und voraussichtlich bis Anfang Juli abgeschlossen sein. Diese Phase erfordert ein Upgrade aller Nodes, einschließlich des Koordinator-Nodes, erfordert aber keinen Snapshot.

Das Ergebnis der ersten Phase von Chrysalis wird sein:

  • Transaktionsbestätigungszeiten von etwa 10 Sekunden
  • Transaktionen müssen nur sehr selten neu angehängt (reattachment) werden
  • Eine beträchtliche TPS-Erhöhung im Mainnet
  • Leistungs- und Zuverlässigkeitsverbesserungen für Nodes
  • Reduzierte Node-Setupzeiten durch Autopeering

 

 

Die zweite Phase besteht aus UTXO, Atomic Transactions, Reusable Addresses (Ed25519) und dem Übergang zu einem binären Transaktionslayout. Diese stellen bedeutende Änderungen des Kernprotokolls und der Art und Weise dar, wie Transaktionen strukturiert werden. Sobald alles getestet, validiert und geprüft worden ist, werden wir einen globalen Snapshot durchführen, um dem gesamten Netzwerk, den Wallet-Nutzern und den Börsen ein Upgrade zu ermöglichen. Wir gehen derzeit davon aus, dass dies etwa Ende Oktober geschehen wird.

Das Ergebnis der zweiten Phase von Chrysalis wird sein:

  • Wiederverwendbare Adressen (Reusable addresses) und Unterstützung für mehr Standard-Kryptographie (EdDSA), wodurch Hardware-Unterstützung für alle wichtigen Architekturen möglich wird.
  • Vereinfachtes Transaktionslayout und eine Verringerung der Transaktionsgröße, wodurch die Leistung weiter gesteigert wird
  • Einführung neuer Features, wie z.B. tokenisierte Vermögenswerte (Digital Asset)
  • Signifikante Verbesserungen der Nutzbarkeit und Zuverlässigkeit von IOTA

 

 

Node-Betreiber und Integrationspartner müssen ihre Nodes aufrüsten, um mit dem Netzwerk synchron zu bleiben und um jegliche Software mit IOTA-Integration zu aktualisieren. Wir werden uns direkt an die Börsen, unsere Partner und die gesamte Community wenden, um sie durch diesen Prozess zu begleiten.

Die Einführung wiederverwendbarer Adressen ist eine wichtige Änderung für Token-Inhaber. Dies wird die Benutzerfreundlichkeit von IOTA erheblich verbessern und die Integration bei neuen Börsen, Wallets und Zahlungssystemen viel einfacher machen. Wir bauen eine neue Wallet, die es den Token-Inhabern ermöglichen wird, vom derzeitigen WOTS-Adressenschema zum neuen EdDSA-Schema überzugehen.

In den nächsten Monaten werden wir diesen Übergang für jeden im IOTA-Ökosystem so nahtlos wie möglich gestalten. Dazu gehören eine Vielzahl von Verbesserungen und Aktualisierungen unserer Bibliotheken und Software sowie Schulungs- und Ausbildungsveranstaltungen für unsere Partner. Wir wollen sicherstellen, dass sich jeder voll und ganz darüber im Klaren ist, wie die Zukunft des IOTA-Protokolls aussehen und funktionieren wird und was er tun muss, um ein Upgrade durchzuführen.

 

 

 

Vom Plan zur Aktion

Auf dem Weg zu Chrysalis, mussten wir Entscheidungen darüber treffen, wie wir diese bevorstehenden Veränderungen am besten umsetzen können, um eine korrekte zeitnahe Umsetzung und einen nahtlosen Übergang von unserem derzeitigen Zustand zu Chrysalis und später zu Coordicide zu gewährleisten.

Es folgt ein Überblick über die verschiedenen Komponenten, an denen wir arbeiten, um diese neue Zukunft für IOTA erfolgreich umzusetzen.

 

 

Spezifikation und Standardisierung

Spezifikationen sind ein wichtiger Teil unseres neuen Entwicklungsprozesses. Alle unsere neuen Softwareprojekte (Node-Software, Wallet, Identität, Access, Streams, etc.) werden vollständige Spezifikationen haben. Die Spezifikationen ermöglichen es externen Parteien, die beabsichtigte Funktionalität eines Projekts zu verfolgen (z.B. für Audits) oder ihre eigenen Implementierungen in verschiedenen Programmiersprachen zu entwickeln. Der Spezifikationsprozess, der auch vom Forschungsteam von Coordicide verfolgt wird, ist der Schlüssel zur Standardisierung von IOTA und seinen verwandten Produkten.

Für alle bevorstehenden Chrysalis-Änderungen haben wir Protokoll-RFCs eingeführt. Viele Chrysalis-Komponenten sind vollständig spezifiziert worden, und wir beabsichtigen, sie alle bis Ende Mai fertigzustellen. Wir begrüßen jeden Beitrag von seitens IOTA und der gesamten Community. Die Liste der RFCs lautet:

 

 

Node-Software

Die IRI ist seit einigen Jahren das Rückgrat des IOTA-Netzwerks. Zwar hat das Projekt im Laufe der Zeit erhebliche Verbesserungen für das IOTA-Netz gebracht, doch litt das Projekt stets unter erheblichen technischen Schwierigkeiten. Dadurch wurden jegliche Änderungen am Protokoll komplex, kostspielig und schwierig zu debuggen.

Während sich die Situation erheblich verbessert hat, ist es nun an der Zeit, zu neueren, flexibleren Lösungen überzugehen. IRI v1.8.6, derzeit als RC verfügbar, wird die letzte größere Version von IRI sein. Wenn Sie IRI verwenden, empfehlen wir Ihnen, Ihre Infrastruktur mit der kommenden Version v0.4.0 auf Hornet zu migrieren. Wir werden ein Tool zur Migration von DBs von IRI veröffentlichen, falls Sie Ihre Daten behalten wollen.

In Zukunft werden die Hornet- und Bee-Nodes die IRI als IOTA-Kernnode-Software ersetzen. Hornet ist ein EDF-unterstützter Community-Node, der in Go geschrieben wurde und sich bereits als stabile und performante Implementierung bewährt hat. Hornet wurde kürzlich erfolgreich von einer externen Firma auditiert. Die kommende Version v0.4.0 enthält viele Verbesserungen wie Objekt-Speicherung, Autopeering und weitere Leistungsverbesserungen. Bee ist ein IOTA-Foundation-Rust-Node und wir schätzen, dass seine erste Alpha-Version Ende Juni fertig sein wird.

Hornet und Bee bilden für uns die perfekte Basis für die Implementierung aller zukünftigen Chrysalis-Änderungen. Das Hornet-Entwicklungsteam hat kürzlich einen weiteren Förderzuschuss erhalten und wird von der Stiftung direkt mit Ingenieuren unterstützt.

 

 

Unterstützung der Bibliothek

Derzeit unterhält die IOTA Foundation 5 verschiedene Bibliotheksimplementierungen (Javascript, Python, Go, Rust, Java). Dies scheint zwar die naheliegendste Art und Weise zu sein, Bibliotheksunterstützung zu bieten, erzeugt jedoch Spannungen in Bezug auf Wartbarkeit, Interoperabilität und Funktionalität.

Für die bedeutenden bevorstehenden Chrysalis-Änderungen validieren wir derzeit - durch interne Tests und mit unseren Partnern - einen Ansatz, der es uns erlauben würde, uns hauptsächlich auf eine Rust-Bibliothek zu konzentrieren. Indem wir unsere Zeit auf eine einzige Kundenbibliothek konzentrieren, können wir eine vollständige Abdeckung, eine bessere Optimierung und eine vollständige Überprüfbarkeit sicherstellen. Wir planen, die Funktionalität für andere wichtige Programmiersprachen durch das Foreign Function Interface (FFI) und die Transpilation der Rust-Bibliothek ohne wesentliche Leistungseinbußen bereitzustellen.

Wir werden die endgültigen Entscheidungen und internen Tests in den kommenden Wochen mit der Community teilen und unsere künftige Bibliotheksunterstützung klar definieren.

 

 

Wallet Unterstützung

Die Trinity-Wallet ist heute die beliebteste Wallet von IOTA. Das Team hat an einer vollständigen Überarbeitung der Wallet-Architektur gearbeitet, sowohl für UX und UI als auch aus der Perspektive der Sicherheit und Funktionalität. Kernstück wird eine neue, in Rust geschriebene Wallet-Bibliothek sein, die es anderen Entwicklern ermöglicht, IOTA-Wallets einfach in ihre Anwendungen zu implementieren. Eine weitere neue Bibliothek aus Rust, Stronghold, wird eine ultra-sichere geheime Handhabung und Speicherung ermöglichen.

 

 

Infrastruktur

Gegenwärtig unterstützt die IOTA-Stiftung zwei öffentliche Netzwerke: Mainnet und Devnet (Devnet ist für PoCs und Anwendungstests). Beide Netzwerke stellen öffentliche Endpunkte für Benutzer und Partner zur Verfügung. Lesen Sie mehr über die Netzwerke und wie Sie sich an unserer Dokumentation beteiligen können.

Wir werden sowohl das Devnet als auch das Mainnet migrieren, um auf Hornet und später sowohl auf Hornet- als auch auf Bee-Knoten zu arbeiten. Dies wird die Wartung beider Netzwerke erleichtern und ihren Durchsatz verbessern.

Comnet, ein Community-Netzwerk von Hornet-Nodes, arbeitet derzeit mit einer stabilen Rate von 40-100 TPS und hat bereits 300 TPS in Stresstests ohne Chrysalis-Komponenten erreicht.

Als Teil der ersten Chrysalis-Phase werden wir auch die Ausgabezeiten von Meilensteinen und die Variabilität auf beiden Netzwerken reduzieren, einschließlich der Fixierung der KDF-Funktion (die zu einer erheblichen Varianz bei der Erzeugung von Meilensteinen führte).

Mit diesen Infrastruktur-Upgrades und dem Übergang zu Chrysalis werden wir weiterhin in engem Kontakt mit allen unseren Austausch- und Integrationspartnern stehen und sie eng unterstützen und beraten.

Sehen Sie sich die Live-Visualisierung des Comnet an: https://graph.comnet.manapotion.io/

 

 

Schlussfolgerung

Chrysalis ist die bisher vielversprechendste Serie von Upgrades für IOTA. Sie ist ein wichtiger Schritt für unsere unternehmensweite Einsatzbereitschaft, mit erhöhtem Transaktionsdurchsatz, Netzwerkstabilität, verbesserter Benutzerfreundlichkeit und ermöglicht neue Funktionen und Anwendungsfälle. Die kommenden Wochen und Monate gehören zu den aufregendsten in der Geschichte von IOTA. Wir befinden uns auf einem klaren Weg zur Einführung von IOTA als grundlegende Technologie für das Internet der Dinge und darüber hinaus.

 

Um unsere Strategie für Chrysalis zusammenzufassen:

  • Wir stellen Altprojekte ein, die teuer in der Wartung sind (IRI).
  • Wir konzentrieren uns auf Hornet und Bee und modernisieren unsere gesamte Infrastruktur. Dies wird den Transaktionsdurchsatz erhöhen und die Stabilität des Netzwerks verbessern.
  • Wir wenden bei allen Änderungen einen Spezifikationsprozess an, damit wir so viel internen und externen Input wie möglich erhalten.
  • Chrysalis wird in zwei Stufen implementiert. Die erste wird voraussichtlich Anfang Juli, die zweite Ende Oktober abgeschlossen sein. Chrysalis erfordert erhebliche Änderungen nicht nur an der Node-Software, sondern auch an den Client-Bibliotheken, der Wallet-Software und jedem Produkt, das auf IOTA aufbaut.
  • Für die Bibliotheken reduzieren wir die Anzahl der Implementierungen der Kernlogik, um die Entwicklungs- und Wartungskosten zu senken, die Überprüfbarkeit zu erhöhen und die zukünftige Flexibilität zu steigern. Gegenwärtig validieren wir die Integration mit mehreren Programmiersprachen durch FFIs und Transpilation.
  • Unsere neue Wallet-Bibliothek - Stronghold - wird der neue Standard für IOTA-Seed-Management und -Sicherheit sein.
  • Alle größeren und bedeutenden Veröffentlichungen werden unseren neuen Spezifikations- und Entwicklungsprozess durchlaufen, wobei gründliche Prüfungen durch externe Firmen durchgeführt werden.