智能合約是什麼?如何運作與實際應用
Karma Ksana
By: Karma Ksana

智能合約是什麼?如何運作與實際應用

智能合約在當今社會的使用越來越廣泛,究竟什麼是智能合約?智能合約的主要作用為何?幫助我們解決了哪些問題?本篇將一一說明。

#1 智能合約是什麼?

1997 年,早在比特幣之前,由具有資訊科學專家、法律學者與密碼學家身分的 Nick Szabo 就提出了「智能合約」的概念,當達成特定條件時,就會觸發程序,強制執行合約內容

Nick Szabo 以自動販賣機為比喻,表示自動販賣機是一種內建某種合約概念的物理硬體裝置。而這裡的合約概念相當簡單,當我們投入 10 塊錢並選擇想買的飲品,該飲品會從自動販賣機出來;相反地,沒有投入這 10 塊錢,該飲品就不會從自動販賣機出來。這個自動販賣機基本上是具有一組能使其運作的程式,並具備對於價值 10 塊錢飲品來說足夠安全的安全機制。

「智能合約」就是對於數位資產有「直接執行權限、儲存在區塊鏈上」的電腦程式。如同上述提及的自動販賣機概念,智能合約在滿足協議條件時將自動執行,所有參與者都可以立即確定結果,而無需任何中間人的參與,也不會有時效的誤差

4 1

#2 智能合約是如何運作呢?智能合約與區塊鏈的關聯?

智能合約是在區塊鏈上運行、以電腦代碼組成的協議。透過區塊鏈分散式帳本的運作概念,將智能合約儲存在公開的資料庫中且無法任意竄改。

智能合約的電腦程式代碼,在程式中的語言遵循著「if/when, then…」語句。「If this happens, then do this…」,意即若寫入智能合約中的協議條件得到滿足時,不需透過第三方單位、組織認證,該合約就會自動被執行。

這些條件代碼及執行的內容都是寫入在以區塊鏈為基礎的網絡中。關於智能合約的運作,我們可以以生活中的例子來說明:
假設 A 想要購買一間房子,會需要準備以下事項:

  • 至房屋物件相關網站、透過房仲找到符合期待的房屋物件。
  • 透過房仲或與屋主直接協商,以促成買賣雙方期待的價格。
  • 搜集各銀行的房屋貸款資訊,選擇條件合適的銀行後,並等待銀行的審核信用、年收入等個人資訊,才能確定實際貸款利率與金額。
  • 透過代書協助房屋過戶等事項。

以上每個過程都需要花費時間與金錢成本,並且過程繁雜,再加上每個程序都會因接觸不同單位而影響所需時間。但如果透過智能合約,由於合約內容已設定了各項條件,因此購屋的整個過程,將無需花費太多時間,當符合協議的條件時,即可完成交易。

智能合約與區塊鏈的關聯

#3 智能合約、傳統合約的 7 項差異

為什麼需要智能合約?相較於傳統合約,智能合約的好處是什麼?可以透過以下 7 點了解更多:

  1. 去中心化:
    傳統合約需要第三方公證,智能合約去中心化不須第三方公證或授權。
    簽訂傳統合約需透過具有公信力的第三方機構,如政府單位、律師等,來確保此合約的認證性;智能合約則是免除了對於第三方的依賴,不須透過第三方認證,便能確保此合約的認證,並且會依照合約內容自動履行。
  2. 時間成本:
    傳統合約需時較長,智能合約省時有效率。
    傳統合約因為需經由第三方單位認證,所需時間較長;智能合約只需幾分鐘時間就能夠執行。
  3. 合約履行:
    傳統合約需耗費人工手動完成,智能合約一旦協議條件滿足即自動執行或完成交易。
    在智能合約中因為「履行條件」是預先嵌入的滿足條件,當合約傳送至區塊鏈網絡,合約的履行條件一旦滿足將會自動執行。也就是說,假設履行條件之一是:必須在約定時間進行匯款,則當約定時間到將會自動完成匯款。傳統合約雖然已透過合約約束雙方,但仍需透過手動執行匯款。
  4. 公開透明度:
    傳統合約無法公開透明,智能合約在區塊鏈中則是 100% 公開透明。
    與智能合約相比,傳統合約不可能達到 100% 透明公開。一般來說,傳統合約只有簽訂合約雙方,以及第三方認證單位可檢視;而智能合約的透明度是 100%,不僅是簽約雙方,任何人在任何時間皆可以檢視審核內容。
  5. 安全性:
    傳統合約任何人都能竄改,智能合約無法竄改。
    傳統合約因為任何人都能竄改,相對地也會涉及安全性的顧慮。不論是認證傳統合約的第三方單位,或是合約簽訂方都有可能隨時修改內容;而智能合約透過公鑰與私鑰加密,以確保合約的安全性。並且,智能合約儲存在區塊鏈上——所有協議都帶有時間戳、分佈在網絡中的許多節點上,這可以防止合約被任意竄改。
  6. 成本費用:
    傳統合約成本高,智能合約不需要擬定或手續費及公證費等相關費用。
    與智能合約相比,傳統合約因為需要有第三方單位的認證,不論時間或金錢皆耗費較高成本;智能合約因為不需要第三方角色授權來驗證其真實性,而節省了手續費及公證費等相關費用。這允許參與合同的各方在特定交易中,節省大量時間、金錢和溝通成本。
  7. 簽署:
    傳統合約使用實際簽名,智能合約簽署使用數位簽章。
    傳統合約主要還是透過直接簽署的實體簽名;而智能合約中,所有交易都是透過私鑰進行數位簽章,並且只能由參與智能合約的各方透過公鑰解碼。
傳統合約

正如上面提到的,與傳統合約相比,智能合約具有明顯優勢,可以解決一些重要問題,例如:避免詐欺。然而,智能合約的「匿名性」,使得智能合約存在一些缺點。智能合約儲存在區塊鏈上,在區塊鏈上進行的各項交易,都是使用假名或代號。
雖然不是完全匿名,但由於參與者無須驗證法律上的身份——因此,如果出現爭議,智能合約案件幾乎不可能訴諸法庭,因為對於締約的各個參與者而言,唯一已知的資訊是「他們的錢包地址」,而不是「他們的法律身份」。雖然透過使用–實名認證技術 KYC(Know Your Customer)要求審查(尚有一些解決方案),但無法保證能避免所有爭議情況。

#4 智能合約 7 大特性與優點

智能合約的 7 大特性與主要優勢包括:

  1. 去中心化:
    智能合約不需要第三方的授權來驗證其真實性,使得參與合約的各方可以節省時間和金錢。
  2. 具有自行履約的自主性:
    智能合約的最大好處是「自動執行」,也就是說,任何第三方都不能對合約中協議的履行事項任意進行更改,包含:履行項目以及履約時間。智能合約會依合約內容,在履約時間自動執行約定項目。因此,智能合約對公司的業務、交易帶來很大幫助,也能解決流程中涉及信任度的相關問題。若將智能合約應用在租賃房屋合約上,假設潛在房客想使用智能合約租賃公寓,雙方可以在智能合約上設立交易條件,並將各自的期待條件資訊發送到智能合約。
    • 房客:以「保證金」作為條件
    • 房東:以「門禁密碼」作為條件:房客支付押金後立即提供公寓的門禁密碼給房客。
    在智能合約交易條件的約定時間,智能合約將會自動履行,分別提供保證金以及門禁密碼給房東和房客。
  3. 具更完備的安全性:
    智能合約的另一個特點是其安全性。由於智能合約儲存在資料無法被竄改的區塊鏈網絡中,因此執行合約的資料無法受到任何人以任意方式更改。智能合約可以保護交易流程中所有資訊的安全性,確保交易如期執行。
  4. 不須真實身分認證:
    智能合約是無須對參與者進行真實身分認證,這意味著:「不需要知道參與者的真實身分,智能合約也能夠進行」。聽起來好像違反常規?一般我們簽署傳統合約,簽約前都會先了解對方的身分,對於合約簽訂是個重要的保障。但因智能合約是在「去中心化的區塊鏈網絡」上執行,區塊鏈網絡本身的安全性,使得智能合約簽署人具匿名性及隱密性。
  5. 能降低交易相關成本:
    智能合約不需仲介也無須給予仲介手續費,因此可以降低交易成本。
  6. 合約執行速度更快:
    與一般傳統合約相比,智能合約的執行速度更快。由於所有條件都已在智能合約中定義,因此只需要達成合約所定義的交易條件,合約即可自動執行。
  7. 能準確無誤地執行:
    最後,智能合約是無錯誤且準確的,只要編碼正確即可精準執行。以傳統報稅來說,有可能會有申報錯誤、漏報所得的情形;但透過智能合約來執行報稅,那麼資料將會正確無誤。
2 1

#5 智能合約能夠如何應用? 8 項智能合約的靈活應用

智能合約的「去中心化、自動履行協議條件」的關鍵特性,引起了許多企業的興趣。智能合約有助於解決商業夥伴之間的不信任問題、並減少不必要的成本和時間支出,同時提高透明度,但如何運用智能合約中的定義,衍伸出最適合的使用方式才是更重要的。下方列出了 8 項智能合約在各種產業的應用:

  • 數位身分認證:
    最常見的智能合約使用案例之一是「數位身份認證」。如今,我們透過網絡享受著各樣服務,但也在不知不覺中與提供服務的單位共享我們的個人身份資產,也就難以避免身份被盜用的風險。透過數位身分認證,能避免個人身份被盜用、竄改。在交易對象不知道真實身份的情形下,也能夠執行交易。
  • 跨境支付:
    透過智能合約,能執行國際間的貨權轉移和貿易支付。藉由增加供應商、買家和機構的財務效率,智能合約能提高金融資產的流動性。然而,要讓智能合約在貿易金融中發揮作用,特別是在跨境支付和國際貿易中,需要制定可因應相關執行的業界標準。通過適當的整合,智能合約可以解決法律上的複雜問題,提供解決當事人之間糾紛的最佳選擇。
  • 貸款和抵押:
    智能合約可以進行交易方整合,確保整個交易過程正確無誤,並且可追溯,例如:為處理抵押貸款而設立的智能合約,可以追蹤付款並在全部貸款還清時轉移資產管理權。
  • 保險:
    保險業是很容易產生糾紛的行業,因此,保險業也可以說是最好的智能合約應用範例之一以汽車保險為例,當有駕駛糾紛產生,透過智能合約就能設置正確的執行條件、文件和獲得資訊的方法,並能在事故發生後不久自動執行、盡快結算保險。此外,智能合約是基於實際收集到的數據執行,因此可以避免過程中的詐欺行為。
  • 政府:
    智能合約的自動執行特性,能幫助政府的管理運營,像是政府可以運用智能合約記錄土地所有權,並進行財產轉讓。土地所有權記錄和轉讓需要透明及高效率,智能合約提高整個系統的透明度,也能降低審計成本。另外,政府還可以根據需求發展更多的智能合約使用方式,如:舉辦電子選舉、核發人民數位身份以及電子紀錄歸檔。
  • 供應鏈管理:
    使用智能合約可以多方改善供應鏈,並增加庫存追溯的精確度,智能合約還改善了與供應鏈直接相關的業務。然而,為了使其發揮作用,這些機構需要在其供應鏈中增加額外的設備,包括偵測器。
  • 臨床試驗:
    透過智能合約能改善臨床試驗實務上的問題。運用智能合約自動匹配合適的臨床試驗對象,並持續監控試驗情形。智能合約也可以提高跨機構的資訊透明度,亦即提升各機構間的臨床試驗數據共享、授權和驗證。
  • 第三方託管:
    這裡要討論的最後一個應用是「第三方託管」。託管是在合約仍然有效的前提下,將有價物(或服務)暫存在第三方託管的過程。若需取回物權(或服務),付款人需要採取行動,釋出價金;然而,若使用智能合約,只要提供物權(或服務)的一方執行合約並進行身份驗證,就可以讓整個流程自動執行。
3 1

#6 智能合約的風險、缺點

  • 智能合約中的代碼產生錯誤:
    智能合約是自動執行的電腦程式代碼,一旦上傳至區塊鏈網絡就無法修改。通常,若是代碼不夠嚴謹,就可能會受到駭客攻擊而產生錯誤,而這些錯誤將會帶來可觀的損失。之前便曾出現過因智能合約漏洞,導致巨大財務損失的情況。 2018 年的一項研究發現,每 20 個智能合約中就有 1 個面臨攻擊的風險。2016 年的 Genesis DAO 網絡攻擊,駭客發現並利用了智能合約中的漏洞,導致價值數百萬美元的以太幣損失。
  • 無法變更或修正合約:
    傳統合約下如果任何一方想要修改或更新合約,通常可以在各方協議後修正;然而,使用智能合約,如果想修改協議,就需要重新簽署並執行另一個新的智能合約。
  • 處於法律灰色地帶:
    智能合約的另一個問題是,在法律責任上處於灰色地帶。因目前缺乏有關加密貨幣的管理法律,使簽署者法律地位更加脆弱,在遭受駭客攻擊的情況下沒有任何一方需要對錯誤負責。

#7 智能合約未來的發展前景

有鑑於智能合約的各種應用,要讓智能合約真正在區塊鏈環境中更加普遍地發展是可期待的。然而,區塊鏈也必須建立一種更安全、方便的執行模式,當錯誤出現時可以即時修正,而無需部署全新的合約。其次,使用智能合約的公司需要升級他們的合約驗證系統,以確保沒有漏洞。最後,鑑於智能合約技術快速地被採用,針對該領域相關的立法也應該盡速推動以保護使用者免受攻擊。

1 1

有想法嗎?我們很期待與你交流喔~

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

專欄主題

    • 數位轉型 cover
    • 數位轉型 page

    數位轉型知識手冊

    by Procrustes 作者群

    「數位轉型」並不是一個解決方案,而是一種企業經營的思維:「持續性的改善並迭代,最終才能創造高效率、高收益的企業體質!」,Procrustes 收錄各種對數位轉型有幫助的文章,讓你了解數位轉型的執行關鍵。

    • seo-guide-cover
    • seo-guide-page

    SEO 入門指南:全面掌握 SEO 基本知識

    by 賴彤兒(Tony)

    此指南以深入淺出的方式整理所有 SEO 相關知識,並以合理的結構整理,讓你能在短時間內掌握 SEO 龐大的知識體系,是你進入 SEO 領域最好的入門磚。

更多優質文章