Self-executing code deployed on a blockchain that automatically enforces agreement terms when specified conditions are met. Smart contracts enable programmable financial instruments, automated processes, and decentralized applications. Smart contract security is a critical consideration given the irreversible nature of blockchain transactions.