einfachIOTA

Das einfachIOTA-Projekt wurde ins Leben gerufen, weil es schwer ist vernünftige und vor allem verständliche Informationen rund um IOTA auf Deutsch zu finden. Da alle Team-Mitglieder begeisterte Fans von IOTA sind und uns die Technologie und Möglichkeiten, welche dahinter stecken wirklich fasziniert, haben wir diese Seite erschaffen. Wir wollen aber mehr! Wir wollen Euch nicht nur reine Informationen bieten, sondern auch aktuelle News und unseren Node Pool. Mit diesem kostenlosen Service versuchen wir sicherzustellen, dass immer die Möglichkeit besteht, auf sein Wallet zuzugreifen und entsprechend mit IOTA zu arbeiten.

Falls Ihr uns unterstützen möchtet, könnt Ihr das hier tun.

Wir wünschen allen viel Freude mit einfachIOTA!

 

Glossar

Technische Ausdrücke in IOTA

Allgemeines

Internet of Things (IoT): Das Internet der Dinge

Peer to Peer Network: Ein dezentrales Netzwerk aus verschiedenen Netzwerkknoten (nodes = PCs oder IoT Geräte), die miteinander verbunden sind und Daten austauschen

Proof of Work (PoW): Ein Algorithmus, der DoS und Spamattacken auf das Netzwerk verhindert. Es besteht aus einem schwierigen HashCash basierten kryptographischen Rätsel, welches leicht zu verifizieren ist.

Trinary: Im Gegensatz zu Binär (Basis 2) verwendet ein trinäres System die Basis 3

Trits: Analog zu Bits (Werte 0,1) – Werte können -1, 0 und 1 sein

Trytes: Analog zu Byte – es besteht aus 3 trits und kann damit 27 Werte repräsentieren. In IOTA werden dafür die Buchstaben A-Z (26 Stück) und die 9 verwendet. Insgesamt 27 also.

DAG: Ein gerichteter azyklischer Graph. Ist eine spezielle Datenstruktur, die auf einem Graphen basiert ohne Zyklen. Mehrfachverzweigungen sind möglich

IOTA Begriffe

Tangle: Das Tangle (dt. “Wollknäuel”) ist Mathematisch ausgedrückt ein gerichteter azyklischer Graph. Azyklisch bedeutet, dass es keine geschlossenen „Kreise“ im Graph gibt. Dieser Graph speichert alle Transaktionen im IOTA Netzwerk. Es ist sozusagen eine „Blockchain“ ohne Blöcke und ohne „Kette“ und in dem Sinne tatsächlich keine Blockchain sondern eine Weiterentwicklung. Das Tangle ist das erste verteile Register („distributed ledger“), welches skaliert, keine Gebühren für Transaktionen hat, Datenintegrität und- transmission ermöglicht, sowie quantensicher ist. Im Gegensatz zu den aktuellen „Blockchains“ ist der Konsensus ein intrinsischer Teil des Systems und erschafft damit ein komplett dezentrales Peer-to-Peer Netzwerk.

Tips: Transaktionen, die von keiner anderen Transaktion referenziert werden

Curl: Die Haupthashfunktion, die in IOTA verwendet wird. Es basiert auf der sehr gut erforschten „sponge“-Konstruktion, der Keccak-Erfinder (SHA-3). und ist speziell für IoT entwickelt. Zugleich auch die weltweit erste trinäre Hash-Funktion

Kerl: Da Curl eine sehr neue Hashfunktion ist, verwendet IOTA momentan noch Keccak (SHA-3) für das Signieren. Der Input und Output wird dazu von 243 trits auf 48 Byte konvertiert unter Verwendung des Zweier-Komplements.

Winternitz one-time signature (W-OTS): Eine quantensichere Signatur, die Werttransaktionen (IOTA) von einer Adresse autorisiert. Dabei wird mit dem privaten Schlüssel signiert (private key). Da es eine Einweg-Signatur ist, werden die Bestände an IOTA auf einer Adresse zunehmend gefährdet, falls mehrfach mit dem gleichen Schlüssel signiert wird. Daher darf man bei IOTA eine Adresse von der IOTA gesendet wurde nicht wiederverwenden, da die Signatur schon im Netzwerk bekannt ist.

IOTA token: Gesamtzahl: 2 779 530 283 277 761 IOTAs

IOTA Einheiten: IOTA Basiseinheiten. Pi, Ti, Gi, Mi, Ki, i – mehr hier: http://www.iotasupport.com/images/iotavalues.png

IRI: Die IOTA Referenz-Implementation ist in Java geschrieben und stellt den IOTA Kernknoten (Node) des Netzwerks da. IRI kommuniziert mit dem Netzwerk, übermittelt Transaktionen und stellt dem Benutzer eine API (Programmierschnittstelle) bereit. Diese ist aus Sicherheitsgründen limitiert ermöglicht aber dem Benutzer, sich mit einem entfernten Knoten im IOTA-Netzwerk zu verbinden

IOTA.lib: Die IOTA Bibliothek für Entwickler. Alle IOTA Funktionen, um Transaktionen zu senden, crypto-graphische Funktionen und Kernfunktionen sind darin enthalten. Es gibt sie in verschiedenen Sprachen. Javascript ist die meistbenutzte Version.

Adressen

Seed: Dies ist der Hauptschlüssel. Er besteht aus 81 TRYTES (A-Z,9) was 384 bits entspricht. Er wird benutzt um alle privaten und öffentlichen Schlüssel zu erstellen.

Key Index: Ein Indexwert, der angibt, welchen öffentlichen Schlüssel (public key) vom Seed erzeugt wird. Dazwischen wird noch ein subSeed erstellt subSeed = hash(Seed, Key Index). Daraus wird dann ein öffentlicher Schlüssel (public key) generiert

Security Level: Wenn man eine Adresse generiert, hat man die Option, zwischen 3 Sicherheitsstufen zu wählen:

  1. 81-Trits (gering)
  2. 162-Trits (mittel)
  3. 243-Trits (hoch)

Dieser Sicherheitslevel wirkt sich auch auf die Länge der Transaktionspakete (bundles) aus, die eine ausgehende Werttransaktionen auf mehrere Transaktionen (zusammengefasst als bundle) verteilen.

Public Addresses/ public keys: Die Public Addresses/ public keys (dt. öffentliche Adressen / öffentlicher Schlüssle) werden vom Seed, Security Level und Key Index abgeleitet. Adressen in IOTA bestehen aus 81 Trytes (A-Z,9).

Address Checksum: Eine Prüfsumme, die Adresseingabefehler verhindert. 9 zusätzliche Prüf-TRYTES werden an die 81 TRYTES der Adresse angehängt

MultiSig Address: Eine Adresse, die aus mehrere Signatureschlüsseln erstellt wird. Für solch eine Adresse benötigt man mehrere Parteien, um eine Transaktionen zu signieren und damit zu versenden.

Transaktionen

Transactions: Die kleinste Einheit von IOTA. Sie besteht aus 2673 TRYTES und kann verwendet werden um Daten oder Werte (= IOTA) auf dem Tangle zu versenden (https://docs.iota.org/introduction/iota-token/anatomy-of-a-transaction)

Branch/Trunk: Zwei Transaktionen, die referenziert und validiert wurden von einer Transaktion

Bundles: Transaktionen werden in Bundles zusammengruppiert bei Erstellung eines Transfers. Bundles sind atomare Transfereinheiten, entweder werden alle Transaktionen im Bundle akzeptiert oder gar keine.

Bundle Aufbau: https://iota.readme.io/docs/bundles

Tail Transaction: Die letzte der zum Bundle hinzugefügten Transaktion (aber die mit Index 0, also die Erste), welche die Bundle-Instanz identifiziert, da diese Transaktion durch Durchqueren des Bundles für jeden Trunk einer Transaktion erzeugt und validiert werden kann.

Transfers: Sendet Wert (IOTA) oder Daten an eine Adresse. Sie sind eine höhere Abstraktionsebene für Bundles und Transaktionen

  • Transfer objects: Empfänger eines Transfers, enthält Zieladresse und Werte
  • Tag: Eine kurze Nachricht kann an einen Transfer angehängt werden – bis zu 27 TRYTES (A-Z,9) – (nach Tags kann man im Tangle suchen)
  • Inputs: Adressen, die Wert haben (IOTA) und deren Wert (IOTA) versendet werden kann. Aufbau: (Adresse/Security Level, Key Index)
  • Remainder Address: Adresse, auf die der Rest (falls vorhanden) einer Werttransaktion gesendet wird

Tip Selection: Um eine neue Transaktion zu versenden in IOTA, müssen erst 2 vorangegangene Transaktionen bestätigt werden. Dabei werden die Trytes und Signaturen überprüft und auf in Konflikt stehende Transaktionen untersucht

  • Random Walk (RW): Algorithmus um das Paar zu validierender Transaktionen zu finden – whitepaper
  • Depth: Startpunkt für den RW. Je höher der Wert, desto weiter hinten im Tangle wird der RW starten und desto länger dauert er an. Ein typischer Wert für Wallets ist die Tiefe 3, was bedeutet, dass er 3 Milestones zurück startet

Min Weight Magnitude (MWM): Bezeichnet die Schwierigkeit des PoW. Es bedeutet, dass der Transaktions-Hash zur Lösung des Nonce-Rätsels MWM-fach die Trit-Zahl 0 am Ende aufweisen muss. Beispielsweise hat ein Transaktions-Hash der mit den TRYTES „A9999“ endet, 14-Mal das Trit „0“ am Ende. Eine TRYTE-„9“ entspricht 3 Trits mit dem Wert „0“. Derzeit ist MWM = 14 auf dem Haupttangle (mainnet) und MWM = 9 auf dem Testnet (devnet). Jede Erhöhung des Wertes MWM macht das Rätsel um den Faktor 3 im Mittel schwieriger

Bestätigungen (Confirmations)

Inclusion State: Wird verwendet, um herauszufinden, ob eine Transaktion akzeptiert wird und vom Netzwerk bestätigt wurde.

Milestones: Checkpoint Transaktionen, die im Durchschnitt jede halbe Minute erzeugt werden

Pending: Transaktion wurde vom Netzwerk gesehen, aber noch nicht bestätigt

Confirmed: Transaktion wurde von einem Milestone referenziert, d.h. Inclusion State liefert TRUE(wahr) zurück und latest und gilt somit als bestätigt im Tangle (Transaktion ist vollständig)

Rebroadcast: Wiederholt das Senden der Rohdaten (TRYTES) einer Transaktion. Da die Bundles atomare Transaktionen sind wird es nicht bestätigt, falls eine Transaktion im Bundle fehlt. Falls die Bundles groß sind, könnte Rebroadcast für die schnellere Bestätigung helfen. Wenn das Bundle nicht im Tangle-Explorer auftaucht, könnte Rebroadcast auch helfen

Reattach: Nimmt die Signatur eines Bundles und die Transferinformation und führt unter Verwendung zweier neuer Tips (plus PoW) das Anhängen an den Tangle erneut aus. Falls der Transfer nicht nach einem gewissen Zeitraum (etwa 30 Minuten) bestätigt ist, sollte ein sog. Reattachment helfen können. Nur ein Reattachment kann vom Tangle jemals bestätigt werden, sonst würde es zu einem doppelten Ausgeben der IOTA kommen (engl. double-spend).

Promote: Hier wird eine neue IOTA-Transaktion ohne Wert erstellt, die Deine Transaktion bestätigt und zugleich den letzten Milestone im Tangle. Damit erhöht sich die Wahrscheinlichkeit von weiteren Transaktionen bestätigt zu werden, da eine Referenz zum Milestone immer vertraut werden kann und diese damit auch ein hohes Gewicht bekommt.