So filtern Sie Transaktionen in der PoA/Clique-Kette

(ETH-Noob hier)

Ich denke darüber nach, ein PoA/Clique-basiertes Netzwerk für ein potenzielles dApp-Projekt zu betreiben.

Ist es dem Versiegeler möglich, Filter auf Transaktionen anzuwenden, bevor er einen Block versiegelt?

Das Szenario ist folgendes.

  • Vertrauenswürdige Parteien betreiben Versiegelungen.
  • Benutzer geben Transaktionen gegen Smart Contracts aus.
  • Benutzer sollten nicht in der Lage sein, das Netzwerk mit nutzlosem Zeug zu spammen, das die Blockchain aufbläst.

Einige Lösungen, die mir in den Sinn kommen.

Führen Sie die Kette in einem isolierten Netzwerk aus

Nicht wirklich praktikabel, da ich möchte, dass Benutzer direkt Transaktionen durchführen. Auch mehr (nicht versiegelte) Knoten sollten dem Netzwerk helfen, Transaktionen schneller zu verbreiten.

Stellen Sie einen hohen Gaspreis ein

Nur Konten mit (gefälschter) ETH können Transaktionen ausgeben. Aber ich muss jedes Konto überprüfen und ihnen ETH ausstellen, um Transaktionen durchzuführen. Dies gibt mir keine Möglichkeit, Transaktionen zu validieren.

Sealer schließt nur legitime Transaktionen ein

Bei diesem Ansatz würde der Versiegeler eine benutzerdefinierte Logik ausführen, z. B. wer neue Verträge bereitstellen darf, wer mit bestimmten Verträgen Geschäfte tätigen darf, Größenbeschränkungen usw.

Die Frage: Gibt es eine Möglichkeit, den Geth-Miner so einzurichten, dass er benutzerdefinierte Logik auf Transaktionen anwendet, bevor sie in einen Block aufgenommen werden? Wenn nicht, gibt es Miner von Drittanbietern, die mir dies ermöglichen und Clique unterstützen?

Nur um das klarzustellen, meine Frage betrifft nicht die Sicherheit, es geht einfach darum, Spam in der Kette zu reduzieren.

Antworten (1)

Sie müssten Ihre eigene Version von erstellen geth, in der Sie Ihre benutzerdefinierte Logik in den Clique-Algorithmus einfügen.

AFAIK gethist der einzige Client, der Clique unterstützt.