今天,我們來學習第11講:智能合約。
對於合約呀,我們大家應該都不陌生。我們生活中經常會接觸各種各樣的合約:租房子的時候簽的租房合同就是一種合約。坐飛機的時候,咱們買的航班延誤險就是一種合約。朋友之間的借條呀,本質上也是一種合約。合約就是規定一個前提條件,一旦這個條件達成了,就按照合約里規定的去辦。
那麼智能合約又是什麼東西呢?它到底智能在哪裡?這節課我們就來聊聊智能合約那些事。
說起智能合約,咱們先來聊聊它產生的歷史。
每當提到區塊鏈,往往都會提及智能合約,彷彿智能合約是伴隨著區塊鏈誕生的一樣。其實並不是這樣的,區塊鏈起始於2008年中本聰的比特幣論文,而智能合約的誕生,可以追溯到上個世紀。
在上世紀七八十年代,大量的研究人員致力於計算機理論的研究,希望能夠讓計算機幫助人類承擔更多的工作,解放人類的生產力。對密碼學的研究也在這個時期蓬勃的發展,這些我們在第二講中已經講過了。
在1994年的時候,計算機科學家尼克薩博(Nick Szabo)在他的論文中第一次提出了智能合約的概念:
一個智能合約是一套以數字形式定義的承諾(promises) ,包括合約參與方可以在上面執行這些承諾的協議。聽起來是不是有點繞?別急,尼克薩博還舉了一個簡單易懂的例子,那就是我們生活中非常常見的自動售貨機。
回憶一下,當你在使用自動售貨機買可樂的時候,投入硬幣後,自動售貨機的系統一旦檢測到你應經付款了,就會馬上把可樂放出來。
這就是一個最簡單的智能合約。簡單的來說,智能合約就是在一個計算機系統上,設置好條件和對應的操作,如果條件被滿足,合約就自動執行。也可以理解為就是傳統合約的一個數字化的版本。你在網上繳納電費房租,在手機上購物,每個月的信用卡還款等等,都是一個個的智能合約。那麼,它和區塊鏈有什麼關係呢?為什麼大家總是把區塊鏈和智能合約聯繫在一起?
在回答這個問題之前,我先來給大家講一個科學發展歷史上非常著名的賭局——地球是平的。
歷史上很多科學家都特別愛賭,比如著名的斯蒂芬霍金,簡直就是個打賭狂人。當然,這個「賭」不是像電影《賭神》里的那種賭博,而是一場場關於科學真理的賭注。
今天故事的兩位主人公都來自19世紀的英國。一位是歷史上非常著名的科學探險家阿爾弗雷德·拉塞爾·華萊士,他和達爾文幾乎在同一時期提出了自然選擇的生物進化理論。另一位是當時的一位科學老頑固——約翰・漢普登。
故事發生在1870年。那個時候,很多人還相信地球是平的,這其中就包括漢普登。而華萊士則堅信地球是圓的。於是漢普登特意擺了一個賭局,向華萊士挑戰,稱自己能證明地球是平的,賭注為500英鎊。華萊士欣然接受挑戰。
那麼怎麼判斷誰對誰錯呢?兩人商量後決定,選取老貝德福德運河一段幾公里長的平直河道做實驗,在一座橋上安置勘測鏡,在距橋一近一遠兩個不同的地方勘察測量同高度的兩個記號到水面的距離。如果不同地方的距離有變化,就代表地球表面是有曲率的,從而可以證明地球是圓的。否則就證明地球是平的。還請了一個獨立的見證人見證實驗結果。
故事的結局我想你們肯定也知道,測量的結果顯示較近的記號比較遠的記號高了一米,從而證明了地球表面是球形的,華萊士在賭局中勝出。可是,漢普登不接受這個結果,耍賴說是由於角度造成的,拒絕支付500英鎊的賭注。後來也就不了了之了。
華萊士和漢普登這場著名的賭局,就是一個典型的傳統合約下的場景。說完這個故事,我就要來數落數落傳統合約的三宗罪了。
罪一:效率低下
傳統的合約,條件的達成和合約的執行往往是彼此完全分開的兩個部分。很多時候合約上預設的條件滿足了,但是相應的規定並沒有得到及時的執行。平時經常坐飛機的朋友可能買過航班延誤險。當飛機起飛延誤超過一定時間(通常是兩小時)時,買了航班延誤險的乘客可以得到一定的補償。聽上去好像很簡單的一個合約,實際執行起來卻非常麻煩。你需要出示一堆證明材料,經過複雜的手續,最後才有可能得到賠償。具體的過程太麻煩了,感興趣的朋友可以自己上網查一查。
這就是傳統合約的第一宗罪,執行效率低下。身處在現在這個科技高度發達的社會,怎麼能忍呢?
罪二:人為干預風險高
上面提到的兩位科學家的賭注里,漢普頓因為不滿實驗結果,拒絕賠付500英鎊的賭注。傳統的合約有很多不可控的地方,比如合約一方反悔,單方面撕毀條約,又比如說買通公證人,使結果變得有利於作惡者。這些都是在一個中心化的系統中無法避免的,中心化系統的背後,一定會存在人為干預的風險。
罪三:安全性不足
前面兩點主要還是針對紙質的那種合約,可是即使是我們日常上網時接觸到的各種「智能合約」,我把他們稱之為傳統的「智能合約」,也有上面提到的這些風險,而且,由於這些合約的代碼都存放在中心化的伺服器上,一旦遭到黑客攻擊,後果不堪設想。
相信你們聽我說我這麼多,心裡會有點擔心了起來。「靠,照你這麼說,傳統的合約就是個垃圾呀。」哈哈,我可不是這個意思哦,以前的合約雖然有很多不足,但還是在人類生產活動中有著非常重要的作用。
不過,得益於區塊鏈技術的發展,合約界的洋槍洋炮出現了——那就是基於區塊鏈的智能合約。
上面提到的這些問題,通過把智能合約和區塊鏈結合起來,就可以得到很好的解決。在這門課程的第五講中,我們提到了區塊鏈的三大特性:去中心化、不可偽造和不可篡改,相信大家對這三點已經理解的比較深刻了。有了這三大特性的加持,智能合約的發展上了一個台階。
首先是杜絕了人為干預的風險,「In math we trust」,不用再去擔心賄選和耍賴。其次,合約一旦在區塊鏈網路上部署成功,就無法被篡改,不用擔心有人偷偷修改了合約的內容。去中心化特性的加持,使得合約全網備份。黑客攻擊?呵呵,用最近挺火的一句話來說,被攻擊是不可能的,這輩子都不可能的。當然,這是建立在區塊鏈網路本身安全性足夠且合約代碼沒有漏洞的情況下。同時,由於合約的內容已經部署在網路上了,只要條件滿足,合約自動被觸發執行。原來繁瑣的那一套流程,全都省下了。這大大減少了以前履行合約時需要的各種人力成本,提高了效率。
這麼說來,智能合約簡直就是救世主呀。其實不然,受限於目前技術的發展水平,區塊鏈智能合約還處於非常早期的階段,問題依舊很多,目前還尚未得到大規模的應用。但是,隨著技術的發展,配套服務的成熟,將來智能合約一定可以大放異彩。
以上就是我們第11講的全部內容。
冷萃財經原創,作者:Awing,轉載請註明出處:https://www.lccjd.top/2019/11/05/%e3%80%8c%e5%8c%ba%e5%9d%97%e9%93%be%e4%bb%8e%e5%85%a5%e9%97%a8%e5%88%b0%e7%b2%be%e9%80%9a%e3%80%8d%ef%bc%9a%e6%99%ba%e8%83%bd%e5%90%88%e7%ba%a6-%e7%ac%ac11%e8%ae%b2/?variant=zh-tw
文章評論