In "conventional", physical legal contracts, parties usually sign them with a handwritten/electronic/digital signature, depending on the form of the contract.

But as legal smart contracts are concerned, how are they signed by its parties? How is the consent shown/instrumented by part B to adhere to part A's smart contract? Are private and public keys used here?

Legally speaking, it's true that it would be recommended to initially give this consent in a previous contract (written in natural language) and just refer to the smart contract as a tool for implementing it... but let's assume this didn't happen and the smart contract is the only legal instrument.

2 Answers 2


This is a rather general question and I can’t cover everything in this answer, so I strongly recommend having a look on the pinned post in the Ethereum subreddit and searching for other questions on StackExchange.

But as legal smart contracts are concerned, how are they signed by its parties?

It depends, on many occasions, the signature is only needed from the transaction sender. It doesn't have to be interactive all the time. Smart contracts aren't really contracts in the canonical sense and they definitely cannot resemble natural language because computer science is binary.

As of a recent Twitter discussion, a better terminology for smart contracts could be "persistent scripts". Or, another way to think of them is "automated escrow": a bunch of code capable of managing funds for humans in trustless fashion.

To deepen this argument, traditional law can encompass a wide array of possible future scenarios which computers simply cannot comprehend. Of course, that has both pros and cons, but that's how the world is currently built and traditional law and smart contracts will probably evolve side by side for a long time.

There are situations when contracts do need signatures from multiple parties. When that happens, Ethereum uses elliptic curve cryptography to validate involved parties in a contract. For instance, a multisignature wallet is a secure way to store cryptocurrency because it requires $m signatures from a total of $n participants in order to move money around.

  • Thanks. I know Smart Contracts is a misleading term and they aren't necessarily a real contract, but for example, in my country, it's possible for them to be a legal instrument if they comply with legal requirements. As the vast majority of contracts here don't require a special form, and can be written anywhere (in this case blockchain) and in any language (e.g Solidity), parties obligations could be written in formal language. That's why I wanted to know if they could sign tor adhere the content of the smart contract by any mean.
    – Niak3
    Nov 18, 2018 at 19:48
  • Sure, that's totally possible, but I think you're rather referring to the idea of Ricardian Contracts. Nov 18, 2018 at 19:59

The term "smart contract" is misleading. It is in no way a legal contract (nor is it really that smart). It is basically a publicly accessible, immutable program which is run on a decentralized, distributed system.

Users who create smart contracts have ways to be able to share the exact code and functionality of their program with others in a provable, trust-less way. Users who use those programs can know with confidence that the program will behave as the code is written, and cannot be modified unless that is specifically allowed via custom functions integrated into the software.

In the world of cryptocurrencies, smart contracts usually involve the users of the software to deposit/send some amount of money to the smart contract, which is then managed by the program's logic like a middleman. For example, two users can play a gambling game on the contract, escrow their bets to the smart contract, and the results will be completely managed by the game, including the payment to the winner. In this case, users are "forced" to comply to the smart contract because there are no ways to undo transactions or change results on the blockchain.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.