The smart contract is not very recent
This concept was brought in 1996 by Nick Szabo, an American computer scientist, lawyer and cryptographer, who wanted to reduce the level of risk between contracting parties.He writes in his article “Formalizing and Securing relations on public networks”:
"Intelligent contracts reduce the costs of mental and computational transactions imposed by constituents, third parties or their tools.The contractual research, negotiation, commitment, performance and decision phases constitute the field of intelligent contracts.This article covers all phases, in particular the performance.Intelligent contracts combine protocols and user interfaces in order to facilitate all stages of the contractual process.This gives new ways to formalize relationships that are much more functional than their inanimate ancestors registered on paper.»»
The main idea, behind the intelligent contract, is to be able to register contracts directly in computer language.They would not, not executed by individuals (trusted third parties), but automatically triggered when conditions would be met.So far nothing new.Currently, payment terminals can be considered intelligent contracts.
The bank card and the ticket distributor are sorts smart contracts
Take the example of the automatic ticket distributor.When you choose the amount to withdraw from the automatic distributor, imagine 50 euros, and insert your credit card, computer algorithms will (automatically) detect your bank account according to the inserted card, then you will receive (if you are allowed) the bottoms by the slot at the bottom of the machine.
You could tell me "but ultimately the smart contract is not new at all!".Yes but in the case of our automatic distributor, the Tier de trust is the bank (a centralized control body) while with the appearance of the blockchain and its set of connected computers, the Tier de trust is transferred fromthe bank with the decentralized network, in other words to all the computers which constitute it.If the intelligent contract is not conceptually speaking, the transactions validator is technologically unprecedented.The next part will be a little technical but necessary to cover all aspects of intelligent contracts.Do not panic, I concocted use cases a little lower.
Immutable contracts supported by the IT code
Intelligent contracts are essentially automated, self-executable agreements, the terms of the contract agreement between the creator of the contract and the recipient are registered in lines of blockchain code, which makes it immutable and irreversible.We can consider the smart contract as the digital version of a standard paper contract.Except that this time, the application and execution of the contract does not require human intervention but indeed that of the blockchain.These contracts were widely popularized by Ethereum, the second most popular blockchain in the world behind Bitcoin.
The registration of a blockchain contract allows a replication of it on many computers that make up the network, which guarantees the facilitation and the transparent and secure execution of the terms of the.In addition, a decentralized network allows you to be resistant to breakdowns and possible hacker attacks, since the blockchain does not include a single unique point.As we are starting to understand in this saga, a centralized entity (a bank, a company, an organization) is more exposed to hacking than a global decentralized network, because in this case it should not be a single databaseBut all the databases of half of the network computers.A colossal amount of energy should be generated and which, for the time being, has the effect of discouraging any computer pirate.With almost 15,000 validators on the Bitcoin network, hacking seems extremely complicated not to say impossible and history proves that Bitcoin has been revealed since its creation, since 2008.
Number of validators nodes on the Bitcoinsource network: Bitnodes.
Let's go back to our smart contracts.Smart contracts are generally used to automate the execution of an agreement so that all parties can be sure that the rules are well applied without the need for human intermediaries.Each party undertakes to comply with the legal obligations agreed in the written agreement once the contract is duly signed.Events that are simple to automate such as triggering a payment or even saving a parcel shipping may be the subject of a smart contract.
The functioning of an intelligent contract
Smart Contractsource operation: Bitpanda
Let us detail this infographic a little.
The functioning of an intelligent contract
To fully understand its operation, we must consider the contract with the following declaration: "If the X event then intervenes the event will intervene".In other words, if the conditions are fulfilled then the agreement between the parties may be honored.Here we will take several examples to understand well:
The Thai eggplant market with smart contract sauce
- Date de livraison : 02/02/2022
- Quantité : 1000
- Prix de vente unitaire : 0,50$
- Facture : 500$
Let us make a simple example, but we could imagine additional conditions such as discounts on the sale price if the delivery is not honored in time or even cancel the order if the quality is not there.let's go on.
In a little more technical terms, the idea of an intelligent contract can be broken down into a few steps.First, an intelligent contract requires an agreement between two or more parties.Once established, the two may agree with the conditions under which the intelligent contract will be considered complete.The decision would be written in the intelligent contract, which is then encrypted and stored in the blockchain network.
Once the contract is completed, the transaction is recorded on the blockchain like any other transaction.Then, all the nodes (computers connected to the network) will update their copy of the blockchain with this transaction, updating the new "state" of the network.
Based on this example, take two other concrete cases of use possible:
Buying a house in the depths of Creuse
Imagine that Tommy wants to buy Etienne's holiday home in Guéret.This agreement is formed on Ethereum blockchain using an intelligent contract.This intelligent contract contains an agreement between the contractors.In the simplest terms, the agreement will look like this: "When Tommy pays Etienne 200 Ether, then Tommy will become the owner of the house".Once this intelligent contract agreement has been implemented, it can no longer be changed, which means that Tommy can feel safe to pay Etienne 200 Ether for the.Without the use of an intelligent contract in this scenario, Tommy and Etienne should pay many fees to third -party companies.Including the bank, a lawyer and a real estate broker.Small conceptual aside, a notion of confidence obviously comes into play, as well between the two individuals and on the network hosting the smart contract itself, but we will come back a little lower.
Insurance of a Paris - Montreal Tommy flight had the country's pain in the Creuse department.He is about to take a Paris plane in Montreal.To do this, he sends $ 5 of cryptocurrencies to the intelligent contract of an insurance company, imagine the Maaf, and provides them with his flight number.Yes because Tommy prefers to take insurance in the event of a delay or cancellation on his flight.The maaf for its part sends $ 95 to the smart contract.So there are $ 100 in the smart contract.
If Tommy's flight is on time, the MAAF receives $ 100 from the smart contract (Tommy will have lost $ 5 to cover the risk of delay/cancellation).But if the plane is late, $ 100 are sent to Tommy automatically from the smart contract.
Smart Contract: everything is not rosy ...
A major challenge in the widespread adoption of intelligent contracts is that the parties will most likely have to rely on a technical trust expert to record the parties' agreement in the code or confirm that the code written by a third party (a programmer)is vaild.A non-programmer would be totally unable to understand the most classic intelligent contract and is therefore much more inclined to call on an expert in order to explain what the "said" contract.
To qualify, to a certain extent, the incapacity of the contracting parties to understand the code of intelligent contracts will not be an obstacle to the conclusion of code agreements.Indeed, for many basic functions, text models can be created and used to indicate which parameters should be entered and how these parameters will be executed.
For example, suppose a simple intelligent contract function which extracts delay costs from the portfolio from a counterpart if a defined payment is not received on a specified date.The text model could encourage the parties to enter the amount of the expected payment, the due date and the amount of delay fees.However, a party may wish to confirm that the underlying code will actually perform the functions specified in the text, and that there are no additional conditions or parameters, in particular when the model declines all responsibility arising from theaccuracy of the underlying code.This examination will require a trusted third party with programming expertise.Finally, the extinction of trusted third parties does not seem so obvious and so easy to set up.
In addition, the parties may also wish written declarations of the programmer indicating that the code works as planned.The net profit is that for personalized arrangements which are not based on an existing model, the parties may need to conclude a written agreement with the intelligent contract programmer, much like the contract that the parties can conclude with a service provider.
Dependencies with "out-chain" data
Many use cases proposed by intelligent contracts assume that the intelligent contract will receive information or resource parameters that are not on the blockchain (“on-chain”) itself, called off-channel resources (“off-chain ”).For example, suppose that an intelligent insurance contract is programmed to transfer value to an insured if the temperature falls below 0 degree at any time.The intelligent contract must receive this temperature data from a agreed source.This poses two problems.
First, intelligent contracts do not have the capacity to extract out -of -chain resources data.Instead, this information must be "pushed" to the intelligent contract.
Second, if the data in question is in constant flow and the code is replicated on several nodes of the network, various nodes can receive different information, even a few seconds apart.In our example, node 1 (validator on the network) can receive information indicating that the temperature is -0.1 degrees, while node 2 can receive information indicating that the temperature is actually 0 degree.Since a consensus is required between the nodes for a transaction to be validated, such fluctuations can ensure that the condition is considered as "unseat" or at least delayed.
Contracting parties will be able to solve this problem using an “oracle”.Oracles are trusted third parties who recover off -chain information, then transmit this information to the blockchain at predetermined times.In the previous example, the Oracle would monitor the daily temperature, would determine that the frost event has occurred, then transmit this information to the intelligent contract.
Example of the Oracle “Chainlink” Source: Chainlink.com
Although the oracles have an elegant solution to access the resources outside the chain, this process adds another part with which the contractors should conclude a contract to carry out an intelligent contract, thus diluting, once again, somewhat the decentralized advantages of intelligent contracts.This also introduces a potential "failure point".For example, an oracle may meet a system flaw and be unable to provide the necessary information, to provide erroneous data or simply to go bankrupt.Intelligent contracts will have to take these events into account.
Smart Contracts: Still challenges to be met
One of the main attributes of intelligent contracts is their ability to execute automatically and tirelessly transactions without human intervention.However, this automation and the fact that intelligent contracts cannot be easily modified or terminated unless the parties include these capacities when creating the intelligent contract, present some of the largest challenges facing generalized adoptionIntelligent contracts.
For example, with traditional textual contracts, a part can easily excuse a violation simply by not applying the available penalties.If a customer is late for one month, the seller may decide in real time that preservation of the long -term commercial relationship is more important than any right of termination or delayed penalty available.However, if this relationship had been reduced to an intelligent contract, a delay in payment will result in automatic extraction of a customer's delayed penalty or the suspension of customer access to software or a deviceconnected to the Internet if this is what the intelligent contract was programmed for.The automated execution provided by intelligent contracts may therefore not correspond to the way in which many companies operate in the real world.
Indeed, since blockchains are immutable, modifying an intelligent contract is much more complicated than modifying a standard software code which does not reside on a blockchain.The result is that the modification of an intelligent contract can result in higher transaction costs than the modification of a contract based on text.
Complex operation = hydride contract?
At present we have a safe bet that for complex contracts, a hybrid contract using text and code should be rather privileged.The text must clearly specify the intelligent contract code with which it is associated, and the parties must have complete visibility on the variables which are transmitted to the intelligent contract, how they are defined and the events which will trigger the execution of the code.
Ultimately we understand that in the case of a smart contract, on a complex operation at least, a trusted third -party world is difficult to imagine.Small transactional transactions can be envisaged, but in the context of complex relationships, the need for trusted third party seems inevitable, especially for the uninitiated to programming.
To this end, and when you think of intelligent contracts, it is important not to just think about how existing concepts and structures can be focused on this new technology.On the contrary, the real revolution of intelligent contracts will come from entirely new paradigms that we have not yet considered.
Note that the confidence that we carry within the framework of a contract is in reality the confidence that one has to a system surrounding and guaranteeing the contract: the law, the representatives of the law and more generally the state.At present, it is on these entities that our confidence is based to guarantee contract safety.A displacement of this confidence to a decentralized protocol populated by minors looks like a distant digital utopia, Voodoo.But for how long ?See you soon for a new episode of the saga which will demystify a new facet of the web 3.0.
Previous episode: Episode 6: the web 3.0, the different blockchains and the Cambodian farmer
Samsung Galaxy S22, Uncharted et pl...
Tesla: you can now enjoy YouTube in...
EM – Butler vs Purdue Basketball Li...
Nantes. A child victim of an acci...