Ich habe einige Zweifel bezüglich der Smart Contracts . Zunächst einmal weiß ich, dass, wenn ich einen Smart Contract bereitstelle, dieser eine Adresse haben wird. Wir können davon ausgehen, dass ich den Smart Contract auf Blockchain eingesetzt habe. Also meine Fragen sind:
Stimmt es, dass ein Smart Contract nur aufgerufen werden kann, wenn ein Benutzer eine Transaktion mit der Smart Contract-Adresse durchführt?
Wenn ein Benutzer A eine Transaktion mit Benutzer B oder C usw. durchführt, kann der Smart Contract dann selbst ausgeführt werden? (Achtung, die Transaktion bezieht sich nicht auf den Smart Contract selbst).
Kann ein Smart Contract wie ein Listener bei allen Blockchain-Transaktionen arbeiten und sich selbst ausführen, wenn alle notwendigen Bedingungen zu seiner Aktivierung vorliegen?
Richtig. Es gibt 2 Arten von Konten in der Blockchain. Das eine ist EOA (External Owned Accounts) und das andere sind Verträge. Verträge können durch Verträge oder durch EOAs erstellt werden, aber alle Transaktionen müssen von EOAs stammen. EOAs können jedoch Verträge aufrufen, die andere Verträge aufrufen.
Ein Smart Contract kann nicht ausgeführt werden, es sei denn, ein Benutzer oder Smart Contract ruft ihn direkt an. Eine Möglichkeit, Ihre ursprüngliche Sache zu tun, wäre, dass der Vertrag ein Proxy-Vertrag ist, der neben dem, was der ursprüngliche Benutzer tun wollte, auch noch etwas anderes tat. Der Benutzer würde dann die Funktion für den Vertrag aufrufen.
Auch hier kann ein Smart Contract nur durch externe Transaktionen oder durch einen anderen Smart Contract ausgelöst werden (der von einer externen Transaktion aufgerufen werden muss). Was Sie in diesem Fall tun könnten, ist ein Skript, das die Blockchain überwacht, um diese Bedingungen zu erfüllen, wonach Ihr Skript eine Transaktion zum Smart Contract erstellen würde.
ChiffreX
natewelch_
ChiffreX
natewelch_
ChiffreX
natewelch_