Wie wichtig sind die "Witnesses" für das Funktionieren des Systems?
Bis jetzt ist ja Byteball dadurch, dass die Witnesses alle vom Entwickler gestellt werden, faktisch zentralisiert (ähnlich wie z.B. Peercoin mit seinen Checkpoints). Wenn die Witnesses später von jedem "gewählt" werden, wird sich dann eine ähnliche "kontrollierte Zentralisierung" einstellen wie bei DPOS-Systemen (Bitshares, Steem, Lisk ...). Liege ich mit den Annahme richtig?
Wie aber ist das "Wahlrecht" bezüglich der Witnesses organisiert? Es gibt ja kein Proof of Stake. Haben alle Nodes die gleiche Macht, Witnesses zu wählen? Was ist dann mit Sybil-Attacks, was mit Social Engineering? Oder hängt das irgendwie mit der Datenspeicherungs-Funktion zusammen?
Ihr ahnt, worauf ich hinauswill: auf die Frage nach Zentralisierung / Sicherheitsmodell. Wenn das schon vorher irgendwo beantwortet wurde, dürft ihr mich gerne weiterverweisen.
Das ist ein komplexes Thema. Soweit ich es verstanden habe, sind die Witnesses (Deutsch: Zeugen) nicht die Stütze des DAG Konsens-Systems! Das bleiben weiterhin die digitalen Signaturen in den DAG-Transaktionen, die diese mit einem oder mehreren Vorgängern nachweisbar verknüpfen. Die Witnesses haben die Aufgabe, regelmäßige Transaktionen durchzuführen, anhand dessen man eine chronologische Reihenfolge der Transaktionen herstellen kann. Dies dient der Verhinderung von double-spends (Doppelverwendung von Zahlungen) und sorgt auch für die deterministische Transaktionsgültigkeit.
Zur Zeit werden alle 12 Witness-Server vom Chefentwickler betrieben. Später sollen dies "bekannte und ehrbare Persönlichkeiten" übernehmen.