Jeder Solidity-Code heißt zwangsläufig Smart Contract?

Ist es richtig zu sagen, dass selbst ein Solidity-Code, der keine Finanztransaktionen zum Austausch digitaler Assets oder Token enthält und nur einige Informationen in der Blockchain speichert, ein Smart Contract ist?

In Anbetracht dessen, dass sich der Begriff „Vertrag“ normalerweise auf eine gegenseitige Vereinbarung zwischen zwei oder mehr Parteien bezieht, um die Aufgaben jeder Partei festzulegen. Und wenn dieser Vertrag finanziell ist, wird normalerweise ein Vermögenswert zwischen den Parteien ausgetauscht.

Liege ich falsch?

Antworten (1)

Wie viele andere Wörter hat „Vertrag“ mehrere Bedeutungen.

Ein Vertrag hat sich in der Vergangenheit eher auf etwas wie die Definition in Ihrem letzten Absatz bezogen.

In der Informatik wird es oft verwendet, um über das Versprechen zu sprechen, das ein Stück Code Leuten gibt, die versuchen, es in anderem Code zu verwenden. Siehe zum Beispiel diese Diskussion über „Design by Contract“: https://en.m.wikipedia.org/wiki/Design_by_contract

"Smart" hat die Bedeutung von etwas angenommen, das moderne Technologie enthält, oder in der Praxis etwas, das gehackt werden oder explodieren kann.

Nick Szabo prägte den Begriff „Smart Contract“, um über eine Vereinbarung zwischen Menschen zu sprechen, die von einer Maschine durchgesetzt wird. Er schlug vor, dass ein Verkaufsautomat eine Art "intelligenter Vertrag" sei. http://firstmonday.org/ojs/index.php/fm/article/view/548/469-publisher=First

Ethereum verwendet den Begriff „Vertrag“, um sich auf ein unabhängiges Computerprogramm zu beziehen, das auf seiner Blockchain bereitgestellt wird, mit einem festen Code und einem dedizierten Speicherbereich. Dies ist wohl kein großartiger Begriff, und einige Leute haben vorgeschlagen, es stattdessen so etwas wie "Agent" zu nennen. Die Leute nennen dies manchmal auch einen „ intelligenten Vertrag“.

Ein einziger „Vertrag“ in Ethereum kann verwendet werden, um eine Vielzahl von Vereinbarungen zwischen Menschen durchzusetzen. Ein Multisig-Vertrag kann mehrere Signaturen von Schlüsseln umfassen, die alle dazu bestimmt sind, von einer Person verwendet zu werden. Ein Wettvertrag kann eine große Anzahl verschiedener Wetten abwickeln, von denen jede wohl ein Vertrag von Mensch zu Mensch für sich ist.

Also ja, jedes Bit des Codes, das für Ethereum bereitgestellt wird, ist in gewissem Sinne ein Blockchain-Smart Contract, aber dies fällt nicht unbedingt mit einem Smart Contract in einem anderen Sinne zusammen, und das wiederum kann mit einem Vertrag im traditionelleren Sinne zusammenfallen oder auch nicht , quasi-juristischer Sinn einer Vereinbarung zwischen Menschen.

Eine letzte Wendung: Aufgrund der Funktionsweise der Solidity-Vererbung haben Sie manchmal zwei Codeblöcke mit der Bezeichnung „Vertrag“, aber sie werden am Ende nur einen Vertrag (definiert als ein Stück Code mit eigenem Speicher) in der Blockchain bereitstellen .