智能合約這一概念最早出現並不是在區塊鏈中，而是由計算機科學家、加密大師尼克·薩博（Nick Szabo）在 1994 年定義：一系列通過數字化形式的承諾，包括一組協議和在協議中的各方執行。
不過它在當時並沒有引起足夠的重視，直到比特幣點對點傳輸的去中介系統的誕生，再到可編程、不可篡改的區塊鏈技術的萌芽，才使得智能合約這一概念不再是空中樓閣。
2013 年底，Vitalik Buterin 發布以太坊白皮書，並在此後幾年帶領團隊開發了這一去中心化的智能合約應用平臺，它就像蘋果或安卓這樣的底層操作系統，可提供豐富的 API 接口，供開發者們快速製作各類智能合約和區塊鏈應用。
至此，對於智能合約的概念也更加明晰：智能合約即以代碼形式寫入到計算機的一種不可改變的合約協議，當達到參與者共同協定的特定條件時，智能合約即會執行。
簡單來說，智能合約是一段計算機程序。它既沒有我們想象中的那麽智能，也沒有傳統合約具有法律效力。
確定性：同一智能合約執行的結果始終一致，即使它是被分散在全球不同地區的計算機執行。
公開透明：智能合約中所有條款和條件對參與方都是完全可訪問和可查看的。
不可篡改：合約一旦部署完成，所有內容無法修改，任何一方都無法幹預合約執行。
智能合約只有在被交易調用的時候才會執行。一個合約可以調用另一個合約，然後一層層地在合約之間不斷調用，但是這個執行鏈條中的第一個合約的執行，一定是由外部賬戶所創建的交易出發的。智能合約永遠不會自動運行或者在後臺運行。沒有交易觸發執行的情況下，合約永遠處於等待調用狀態。
交易的執行是一個整體，對於全局狀態的修改會在所有執行都確定成功後才會運行。確定成功意味著程序的執行沒有出現任何錯誤，或者遇到執行的終結。如果程序執行因為錯誤而終止，它之前進行的所有操作都會被回滾，就像這個執行從來沒有發生過一樣。
隨著智能合約開始越來越多的被使用，人們也發現就像現實世界中的合同一樣，如果沒有認真審核校驗，其中就有可能出現漏洞引發資產安全問題。
以太坊歷史上最著名的 TheDAO 事件，TheDAO 是去中心化自治基金項目，曾在短短一月內眾籌到價值超過 1.5 億美金的以太坊。但僅在一個月後，就因代幣編寫時留下的隱患漏洞，造成大量資金被黑客轉移，而因智能合約不可更改的特性，團隊卻對此無能為力。
時至今日，合約漏洞問題仍時有發生，不過這些黑客事件也使更多的開發者認識到，就像現實世界中的合同一樣，如果協議流程過於復雜，是需要有專業第三方介入審計。
智能合約以開放透明不可篡改的協議代碼代替第三方中介，降低合約參與方信任成本，有豐富的應用前景，雖說目前在安全審計等方面仍存在挑戰，但也應看到這一領域發展還不足十年，智能合約的開發還處於初級階段，我們相信智能合約被更廣泛的市場接納只是時間問題。