Pertinent terminology
The following concepts are worth citing in the context of decentralization. The terminology introduced here is often used in the literature concerning decentralization and its applications.
Smart contracts
A smart contract is a software program that usually runs on a blockchain. Smart contracts do not necessarily need a blockchain to run; however, due to the security benefits that blockchain technology provides, blockchain has become a standard decentralized execution platform for smart contracts.
A smart contract usually contains some business logic and a limited amount of data. The business logic is executed if specific criteria are met. Actors or participants in the blockchain use these smart contracts, or they run autonomously on behalf of the network participants.
More information on smart contracts will be provided in Chapter 10, Smart Contracts.
Autonomous agents
An Autonomous Agent (AA) is a software entity (artificially intelligent or traditionally programmed...