1. 引言
在科技飞速发展的今天,每隔一段时间就会有一个新技术横空出世。在当今,区块链技术成为了主旋律,许多专家学家甚至认为区块链技术的出现就像当年互联网出现一样,将深刻影响着这个世界的发展。现在区块链的发展早已进入2.0时代,2016年工信部发布的《中国区块链技术和应用发展白皮书(2016)》,在该白皮书中提到了关于智能合约的概念,这是区块链2.0时代的一项重要技术,许多企业已经开始对其进行应用,比如说美国两个最大的法律公司Lawyer和Legal Zoom均宣布合作开发该技术。2019年杭州互联网法院将其应用到了司法中,极大提升执行效率。但在社会逐渐普及该项技术的同时,我们也应该对其存在的法律问题进行警惕,比如说合同的变更和违约救济问题。
2. 智能合约的概念及运行方式
2.1. 智能合约概念
“智能合约”最早可以追溯到1994年,是由多产的跨领域法律学者尼克·萨博提出来的,即一个智能合约是一套以数字形式定义的承诺,包括合约参与方可以在上面执行这些承诺的协议。2016年,工信部在《中国区块链技术和应用发展白皮书》上定义智能合约是一部部署在区块链上可自动运行的程序,涵盖范围包括编程语言、编译器、虚拟机等等。例如,现在应用比较广的,区块链游戏道具的交易,《INFINITAR》引入了盲盒机制,玩家可以通过参与游戏内活动、完成任务或购买获得盲盒,盲盒内含多样化的NFT道具及珍稀装备,这些物品在游戏内具备高价值且可自由交易,而智能合约引入则可以确保交易安全。简单来说,智能合约就是以区块链技术为支撑,通过区块链平台当事人双方达成合意,并由平台对相关合意进行自动执行的计算机化交易协议,其优点在于一是去掉了中介,可以完全依托技术让用户自主建立合约;二是透明公平,智能合约的代码会清清楚楚记录在区块链上;三是灵活,用户之间可以自由建立合约。伴随着区块链技术的蓬勃发展,智能合约正在逐渐影响着各行各业,因为智能合约是一种数字形式的合约,其只是按照预定的代码自动运行,不会产生法律上的义务,但由于代码并非永远是完美的,该合约仍然存在着代码漏洞、黑客攻击、合同违法等种种问题影响其可信度,需要法律来对其进行保障。
2.2. 智能合约的运行方式和特点
智能合约的运行可以分为四部:第一步,编写智能合约:智能合约的编写需要使用智能合约编程语言,如Solidity。开发者需要定义合约的条款和条件,并将其编写成智能合约程序。第二步,部署智能合约:智能合约需要被部署到区块链上才能被执行。在部署之前,需要支付一定的费用作为矿工费用。智能合约被部署后,其代码和数据将被永久存储在区块链上。第三步,执行智能合约:智能合约可以被触发执行,例如当满足某个条件时,合约将自动执行。执行过程中,智能合约可以读取和修改区块链上的数据。第四步,验证智能合约:智能合约执行后,其结果会被写入区块链上,并且可以被所有人查看。由于区块链具有去中心化和不可篡改的特点,因此智能合约的执行结果具有高度的可信度。区块链智能合约是技术革新的产物具有去中心化、匿名性、自动执行性、不可更改性的特点。去中心化就是这种交易无须建立在双方彼此互信的基础上,而是建立在对机器的信任中,不需要建立一个统一的管理机构。匿名性是指,在交易的过程中双方不需要审查交易相对人的身份信息,其匿名性的特点若发生纠纷也将会对权利人带来极大的不便。自动执行性是指当代码设定的预定条件符合,无须相关操作便可以对履约进行执行,任何人都无法停止执行,智能通过事后补救来弥补损失。不可更改性则是指一旦代码数据进入到区块链并且经过验证,除非掌握超过51%的节点,否则任何人都难对其内容作任何修改。智能合约的这些特性使得其引发了不大不小的学术探讨,尤其是对其与传统合同之间的差别以及其法律规制。
3. 智能合约的法律属性
3.1. 智能合约的合同属性
从法律保障的角度来看,首先就要探讨其法律属性,在当前智能合约的学术研究中,对其是否是合同具有很大的争议。学界有很多不同的观点。第一是自助行为说,这个学说认为智能合约是一种自助行为,即不需要公权力的强制执行就可以达到执行合约的目的。第二个是辅助手段说,该学说认为智能合约仅仅只是促成合约达成履行的辅助手段,尚不具备传统合同的成立要件,只是一种计算机程序。第三是托管代理说,该学说认为智能合约是由于当事人双方彼此不信任,从而将合同标的给予第三方保管,由第三方进行执行[1]。第四则是完全合同说,该学说认为智能合约是一种电子合同的升级版本[2]。笔者认为,智能合约具有合同属性,但其是一种区别于传统合同的一种合同形式。
从智能合约的构成来说,包含要约和承诺,智能合约是由双方进行协商,明确相关权利义务,确立文本内容后将其转化为合约代码。可以从内容是否具体明确、是否受意思表示约束来看是否是一个正常的要约,由于最终成品是一个代码,代码是否能够准确的表达先前的文本内容在所不议,但从合同的形式上《民法典》规定了书面形式口头形式和其他形式[3]。以电子数据交换、电子邮件等方面能够有形表现所载内容,并可以随时调查取用的数据电文,视为书面形式。电子数据交换等方式一般在传送至接收方后会被转译为正常语言,但是智能合约仍然需要专业人士才能理解合同内容。但不能因为语言的难懂性而否认合同的形式,在法律属性上,其可以推定合同的内容具体。其次,在智能合约发布后会上传到一个区块并扩散至其他节点,受要约人对合约要进行签名验证并进行共识,蕴含着当事人双方的意思表示,并且智能合约具有自动执行的特点,签约以后,受要约人就受自己意思表示的约束。要约达到的时间可以以智能合约发布为准,因为智能合约不属于对话方式,非对话方式,相对人知道进入系统为准,智能合约在平台上发布,所有人均可查看该信息,可以视为相对人已经知道。
3.2. 智能合约与传统合同的区别
从智能合约与传统合同的区别来说,第一,智能合约对于不确定性概念无法准确判定,传统合同经常使用“合理注意义务”“最大努力”等等,带有很多人的主观判定因素,在僵硬刻板的代码的加持下,计算机程序并不能很好的对这些约定作出很好的判断,故而智能合约智能约定一些义务明确简单的数字化约定,并不适合约定有长期风险的合同。第二,传统合同依靠法律责任的威慑进行履约,智能合约依靠代码自动执行进行履约。传统的合同订立之后,若一方违约,另一方可以诉至法院,请求法律执行,而智能合约,当满足一定条件后,就由计算机程序进行自动执行,并不需要再走法律程序。第三,传统合同便于更改合同内容,智能合约更改合约条件困难,由于智能合约的不可更改性,需要同时控制区块链50%以上的节点。第四,传统合同具有真实身份性,但智能合约可以使用假名,具有匿名性。故而智能合约的属性更应该被看作一种新式的合同属性[4]。
4. 法律对于智能合约规定的空白和不足
4.1. 合同难以解除
第一,智能合约难以进行变更,由于智能合约的不可篡改性,合约一旦成立,债权转让和债务转移就不可能实现,在区块链平台上已经发布就已经注定了该合约的双方主体就已确定,无特定情况下不可变更。第二,智能合约难以进行撤销,《民法典》规定了四种撤销可以撤销的情形:重大误解、欺诈、胁迫、显失公平。由上文所知,由于智能合约平台的隐匿性,一方当事人无法对另一方当事人进行行为能力、主观意思等进行判断对方是否有欺诈等情况的出现,而进行及时止损。即使发生相关情况,也只能事后补救。第三,智能合约难以进行解除,民法典规定了两种解除方式法定解除和约定解除,一般来说,当事人可以在合同中约定相关解除的方式,并达到一定条件就可以向一方通知解除,或者一方拒绝、延迟履行而进行法定解除,但是由于智能合约的自动执行的特点,其基本不可能在执行前就解除该合约。
4.2. 合同效力难以判断
《民法典》中对于民事行为生效要件规定了三个内容:行为人具有相应的民事能力、真实的意思表示、不违背强制性的法律法规、不违背公序良俗。但是由于智能合约匿名性和代码的复杂性使得这些要见变得更加难以判断。为了解决这个问题,我们需要对智能合约的合同效力进行深入探讨[5]。
4.2.1. 民事行为能力难以判断
智能合约在民事行为能力判断上存在不足,智能合约的匿名性可能导致当事人难以确定对方的真实身份和信用状况。这种情况可能导致当事人在签订智能合约时,无法准确地评估对方的风险,从而增加了他们面临的潜在风险。比如,若当事人是一个无民事行为能力人或者限制民事行为能力人就可能面临合同无效或者被撤销的风险,而这又只能在合同执行完以后寻求事后救济,无疑会给一方带来时间成本,同时也会给法院增加额外压力。
4.2.2. 意思表示的真实性难以判断
由于智能合约与传统合同之间的差别,传统合同能够直接用文字进行相关表述,而智能条约则是通过代码对具体内容进行表示。在具体实际中,人们对于合同的约定总不是那么详尽,可能会依据实际情况所作变更,比如说某些商品会在一段时间内价格飙升,或者出现疫情这种特殊情况导致情势变更等等,所以在合同约定中,人们常常会使用一些带有主观因素的表述,机器代码并不能很好的翻译。其次,智能合约往往存在于普适性商品的市场化交易中,大量存在着未与对方进行协商的格式条款,但其又与电商合同不一致,电商合同往往由于合同条款冗长,大部份买者不愿阅读而勾选同意,但是智能合约并不是这样,智能合约由于机器代码的晦涩性,当事人很难阅读出于己不利的条款,从而陷入意思表示不真实的状态。
4.2.3. 合约内容是否违反强制性规定、公序良俗难以判断
The Dao事件1反映了智能合约仍然还存在着一些代码漏洞,且因为代码的复杂性,缺乏法律的具体规定,相关节点只对合约代码进行形式化的验证,确保合约文本和代码文本的一致性,而无法判断合约内容是否合法。智能合约的匿名性和自动执行性使其成为洗钱等违法活动的工具。由于智能合约的执行是自动的,而且不需要人工干预,因此很难追踪和打击利用智能合约进行洗钱等违法活动的人。此外,由于智能合约的匿名性,使得一些人可以利用其进行非法交易或避税等行为。其次,智能合约的内容也可能违反法律强制性规定和公序良俗。例如,一些智能合约可能涉及赌博、非法交易等行为,这些行为是违反法律规定的。此外,一些智能合约可能涉及侵犯他人隐私、知识产权等问题,这些问题也违反了公序良俗。为了解决这些问题,需要加强智能合约的法律监管和技术防范措施。
通过深入研究智能合约的合同效力问题,我们可以更好地了解智能合约的风险和挑战,并为制定相应的监管政策提供参考。同时,这也有助于推动智能合约技术的发展和应用,为区块链技术的广泛应用提供更加可靠的支持。
4.3. 违约救济困难
由上文可知,有观点认为智能合约是一个完备的合同,逻辑语言的自洽性囊括了所有的可能性,因此不存在违约救济[6]。但是这一观点太过绝对,虽然智能合约拥有着自动执行这一显著优点,但是依靠程序的东西毕竟也会存在错误,首先,智能合约的匿名性可能会带来一些问题。如果合同的另一方存在恶意行为或故意违约,受害方如何确定对方的身份并提起诉讼?在当前的法律框架下,没有明确的被告就无法提起诉讼。这意味着智能合约可能无法提供足够的违约救济,从而降低了其可靠性和可信度。其次,智能合约的自动执行可能会受到程序错误的影响。即使是最先进的程序也可能存在漏洞或错误,这可能会导致执行款项出现延迟或错误,从而引发违约责任。如果没有及时找到并修复这些错误,其可能会对智能合约的信誉造成损害,降低其可靠性和可信度。最后,智能合约可能面临黑客攻击的风险。如果合约的代码存在漏洞或不完善,黑客可能会通过攻击来窃取相关财产或破坏合同执行的流程[7]。在这种情况下,受害方可能需要寻找平台或黑客来进行赔偿,这可能会带来一定的法律和道德问题。因此,虽然智能合约具有许多优点,但它也面临着一些风险和挑战。为了充分利用其优点并避免潜在的风险,需要进一步完善智能合约的设计和实施,并建立完善的法律和监管框架来保护合同当事人的权益。
5. 智能合约的法律规制构想
5.1. 理顺智能合约变更制度以及解除制度的适用
智能合约的解除和变更问题一直存在,因为其自动执行和数据不可更改的特性使得法律上无法简单适用。一些学者提出通过在合约中嵌入编程接口,对可以修改和不可修改的条款进行区分,以实现合同的变更。但这种方式破坏了智能合约的数据不可更改性和去信任机制,对于管理使用权的机构或个人来说,他们实际上已经成为合同中的第三方,这不利于智能合约的推广。另一种方式是建立新的智能合约来覆盖旧合约,虽然增加了缔约成本,但保留了智能合约的技术特性。在智能合约的变更和解除中,当事人可以达成合意来制作新的智能合约来覆盖旧智能合约,或者通过法院的裁判来变更或解除合同。尽管这些方式不能完全保障当事人的利益,但智能合约的应用应该确保其技术优势的发挥,同时合同当事人也应该理解智能合约的技术特性并保持认可,以实现数字产业变革中的重要地位[8]。
5.2. 明确智能合约的法律地位
智能合约是一种基于区块链技术的新型合同类型,它能够自动执行合同条款,从而消除了传统合同中需要人工执行的繁琐流程,提高了合同执行的效率和准确性。因此,智能合约应该得到法律的认可,不能因其与传统合同的差别而否认其法律效力。智能合约的代码属于数据电文的一种,因此也属于合同订立的书面形式。但是,由于相关技术的限制,对于合同的变更、撤销、终止有着更为严苛的标准。在这种情况下,可以对一方当事人进行充分说明,让其充分理解该情况后再选择是否订立智能合约,这样就不适用合同变更的规定。或者在达到相关技术后,开放合同的变更功能,方便用户。在技术上的不足之处,可以通过完善技术和相关规定来解决。这样才能更好地促进智能合约的应用和发展,推动数字经济的发展。
智能合约交易的实名认证
2017年白俄罗斯总统颁布的《关于发展数字经济的法令》中明确要求了在智能合约的匿名性上,必须披露交易主体的身份信息。为了确保区块链网络平台的安全与秩序,建立智能合约用户身份验证机制是必不可少的。在实现这一目标的过程中,可以综合使用实名注册制、电子身份信息认证机制和再确认信息机制。首先,在区块链系统的注册中,要求使用实名注册制,这可以有效防止身份冒用和不当行为。其次,在智能合约板块中,加入更为严格的再确认信息机制,对进入这一板块的用户进行电子身份信息认证,如通过发送手机验证码的方式,以确保用户身份的真实性和准确性。最后,在通过私匙对智能合约进行签名确认时,要嵌入最为严格的电子身份信息认证机制,严格确认交易的对象身份信息。这样多层次的身份验证机制,可以对智能合约主体的匿名性做出调整,同时也可以保障网络平台的安全和秩序。但是,为了保护用户隐私,需要通过技术手段保证用户的信息安全,如添加相应的程序在信息验证通过后即对相应信息进行删除[9]。总之,建立适当的身份验证机制对于区块链的发展和智能合约的应用前景至关重要。
建立智能合约内容合法性审查机制
智能合约的代码化为内容的审查带来了一定的挑战。由于智能合约的代码复杂性,人工审查需要耗费大量的时间和精力。因此,我们可以借鉴现有的网络审查经验,结合智能合约的内容审核需求,形成一套初步的筛查比对机制。在智能合约发布之前,可以先通过智能程序进行初步的内容筛查。这种筛查可以基于预设的规则和算法,对合约内容进行自动比对,识别出可能存在异常或违法的内容。如果智能程序检测到异常内容,那么可以将该合约内容标记为待人工审核的状态,等待专业人员进行进一步的审查[10]。人工审核是智能合约内容审查的关键环节。专业人员可以根据自己的知识和经验,对智能程序标记为待审核的合约内容进行仔细的审查。如果发现合约内容存在违法犯罪的内容,那么可以立即向公安机关报告,并协助公安机关进行立案调查。如果发现合约内容只是简单的问题,例如语法错误或表述不清,那么可以要求当事人进行修改后重新提交审核。除了人工审核外,区块链平台也应该不断优化自己的算法,提升审核效率和准确性。例如,可以利用自然语言处理和机器学习的技术,对合约内容进行自动分析和理解,从而更准确地识别出异常或违法的合约内容。最后,法律也应该对智能合约的相关法律责任进行规定。例如,如果智能合约的内容存在违法犯罪的情况,那么应该明确相应的法律责任和惩罚措施。同时,对于因智能合约错误而导致的损失,也应该明确相应的赔偿责任和赔偿标准。
设立智能合约违约金自动划拨机制
智能合约的违约问题一直是其应用中需要解决的问题。在智能合约的使用中,出现程序错误或者代码漏洞等问题时,由于智能合约的自动执行特性,平台负有最大的责任。因此,建立智能合约违约金自动划拨机制显得尤为重要。这一机制可以通过智能合约平台的设置实现,在出现程序错误、延迟发放或者错发以及黑客攻击等问题导致财产损失时,智能合约平台自动划拨其存储在区块链平台账户的部分加密货币至受损用户账户。此外,智能合约平台还可以通过技术手段来提高其安全性。例如,加强安全漏洞的检测和修复,建立多重身份验证机制和数据加密机制等。平台还可以建立用户反馈机制和投诉机制,及时处理用户的问题和投诉,提高用户的满意度。
总之,建立智能合约违约金自动划拨机制是保障智能合约安全的重要手段之一。通过技术手段和管理手段的综合应用,可以降低智能合约违约的风险,提高智能合约的应用价值和安全性,为数字产业的发展提供有力支持。
6. 结语
本文通过对智能合约概念介绍的引进,阐述了智能合约的法律属性即其本质并未脱离合同的范畴,其仍然具有合同属性,但应是一种不同于传统合同的新式合同。智能合约的发展还未到完全普及的阶段,其今后的走向尚无法完全预测,但是其既有的特点并不适合大规模的进行运用,但可以成为一种特殊的合同形式与其他合同并列。在智能合约的法律问题中,其最大的安全风险仍然在于其匿名化无法寻找当事人及可能被犯罪分子利用成为一种洗钱的工具。笔者通过建议建立平台自动划拨机制,给予平台一定的责任,使得平台能够加强其安全并为相关人员带来救济便利。
总而言之,本文对于智能合约的分析尚不透彻,且随着技术的发展,智能合约所给社会和法律带来的冲击尚未可知,这其中还有许许多多的问题需要我们去研究分析。
NOTES
1The DAO (The Distributed Autonomous Organization)是一个由智能合约组成的线上众筹系统,攻击者利用合约中的一个递归调用漏洞窃取了平台360万枚以太币(价值约6 000万美元),但被窃取的资金依据程序规则是完全有效的。