Smart-Contracts Decoded

Thibault Langlois-Berthelot
7 min readJul 14, 2019

After the arrival of Blockchain technology, new innovative features are emerging. Among them, the “Smart Contracts”. This term is very often used in the world of the Blockchain and crypto-assets, but what is it really about?

thibaultlangloisberthelot.com

Through this article, we will try to define and explain the stakes, the concrete applications, as well as the limits of these so-called “Smart-Contracts”. Considered as a legal object not identified by legal specialists, it is nowadays subject to growing interest in both the Blockchain and traditional ecosystems.

  • What is Smart-Contract? What does it represent?

From a technical point of view, you can simply see it as a computer program or a traditional algorithm. The latter is written directly “on” a Blockchain, by a specialized developer who knows how to code a certain computer language. It is often hybrid, adapted, or optimized as part of Smart Contracts and to be used on a given Blockchain.

However, it is important to understand the fundamental differences that some Blockchains have between them: most are very basic in terms of computer language. They mainly allow its users to carry out financial transactions. They, therefore, allow only in a rather limited way to schedule crypto-assets transfers under certain predefined conditions. For example, the transaction may have a certain payment delay when transferring bitcoins between two people. Bitcoins can also be “frozen” for a certain time on a bitcoin address, not belonging to either party, pending the delivery of a physical good.

Thus, this is not the case compared to other so-called “programmable” Blockchains — the Ethereum, Neo, NEM, EOS or Lisk ones for example — which allow, as with a new type of computer language (such as Solidity for the Blockchain Ethereum) to create and macerate programs/applications directly on their Blockchain: they are our famous Smarts-Contracts.

To summarize, not all Blockchains can allow Smart Contracts to be executed, only those that have chosen and planned this in advance thanks to a programmable and flexible type of code and algorithm. Where Bitcoins only claim to replace traditional currencies through its Blockchain — which is not very flexible to create advanced Smart-Contracts — the Blockchain Ethereum, Lisk, or Neo will not only allow these same monetary transactions but also make “Smart Contracts” work.

Once this piece of program has been written (generally quite large compared to what a Blockchain can support in terms of data storage and assimilation), Smart Contracts simply self-execute the code and conditions that compose and define them.

Finally, more or less similar to a traditional contract, if an event X occurs (regardless of whether it is good or bad, as long as it was provided for in the intelligent contract), then the intelligent contract will simply execute the conditions that will have been predefined later, as a lawyer could do in some cases of recurring litigation and having a contractual basis.

thibaultlangloisberthelot.com

Note that the Smart Contract is considered as software, i.e. software that inherently has no legal authority. It, therefore, represents only an IT application of a contract that a third party, or a company, has written.

Thus, since the blockchain is governed by a strict IT process, contract violations are limited[1]. Indeed, it executes the contracts once both parties have fulfilled their share defined upstream by each other, or by consensus in the case of Smart Contracts for membership. This could, for example, be the case for a contract proposed by a company so you agree to the proposed clauses, as for a traditional sale, and agree — for example — to the purchase or sale of a good or service in an expected situation.

Consequently, trust is eliminated and replaced by the assurance in good faith of each operator seeking to establish a contract that is in accordance with its respective interests. Indeed, in most cases, you are perfectly autonomous in the execution of an intelligent contract: you enter (by coding) the clauses that suit you, and plan those that you think are necessary for your “contractual” protection. Writing a Smart Contract does not require direct intermediaries, but rather in-depth knowledge of programming (and therefore it's writing by a developer, for the moment).

Once written and registered on the Blockchain, your contract will, therefore, become public: the “Smart Contract parties” will be able to consult the transactions (financial or various data) carried out automatically and almost instantly on the Public Blockchain ledger. Transparency is essential (because the code of this small program is also public, and therefore readable and verifiable by ALL directly on the Blockchain), automation is certain, speed is omnipresent, and above all, the creation and transaction costs are almost zero…

In the case of an intelligent membership contract, the contracting parties will simply, by cryptographic methods — which can nowadays be perceived as still “ over-technical “ — sign and therefore accept certain transactions of this new type of contract, before the agreement of both parties is therefore validated by the network as for a simple classic bitcoin transaction for example. Once registered, the smart-contract is no longer modifiable, it is immutable and registered forever. Blockchain technology precisely guarantees the inviolability of their functioning and therefore in a fine of their terms.

2) The implementation and limitations of such functionality

The examples of Smart Contracts application in our reality are constantly growing.

Some companies have already started working on this innovation, it is indeed an unprecedented marketing weapon: it places the customer in an even more privileged relationship with his brand and gives him the perception of almost perfect customer service. Such a step forward will profoundly change our attitudes towards institutions traditionally positioned as intermediaries in trade (financial, insurance, documents, etc.), such as insurance companies, banks, notaries and lawyers.

The most popular business model in France has been Axa’s with Fizzy, an insurance system that protects against the risk of flight delay. With this service, you are instantly compensated when your flight is late, without taking any action. The insurer will also not need to process the claims. To operate and retrieve data from outside its Blockchain, the Smart Contract is connected to a database predefined by the parties (upstream) as reliable, which in this case would be the control tower of the departure airport for the example of refunds in the event of flight delays.

This famous data external to the Blockchain, called “Oracle”, (which therefore represents a potential threat to the latter, because how can you be sure that this data is reliable?), allows you to enter the information in the Blockchain and thus trigger the execution of the Smart Contract and its conditions. This is a service whose task is to enter, for the time being, either manually[2] or automatically, external and factual data into the corresponding Blockchain.

The smart contract would also revolutionize online betting: Imagine you bet on France’s victory over Croatia in the World Cup final. As soon as the final whistle blows and the Oracle enters the information into the Blockchain, the betting Smart Contract, which indicated this information, infers that you have won your bet and that the individual who joined by betting against you, has lost. You would have received your funds bet in crypto-active, instantly in your “Wallet” (a kind of bank account for crypto-assets).

Many other applications are possible thanks to intelligent contracts, we will simply not list them all here. However, recently a French Startup has made good progress on a new application possible thanks to Smart Contracts.

As mentioned above, once registered in the Blockchain, it is impossible to withdraw from its contractual (Smart) commitment. Perceived as an advantage, it is also a criticism one could address these pieces of computer program, ultimately all-powerful as soon as they are deployed.

Indeed, the Blockchain does not allow this functionality: when the contract is published, its transaction takes place in a block (among other transactions), and since each block is dependent on the previous one if a contracting partner wishes to withdraw (or falsify the contract or its information), this implies for him to modify all the blocks that have occurred since the time the contract transaction was published, which is simply impossible because, on the one hand, it does not have the necessary computing power to make “consensus” and validate this fraudulent block by other computers, and on the other hand because even if the latter manages to go up the chain to try to modify it, the validation of the blocks (after the published transaction of the contract) continues with a majority of the validator computers: it’s a lost cause for the fraudster.

Another problem, and not the least, is how to know if a Smart Contract is legally legal or not? How do you know it’s not being used by a drug dealer, for example? And moreover, in the event of a dispute or prejudice, who is responsible? The developer of the Smart Contract, the defaulting party, the owners of the computers that also indirectly allow the transaction to take place?

thibaultlangloisberthelot.com

At the legal level, all these questions are still pending, it will certainly take a while before legislation that is both flexible so as not to slow down innovation, but firm so as to enforce the law in force, is introduced.

[1] To vitiate a Smart Contract, the information system linked to the Blockchain would have to be diverted, or 51% of the computing power would have to invalidate the creation of the contract.
[2] This raises a whole host of issues about the veracity of the information that is made to appear “made” in the Blockchain.

--

--