IOTA entwickelt einen Mechanismus, der Validatoren bei fehlerhaften Bestätigungen einen Teil ihrer Belohnung abziehen könnte. In schweren Fällen könnte die gesamte Belohnung für eine Abrechnungsperiode gestrichen werden. Der Entwurf ist noch nicht im Mainnet aktiviert.
Validatoren prüfen und bestätigen Transaktionen im Netzwerk. Der am 26. Oktober veröffentlichte Pull Request #13340, ein Vorschlag für eine Codeänderung, soll bestimmte Fehlbestätigungen erfassen und bei der Vergütung berücksichtigen.
Der IOTA-Foundation-Forscher Luigi Vigneri veröffentlichte den Vorschlag auf GitHub. Am 27. Oktober gaben Alexander Sporn, Head of Engineering der Stiftung, und Protokollforscher Roman Overko im Code-Review ihre Zustimmung.
Welche Fehler IOTA bestrafen will
Im Mittelpunkt stehen sogenannte Attestierungen. Gemeint sind Bestätigungen eines Validators, dass eine Transaktion die Prüfung ihrer Berechtigung bestanden hat. Diese Authentifizierung erfolgt über Move, die bei IOTA eingesetzte Programmiersprache für Smart Contracts.
Tipp der Redaktion: IOTA in Den Haag: Turing Space im Finale des Innovationspreises
Scheitert die Prüfung später bei der Ausführung, soll untersucht werden, ob der Validator die Transaktion schon vorher hätte ablehnen müssen. Dafür kann das System die Transaktion anhand der Daten wiederholen und prüfen.
Ein späterer Fehlschlag allein soll noch keine Strafe auslösen. Allerdings sollen Validatoren bestraft werden, wenn sie eine Transaktion bestätigen, deren Fehler sie bei der Vorabprüfung hätten erkennen müssen. War die Bestätigung nachweislich falsch, erfasst das System die dadurch verschwendete Rechenleistung.
Dazu zählen der bereits abgerechnete Ausführungslauf und eine gegebenenfalls erforderliche erneute Prüfung. Gemessen wird dieser Aufwand in Recheneinheiten, die zur Gas-Abrechnung gehören.
Die Kürzung setzt beim Validator-Score an, einer Bewertung, die bei der Berechnung der Belohnung berücksichtigt werden kann. Abgerechnet wird am letzten Checkpoint einer Epoche.
Die Strafe soll mit dem verursachten Rechenaufwand überproportional steigen. Dafür sieht der Entwurf einen Schwellenwert vor.
Ein Test im Code zeigt die Abstufung: Verursacht ein einzelner Fehler die Hälfte des festgelegten Grenzwerts, beträgt die Kürzung ein Viertel des maximalen Scores. Erreicht er den Grenzwert, entspricht die Kürzung dem gesamten maximalen Score.
Grundlage ist eine quadratische Berechnung. Bei mehreren Fehlern werden die entsprechenden Kürzungen addiert, der vorhandene Score kann dabei nicht unter null fallen.
Was vor einer Einführung noch offen ist
Der Code ist weiterhin in der Entwicklung. Im Review wies Overko auf einen problematischen Schwellenwert hin. Zudem schlägt er weitere Tests vor, die den Abgleich zwischen den lokal gespeicherten Prüfergebnissen und den im Checkpoint bestätigten Ergebnissen kontrollieren.
Außerdem müssen die Scores beim Epochenwechsel weitergegeben und für die Belohnungsberechnung verwendet werden. Eine Simulation mit mehreren Validatoren, die Fehlbestätigungen und die anschließende Kürzung gemeinsam erprobt, ist als weitere Aufgabe vorgesehen.
Lesetipp: IOTA verdreifacht Validator-Hürde: Künftig sind 6 Millionen Token nötig
Bis zu einer Einführung bleiben daher weitere Schritte notwendig. Der Schwellenwert ist laut Entwurf bisher in keiner Protokollversion gesetzt.













