A smart contract is a programmable contract that resides in software or on computer protocols. Smart contracts were first hypothesized in the ’90s by the famous cryptographer, Nick Szabo, but have only come to fruition through the development of blockchain technology.
Smart contracts aim to provide security superior to traditional contract law and to reduce other transaction costs associated with contracting.
A smart contract can be made to be partially or fully self-executing, self-enforcing, or both. Smart contracts allow humans to interact with each other, inanimate objects such as IOT devices, and with AI in ways that have not been possible before.