分類
區塊鏈

區塊鏈智能合約也是契約 攸關法律效力的程式設計

區塊鏈科技應用興起後,除去中心化、分散式帳本概念外,點對點傳輸、智能合約、金鑰管理等技術亦蔚成風潮。惟其核心之相關技術並非近期才出現,而是中本聰於2008年底整合並提出比特幣概念後,更廣為人知。例如智能合約(Smart Contract,又稱智慧合約)結合以太鏈等應用,運用Solidity或相關程式語言進行開發,現已成為主流。

但智能合約之概念早在1990年代,就已由美國學者尼克‧薩博(Nick Szabo)提出。該學者提倡將大量、同質性高之契約,透過類型化等方式,由程式語言協助執行。然當時技術水準並無法克服相關問題(如無法對數位文件進行驗證或解決雙重花費等問題),後因區塊鏈具不易竄改、可追蹤追溯等特色,才得以實現透過技術協助契約成立或履約。

區塊鏈智能合約開發之可能的法律議題

智能合約當初提出的目標是將相關條件或約定先設定好,並透過程式碼自動執行,類似自動販賣機,而無須透過人工作業。目前在技術研發(或開發)上,智能合約多用以協助條件成就(如契約)或完成狀態確認,如在存證相關功能內,確認交易完成、並協助後續分潤、對帳等。為利研發人員工作之進行,除應用程式功能之實際開發外,為達成規劃目標,亦有相關法律議題可以探討。茲就可能涉及之議題先說明如下:

1.區塊鏈之智能合約在法律專業人士討論時,有分為要約跟要約引誘,對研發人員來說,要怎麼區別,以利功能等開發?

2.現在國際間智能合約的具體應用,如R3案例,多用於協助狀態的確認,這在法律的定位是甚麼?研發人員開發時還要注意那些法律議題?

透過上開議題,可初步窺知,有關智能合約開發及可能涉及之法律議題,如民法之契約成立、電子簽章法、營業秘密、個人資料保護或資訊安全管理等,爰分別概述如後:

區塊鏈智能合約開發之法遵因應與相關建議

有關於區塊鏈智能合約開發之法遵因應以及相關建議,可以分成以下兩大部分來詳細加以說明。

要約跟要約引誘差異與因應

依我國民法規定,契約成立的原因是當事人意思表示一致。如民法第153條第一項,當事人互相表示意思一致者,無論其為明示或默示,契約即為成立。然智能合約設計之邏輯,即是透過預先的設計,讓契約成立且自動化執行(履約)。基此,在民法上即會探討,智能合約設定之條件或約定係屬民法第154條第一項前段,契約之要約人,因「要約」而受拘束;或僅為「要約之引誘」,類似廣告或型錄,仍須相對人為承諾等意思表示,始能成立契約。

在司法實務上,以買賣契約為例,法院在判斷究竟屬要約或要約之引誘,因法律並無明文規定,需要透過瞭解買賣雙方真正的意思定之。故在開發實務對應的法令遵循方面,仍須實際判斷預先設計的條件或約定。不過,如果程式設定之條件,已可直接執行或履約,該智能合約之內容可能會被認定屬於要約。研發人員須注意,此時要約人因要約而受拘束,相關條件或約定成就或達成後,即生一定之效力。反之,如屬要約之引誘,可再透過向相對人確認等,才能決定是否成立契約。

就架構面來看,區塊鏈是運行在分散式網路架構之上,各台電腦中皆擁有一份完整的總帳本資料,以加密方式保存。電腦彼此之間會建立相互信任關係,並且定義每一筆交易記錄只允許寫入,不得複寫、修改等規則。一旦有任何異動,必須取得其他所有電腦的認可,因此被惡意竄改的難度相當高。另一方面是在區塊鏈下的資料可限制分享條件,例如病歷資料可被分享給家庭醫生與保險業務員,以便於讀取查看。

微軟的Azure公有雲平台之上已開始提供BaaS,主要是整合第三方合作夥伴,基於領域知識共同提供不同垂直行業的新興應用。交易行為中所簽訂的合約條款,可轉換成應用模式中的規則,也就是智慧契約(Smart Contract),透過Service Fabric中介軟體平台,介接Azure核心服務,例如Azure SQL Database、Power BI、Azure IoT等,以簡化應用程式打包封裝、部署、管理的繁瑣,便於讓區塊鏈應用模式以微服務(Micro-Service)來呈現。

※本文章屬於TNZE天擇集團所有嚴禁轉載※