為什麼要用區塊鏈技術實現智能合約?
區塊鏈的特點有兩個:
1.數據不能修改、刪除,只能查看和增加。
2.去中心化。避免了中心化的「人」因素。
關於特點1,傳統技術通過軟體做限制,可以實現。
特點2,信用好的機構做擔保,保證特點1不會被修改。就是保證數據不被修改和刪除(或者可以把數據公開,如果被修改了,大家都能發現)
意思相當於:區塊鏈=傳統技術+機構信用擔保
當然,在一些事情上,很難保證「人」不作惡。不過在大部分的事情上(或者說不大的事情上),「人」的信用還是值得相信的,畢竟日常很多事情都是基於「人」的信用進行的(比如,中小事情)。
因此,在不大的事情上,是不是可以用:傳統技術+機構信用擔保,來實現區塊鏈要做的事情呢?
這個問題是一個老同學大老遠從北京到廣州來看我,在咖啡館坐下的第一個問題,當時我只是簡單的回答了下,不過越討論越深,在這裡也拿出來給大家分享一下:
看這個問題之前,我們先要搞清楚什麼是智能合約。
這個術語是跨領域法律學者尼克·薩博(Nick+Szabo)提出來的,他對智能合約的定義是「一個智能合約是一套以數字形式定義的承諾(promises),包括合約參與方可以在上面執行這些承諾的協議。」換成更加通俗描述就是的「智能合約是一個在計算機系統上,當一定條件被滿足的情況下,可以被自動執行的合約。」
智能合約一定要在區塊鏈技術之上實現嗎?答案是否定的。舉個大家都熟悉的例子,就是信用卡的自動還款服務,我們就可以把它理解成一種智能合約。在具體的時間(信用卡還款日),當還款條件被滿足(儲蓄卡餘額比信用卡還款金額要多的情況下),計算機系統會自動完成這筆交易(用最初設定的儲蓄卡為信用卡還款)。然而這些服務仍是運行在傳統的計算機系統之上,而這些系統並沒有利用區塊鏈技術。
既然傳統計算機技術就可以實現自動交易的合約,那為什麼這些應用沒有廣泛應用呢?那是因為還有一個問題沒有被解決,那就是信任問題。我們知道,在現實世界中,合約是寫在紙上的,簽印之後人們才認為它生效;在計算機世界中,合約是記錄在代碼里的。那數字化的合約,會不會有合約被篡改之類道德風險,抑或是被黑客攻擊的技術風險呢?答案是很高的。回到我們前面講的自動還款的例子,如果是銀行的官網提供這項服務,大家也許能夠願意接受,因為很多人是願意相信銀行的。但是同樣的服務,搬到淘寶上新開的店鋪,或者其他的網站上,從技術來講其實也並不是那麼難,但是會有人選擇這種服務嗎?因為人們不會信任提供服務的人,因為他們太容易做壞事,而且一旦出現糾紛,舉證也是件非常困難的事情,最重要的證據都保存在對方的計算機系統中,他們想改點什麼還不容易么。
那區塊鏈技術又何德何能,能有什麼過人的地方,可以贏得用戶的信任。這就要從區塊鏈技術的幾個基礎的特性講起,我們經常講,區塊鏈技術給我們帶來了一個去中心化的,不可篡改的,高可靠性的系統。首先是不可篡改,這樣就不需要擔心合約的內容會被更改;其次是高可靠行,我們不用擔心系統在條件被滿足時不執行合約;然後就是去中心和給我們帶來的全網備份,完備的記錄完全可以支持支持事後的審計。這樣的系統,我們不再需要去相信和我們簽訂合約的對方,只需要相信區塊鏈系統會把剩下的事完成就可以了。這就是區塊鏈技術帶來的革命性變化——去信任。正是在去信任的環境下,智能合約才大有用武之地。
現在,比特幣網路、以太坊網路以及國內的井通網路等一系列區塊鏈社區都提供了公開的智能合約編程的介面。已經有眾多的創業公司基於這些公開的介面,開始開發智能合約的業務了,如果你也想一顯身手,完全可以去嘗試一下。
--END--


TAG:幣比特資訊 |