Smart contracts are programs, recorded in a distributed system and can wait from input other processes. Smart contracts can be automatically executed by a computing system, thus functioning like the fulfilment of a contract. Because they are on a distributed ledger they can ‘freeze” the funds required to fulfill the obligation until the condition that they have been programmed to fulfil has been met. Thus they function as a 3rd neutral party, like a contract. They contain value and only unlock that value if certain pre-defined conditions are met.