1. 程式人生 > >和數傳媒:基於區塊鏈技術的智慧合約是什麼?

和數傳媒:基於區塊鏈技術的智慧合約是什麼?

區塊鏈1.0時代的應用以比特幣為代表,以解決貨幣和支付方式的分散,而區塊鏈2.0時代是整個市場更巨集觀的分散化,使用區塊鏈技術轉換許多不同的資產,而不僅僅是建立比特幣以建立不同資產單位的價值。智慧合約是滿足此類需求的應用。然而,作為新興事物的智慧合約,其法律屬性和應用仍存在許多問題。

一、基於區塊鏈技術的智慧合約

智慧合約不是區塊鏈的概念,而是由跨學科法律學者尼克薩博在20世紀90年代首次提出。在尼克薩博的定義中,智慧合約是“以數字形式指定的一系列承諾,包括履行這些承諾的各方協議。”

在這個定義中,有幾個關鍵詞:一個是承諾,這意味著合同參與者的同意;另一種是數字形式,即合同用計算機可讀程式碼表示;第三種是自動執行,即基於指令式程式設計語言,計算機可以自動執行協議。以自動售貨機的具體應用場景為例,由於機器已經設定,當用戶提供一定的輸入值時,自動售貨機將產品交付給使用者。如果使用計算機程式碼代替自動售貨機,將產生具有滿足上述特徵的自動執行功能的基於數字程式的工具。

在智慧合約推出後的一段時間內,智慧合約未得到開發和應用,主要是因為缺乏可支援可程式設計合同的數字系統和技術。在區塊鏈技術出現之前,它將為智慧合約的應用帶來廣闊的前景。當然,智慧合約不能僅通過區塊鏈來實現,但區塊鏈技術的特徵決定了智慧合約更適合在區塊鏈上實施。這是因為區塊鏈技術不僅可以支援可程式設計合同,還具有分散化,非篡改,流程透明性和可追溯性的優勢,並且自然適合智慧合約。

具體來說,第一個是權力下放,以確保資料由整個網路備份,不受第三方組織的干擾。在集中化的情況下,可以避免某些惡意行為對合同正常執行的干擾;第二是它不能被篡改,資料無法保證。刪除,修改,只能新增,儲存,讀取和執行整個過程透明和可追溯,以確保歷史的可追溯性,並增加邪惡的成本;第三是自動執行,當滿足程式碼中描述的某些條件時,程式碼中定義的特定操作將自動觸發,而不必擔心合同不執行的問題;第四是信託機制,區塊鏈解決了合同的信任問題,也就是說,原始合同的執行取決於法定的強制性認可。提供信任和基於區塊鏈的智慧合約提供了一種完美解決信任問題的機制,無需第三方公共信託的參與或第三方保證的需要。

今天,基於區塊鏈技術的智慧合約可用於支援各種型別的金融交易,包括股票,私募股權,眾籌,債券以及其他型別的金融衍生品,如期貨,期權等。智慧合約可用於建立,確認和轉移。

第二、 智慧合約的法律屬性

智慧合約是合同嗎?我們知道,所謂合同是指當事人之間達成的協議,建立,變更和終止民事權利和義務。合同具有以下法律特徵:一,合同是雙方的法律行為,並以協議為條件;二,合同是平等主體之間的民事法律關係,合同當事人處於平等地位,任何一方都不允許其他人施加限制或脅迫;三、智慧合約是具有相應法律效力的協議。合同不能是非法行為,而只是一種法律行為。如果合同是非法的,將導致合同無效,甚至當事人將受到起訴和制裁。四,合同是從法律角度澄清當事人之間的具體權利和義務合同規定,修改和終止雙方之間的某些特定民事權利和義務,以實現雙方的具體經濟目的。

一種觀點認為,智慧合約不是合法的,無論是否同意以及各方是否明確。原因是:首先,合同意味著雙方同意達成協議,即可取。在智慧合約中,只有一個數字程式(一段程式碼),而不是合同內容。它缺乏合同的一般必要條款,因此很難判斷雙方是否達成共識。第二,在合同成立時,要約人和承諾人必須確定,並且當建立智慧合同時,各方往往不確定。而且,區塊鏈技術最大限度地保護了當事人的隱私,使得智慧合約的當事人不願透露姓名,使合同雙方無法相互瞭解。

事實上,智慧合約仍應被視為法律意義上的合約。智慧合約也是各方意義的含義。合同條款以計算語言而非法律語言記錄。儘管普通人不能識別數字程式碼,但專業人員可以識別它,並且程式碼本身是交易方的輸入。智慧合約由計算機語言預設,計算機可讀程式語言比文字語言更清晰,更穩定,因此智慧合約的語言誤解率非常低。智慧合約的匿名性不會導致各方的不確定性。此外,智慧合約是根據預先設定的條件自動處理資產並由多方識別並在區塊鏈上執行的程式。當觸發預程式設計條件時,智慧合約自動執行相應的合同條款。這種智慧合約的自動執行允許合同履行的自主性,而不需要法院和仲裁機構等中間媒體來監督合同的執行,一旦執行,它將被執行,整個過程,包括髮起人, 將不能夠。介入。可以說,智慧合約類似於“完全合同”。

三,智慧合同法的適用問題

在區塊鏈時代,智慧合約擴大了合同形式,但它們也對我們的合同法提出了挑戰。這些挑戰主要是:

首先,不可篡改,可自動執行和不可撤銷的智慧合約可能導致無法合法干預的合同。法律具有糾正偏差的功能。以欺詐或強制手段締結的合同,危害國家利益;惡意串通,合同締結,損害國家,集體或第三方的利益;法律上隱瞞的非法目的合同;損害公共利益的合同;違反法律根據行政法規強制執行的合同,或者對於不合法的合同,法律可以介入並斷定合同無效或可撤銷。然而,智慧合約是一個不可更改的程式和計算機指令。一旦編寫了智慧合約程式碼,它將立即生效。外界無法實施干預。即使存在導致合同無效或可撤銷的情況,它仍將被執行。而且,需要準確地編寫智慧合約。如果合同寫得不正確,可能會導致合同中可能被利用的漏洞。而且,此漏洞無法糾正。這將對合同法中的有效性制度,可變和可撤銷制度產生更大的影響。

其次,智慧合約的受害者很難減輕他們的權利。區塊鏈分散式分類賬交易是不可撤銷的。一旦發生由於丟失了消費者私鑰而導致的欺詐性交易,就無法修改或回滾實際交易。當消費者選擇智慧合約作為執行合同的方式時,他需要在需要撤銷原始合同時引入新的智慧合約,並且侵權人可以忽略它。而且,智慧合約是匿名的。如果對匿名智慧合約存在法律糾紛,則無法確定爭議的另一方。通過傳統訴訟解決糾紛將非常困難。因此,根據智慧合同的受害者,很難從實際損失中獲得直接救濟,而只能依靠數字世界以外的補償來提供替代補償,而實施起來則比較困難。此外,繼續履行違約責任,補救措施或損害賠償,但它不能在智慧合同中發揮作用,因為違約責任的實現通常需要中立的第三方進行干預以敦促違約者要承擔責任。第三方通常是法院或仲裁機構,而智慧合同的實施不需要中立機構的干預。

第三,智慧合約的安全性仍然存在問題。智慧合約的不可篡改性質要求其指令碼語言準確並且計算機程式中沒有漏洞。然而,簡單的智慧合約可以更好地滿足上述要求,但是具有稍微複雜的術語和更多型別的智慧合約具有更高的漏洞機會。例如,Github上的新手意外刪除了智慧合約的庫函式,導致大約3億美元的以太坊被鎖定並且尚未解凍。在另一個例子中,在The Dao事件中,以太坊基金的分配主要是智慧合約。然而,由於智慧合約程式碼的不精確性,交易基金存在很大的漏洞。為了解決修復智慧合約的問題,最終取得了難以取得的成績。 fork導致以太坊直接撕裂到eth和ETC(舊版本),但最終它仍然無法解決問題,因為會有重放攻擊。新鏈上的交易被廣播到舊鏈,交易仍然成功,造成混亂。因此,完整的程式碼自治具有很大的侷限性,必要時需要手動干預。

第四,缺乏智慧合約的履行形式,只有業績或非業績劃分。合同義務未得到適當履行,並且可以以各種形式表現出來,例如無法履行,延遲履行和不完整的履行。當合同的一方延遲履行義務時,另一方可以提醒其要求履行債務。如果執行延遲的一方在合理提醒後未能履行其義務,或者如果一方明確表示不能履行主要債務或未能完全履行主債務,則另一方可以終止合同。但是,在智慧合約中,首先設定程式碼程式,當滿足預定條件時,自動履行合同,當不滿足預定條件或不滿足預定條件時,合同的自動履行功能為未啟用。因此,智慧合約的表現不具有延遲業績,表現不完整,履行失敗等不能完全履行義務的形式。

第五,智慧合約更難以應對法律政策的變化或調整。法律或政策通常會進行更改或調整,但在智慧合約中,在設定程式碼程式後,其擁有的資訊很難修改,相關條款基本上無法更新。簡化不可能使智慧合約處理修訂後的法律或政策。因此,智慧合約的合法應用還有一些障礙需要克服。法律有必要為智慧合約的新事物建立一個新的系統,並將其納入規範調整的範圍。