作者: 何放 屈素瑞  金杜律师事务所

一、什么是电子合同?

电子合同即《合同法》、《电子签名法》中明确规定的以“数据电文”形式订立的合同。需要注意的是,根据《电子签名法》和《电子合同在线订立流程规范(征求意见稿)》(以下称“意见稿”),涉及人身关系、公用事业服务和法律另有规定情形使用电子签名、数据电文的,不具有法律效力。

二、有哪些电子合同订立和存储的方式,是否可以将区块链技术应用到合同签署中?

1. 电子合同订立和存储的方式

在电子合同中,表示传统合同成立的签字盖章方式可以被对应替代为电子签名[1]。我国法律目前没有明确地将电子签名规定为电子合同的成立要件,商务部在《意见稿》中推荐采用电子签名的方式订立电子合同[2]。但是,签字盖章作为传统合同的成立要件,其功能是确定缔约人身份、确定签名行为系缔约人本人所为、确定缔约人对所签文件内容的认可,而符合《电子签名法》可靠性要求的电子签名所起到的是相同功能。因此建议企业在实践中可采用数据电文加电子签名的形式订立合同。

以数据电文、电子签名形式订立的电子合同,其成立生效要件没有跳出传统合同的要件范畴,其中尤其需要注意的要件包括:

  • 缔约人主体身份真实;
  • 双方经过要约、承诺达成合意;
  • 格式合同须遵从格式合同相关规则

此外,还需要符合《电子签名法》下的相关要求,包括:

  • 对数据电文形式的要求[3]:必须“有形地表现所载内容”,并且“可以随时调取查用”;
  • 对电子签名可靠性的要求[4]:同时符合以下4个条件的电子签名,即(i) 电子签名制作数据用于电子签名时为签名人专有,(ii) 签署时电子签名制作数据仅由电子签名人控制,(iii) 签署后对电子签名的任何改动能够被发现,并且(iv) 签署后对数据电文内容和形式的任何改动能够被发现;或者符合当事人约定的可靠性条件的电子签名。

实践中,满足上述要求的证据原件可以是附加了可靠的电子签名或其他安全程序能够保障电子数据原始完整的电子件,也可以是形成和记录电子证据的原始载体。

从存储主体来看,企业还可以采用第三方云服务,当下云技术已日趋成熟,服务产品种类多样契合细分市场需求,技术受认可度高,能够保证数据安全,适合用于存储数据电文证据。除此之外还有法律上主体独立的关联公司可以作为第三方存储系统,该类公司专门实施电子合同的管理存储工作,其关联性保证了数据安全,其主体独立性能够使其具有中立性。

从证据种类来看,除了保存电子合同原件,电子合同的签订、履行都有一定的前期准备和后期履行行为,其中涉及的往来电子邮件、通信记录、通话录音、银行转账记录、补充协议、发货记录等都可以作为纠纷中的补充证据来完善证据链,增强电子合同的证据效力。例如采用客服电话回访录音来侧面证明合同关系的成立,这种方式举证成本低且比较有效。

2.对区块链技术的应用[5]

除了以上提到的方式外,区块链技术同样可以应用到合同订立和存储过程的同步或事后的记录存储手段,且其使用并不影响纠纷发生时主张合同一方的举证义务的内容和标准。只是由于区块链技术特点,可以更好地确保被输入、存储到区块链上的证据,自输入时起不会被篡改,因此可以提高证据效力。

区块链可以理解为一个分布式的数据库。所谓分布式是指区块链由多个独立的主体参与,每个主体形成一个可以发布或接收数据的节点,所有节点共同形成一个信息传输网络,而数据记录被网络上的所有节点一致地接收,并在区块链上保存。而区块链的数据库功能的实现机制,就是通过“区块”和“链”来达到:数据通过密码学方法产生数据区块进行存储,把区块通过一定规则按照时间顺序链在一起。区块链的实现所依靠的主要技术是数字签名、时间戳技术(这两者的本质是前文所述的哈希算法、非对称算法和公钥基础设施)和共识算法(共识算法的机制有多种可行方案,由于不影响本文的讨论,因此不作赘述)。

简单来说,区块链存证的流程是:发送数据信息的节点将数据用哈希算法生成哈希并通过私钥加密后向全网广播;接收信息的节点对收到的数据信息进行检验,检验通过后,数据记录被纳入一个区块中;全网所有接收节点对该区块执行共识算法;通过共识算法,该区块被正式纳入该网络的区块链中存储,即全网的所有节点均表示接受该区块,将该区块视为全网区块链的最新区块,后续制造的区块将以该区块链为基础继续延长。全网的所有节点始终视最长的区块链为正确的链,并持续以此为基础验证和延长它。

区块链可以存储多种格式和内容的数据:文字、图片、音频、视频格式的沟通记录、合同文件、电子证书等。哈希算法保证了这些数据均可以被转化为固定格式的数据记录,在区块链上安全地固定存储。

区块链之所以难以篡改,是因为每一个新上链的区块都至少包含以下数据记录:当前区块的哈希、前一区块的哈希、当前区块生成的时间戳,还可能包含当前区块的数字签名等信息。这样,每个区块都包含了上一个区块的索引(即哈希),并按时间顺序产生,如果要逆转某个区块上的记录,就需要重新计算该区块之后的所有区块,这在计算难度上几乎不可能达到。于是,随着时间推移,区块的安全性越来越得到保证。

[6]

一个区块的生效需要一定数量的节点的共识确认(根据具体协议,可以是全网所有节点,可以是至少某一数量节点,也可以是所有特定的共识验证参与节点)。因此,如果区块链参与的节点较少、相互存在合作或关联关系,那么在共识达成的前提下,参与节点就可以一起篡改数据。

因此,可以认为区块链的安全性主要依靠节点丰富性和随着时间推移累积的大数量区块来实现。如果这两点无法满足,区块链的安全性无法得到保证,其存储的数据真实性也就无从谈起。此外,区块链只意味着被输入到区块链中的信息被诚实地记录并储存,这些来自区块链系统之外的信息,在输入区块链之前是否可信则不能由区块链系统保证。比如,电子合同双方先完成了合同的沟通、交换、签署、认证环节,随后再利用区块链记录并存储,那么这些先前环节留下的记录是否真实、完整,还需要进一步证明。

一般而言常见的区块链类型有联盟或私有区块链。这两种区块链由于参与节点有限,且节点之间存在一定合作关系,因此有着节点间连接状态好、验证效率高、运行成本低的优点。但是,如前所述,节点越是有限、相互之间越是存在紧密关系,数据被篡改的可能性就越大,所留存则证据的可信度就越低,区块链技术的技术特点无法体现,无法增强证据效力。

目前市面上提供区块链存证服务的第三方电子合同平台所使用的区块链一般是联盟区块链,有的第三方平台纳入法院等主体作为节点,以避免共识篡改的可能性,增加证据的可信度。这一方法是通过纳入可信度高的节点参与信息共识验证,杜绝共识篡改的可能性来保证区块链的可信度。但私有区块链纳入这类节点在实践中有一定难度且成本较高。因此实践中可以考虑成为第三方电子合同平台的用户,接受其建立的区块链存证的相关服务,加入已经包含了司法机构等具有公信力的机构的联盟区块链。

此外,私有区块链也可以通过依附到更具公共性质的区块链的方式增强保障力度:将私有区块链作为一个整体依附到已经存在的更具有公共性质的区块链,成为其节点,定期(理论上最好与区块产生同步)将私有区块链的系统快照数据记录到更公共的区块链系统中。

三、 如果通过第三方电子合同平台签署电子合同,一旦发生纠纷,如何举证?

目前市面上存在大量第三方电子合同平台(“第三方平台”),其提供的核心服务是收集、固定电子证据,而电子证据本身的仍由缔约人产生。实践中,有的第三方平台仅提供保全证据的操作方法而由当事人实施保全行为;有的对其用户/缔约人开放手机端、Web端、PC端、PAD端上传电子证据;有的提供云技术或区块链技术存证服务;有的提供终端用户直接通过平台签署签发电子文件的服务。

对于第三方电子合同的核心业务,存证,其提供的是存储技术服务。对于可能配套提供的身份认证、电子签名认证、时间戳认证等服务,第三方平台发挥的是中介作用,介入缔约双方和相关有资质的认证机构,便利其用户获得相关认证。市面上也存在第三方平台配套提供举证相关的衍生法律服务:或是直接为其用户提供相应的技术解释说明的服务;或是发挥中介作用,将数据端口开放给司法鉴定机构、公证机构,便利其用户获得鉴定、公证报告。

举证责任的分配和证据证明力的要求不因缔约过程是否有第三方平台的介入而改变。举证方仍需要对合同成立有效的要件举证,并负有说明其所举证据的来源、形成、证明力、技术手段的义务。

电子合同涉及的证据形成、传输、收集、存储、提取过程,以及其中涉及的身份认证、时间戳认证等,都牵涉不同的技术特性,举证方负有解释说明的义务。如果相应过程是通过第三方平台完成,则可以申请平台进行技术说明[7]

实践中,第三方平台介入缔约过程(电子签名身份认证、合同订立过程中的电子文件交换、电子合同的签署、时间戳认证)的时间点很可能不同。此外,由于各个第三方平台的运营模式不同,对电子证据固定的时间点可能在证据形成的同时,也可能在证据形成之后。如果缔约人在第三方平台介入之前自行完成了例如电子签名认证等环节,或是第三方平台不提供实时固定证据的服务,而是在缔约人已经形成证据后,再传输给第三方平台进行固定、保存,那么缔约人必须对这些证据的来源和证据如何形成、第三方平台固定前如何存储、如何传输给第三方平台向法院作出说明。

四、  如果通过第三方电子合同平台签署电子合同,合同有效性的证明难度和风险是否显著降低?是否显著低于不通过第三方平台签署的电子合同?

由于第三方平台是独立第三方机构,不受当事人立场影响,具有相当程度的中立性,因此,与当事人自行收集固定的电子证据相比,经由第三方平台收集、固定的证据,在其经手的环节中被篡改的可能性低,有更高的可信度。

与当事人自行收集、固定证据,以及公证处保全证据相比,第三方平台固定证据的效率更高、成本更低。

另外,由第三方平台固定的证据,附加了一层技术保障,将电子证据置于第三方及其技术的保障之下。市面上大多数的第三方平台都采取了Hash算法、非对称算法、密码传输技术、分布式存储、与国家法定时间源绑定、与CA合作获得经认证的数字签名、区块链存证等技术,并遵循相关技术标准。上述技术目前为业界公认具有可靠性,能够保证电子证据自固定之后的完整性,保证所固定的电子证据自取证之日起至提交法庭期间保持完整、不被篡改、未被损毁,且能够说明取证时间。

《最高人民法院关于互联网法院审理案件若干问题的规定》中也明确提到,“当事人提交的电子数据,通过电子签名、可信时间戳、哈希值校验、区块链等证据收集、固定和防篡改的技术手段或者通过电子取证存证平台认证,能够证明其真实性的,互联网法院应当确认。”[8]

值得注意的是,如果第三方电子合同平台的提供方不位于中国大陆法域境内,一旦在中国大陆发生诉讼程序,在境外的电子合同平台所存储固定的证据除了要满足技术保障要求外,还可能要满足民诉法所要求的域外证据所需的公证认证等形式要求。

五、第三方电子合同平台的数据安全性如何保障?

第三方平台的数据安全义务主要在《网络安全法》的范畴内,同时,第三方平台与其用户签订的服务协议中的隐私和数据安全条款等也是实践中约束第三方平台的主要义务来源。

市面上大多数第三方平台提供的是平台型SaaS服务(Software as a Service,软件即服务,即厂商将应用软件统一部署在自己的服务器上,用户根据自己实际需求,通过互联网向厂商定购所需服务,而无需自行维护运营软件)。SaaS模式下的数据安全问题主要是3个问题:(i)SaaS平台的数据丢失不可还原;(ii)SaaS平台的数据被第三方以网络侵入等方式非法获取;(iii)SaaS平台恶意泄露、篡改用户数据。

《网络安全法》规定了网络运行安全方面的义务要求(第二十一、二十二条),包括检测网络安全、留存网络日志、备份加密重要数据等安全维护义务;规定了技术入侵的防范义务(第二十一、二十五条);规定了不得泄露、篡改、毁损信息的义务(第四十二、四十三、四十四条),和防止内部泄密的义务(第三十九条)。

实践中,如果使用第三方平台,企业则有必要确认相关服务协议中是否明确规定了数据信息的收集、传输、存储、披露、删除等环节的数据安全和保密义务。

此外,企业还可以通过加密手段预防数据安全问题。电子合同相关数据由缔约两方产生,第三方平台为了固定、保存证据而进行的同步或事后获取,都涉及到数据的抓取、收集、传输过程。因此企业可以对被抓取、收集、传输的数据进行一定程度的加密,限制第三方平台对数据内容的权限,来预防潜在的数据安全问题。

六、  如果公司自行开发电子合同签署系统/平台,如何规范使用数字签名、认证和时间戳等服务?

1.自建合同订立系统的基本功能要求

根据《电子合同在线订立流程规范(征求意见稿)》[9](“《规范意见稿》”),电子合同订立系统应该具备以下功能:

  • 能生成符合法律格式要求的合同文本;
  • 能支持多种方式,包括文字、视频或音频,进行在线谈判和合同文本修改;
  • 能实现合同信息和谈判信息的实时备份,备份信息可追溯、可复制;
  • 能通过电子签名或其它方式查验合同内容的真实性、完整性;
  • 能接入第三方的电子合同存储服务商的存储服务。

结合以上要求,此处将着重分析如果企业欲自建电子合同订立系统/平台,所需要注意的电子签名、时间戳等技术的应用问题。

2.电子签名技术的应用

电子签名技术的功能类似传统的签字盖章,是用于识别缔约人身份、确认缔约人对签名文件的内容上的认可的技术手段。我国法律采用“技术中立原则”,没有明确规定电子签名具体应当采用的技术类型,只要能够达到“可靠的电子签名”的技术手段就可以是与手签名或盖章具有同等法律效力的电子签名。

实践中,数字签名(digital signature)是电子签名(electronic signature)的最主要实现方式。目前受到普遍认可的实现数字签名的手段一般涉及以下技术和第三方:哈希算法(hash function)、非对称加密技术(asymmetric cryptology)、公钥基础设施(Public Key Infrastructure, PKI)和电子签名认证机构(Certificate Authority, CA)。

哈希算法是指任何能够将任意大小的数据不可逆地转化为固定字节的数字摘要(hash value,或称哈希)并输出,并且哈希与数据原文一一对应的算法。数据电文的签名方/发送方使用哈希算法对原文生成一个哈希(hash value),然后使用电子签名系统的私钥(private key)对该哈希加密,生成数字签名,随后将该原文和数字签名发送给接收方;接收方使用一个与私钥不同但与私钥唯一对应的公钥(public key)解密数字签名,得出哈希;接收方随后对原文使用同样的哈希算法生成一个新的哈希,将2个哈希比对,如果相同,则数据确由发送方产生、且在传输过成功没有被篡改,数据传输成功。(参见图1)

发送方能够进行数字签名的前提,是发送方掌握着一套非对称秘钥(相互关联的私钥和公钥)。根据《电子签名法》等相关法律的规定[10],发送方通常先向具有资质的电子签名认证机构申请电子证书(digital certificate),该证书包含了发送方的身份信息和公钥。每当发送方对某份数据电文签名,该认证机构将确认签名为发送方所谓并向接收方告知用于核验解密的公钥。公钥基础设施就是支持这一套电子认证机制的以电子签名认证机构为中心搭建的包括硬件、软件、人员和规范的体系,用于实现和管理密钥和证书的产生、管理、存储、分发和作废。

为发送方签发电子证书认证的电子签名认证机构必须具有相关资质:必须符合《电子签名法》、《商用密码管理条例》、《计算机信息系统安全保护条例》等法律,至少拥有《商用密码产品生产定点单位证书》、《商用密码产品销售许可证》和《商用密码产品型号证书》。最重要的,只有经过我国工信部许可的机构才能从事第三方电子认证服务。因此,如果企业选择自建电子合同订立系统,所使用的电子签名必须经有工信部资质许可的电子认证机构签发电子证书。

3. 时间戳技术的应用

时间戳(timestamp)是一种电子合同的辅助认证技术,用于加密并固定特定数据电文的生成、传输、删改的时间记录,并用于核验该特定时间点下的数据电文内容的技术手段。

一般来说,时间戳的技术手段涉及到以下技术和第三方机构:哈希算法、非对称加密技术、公钥基础设施和第三方时间戳服务机构(Timestamp Authority, TSA)。

需要对特定数据电文进行时间戳认证的用户使用哈希算法将数据原文生成一个哈希,然后将该哈希发送给第三方时间戳服务机构。自此之后,任何对该数据电文的修改都必须和该第三方机构重新沟通。第三方机构将收到的哈希和其他信息,包括该机构的权威时间下的哈希接收时间,结合后用该机构的私钥加密,产生一个时间戳通证(timestamp token)。随后,第三方机构将时间戳通证发回给用户。如果此后数据电文的接收方需要验证文件是否经过篡改(准确来说,是验证从第三方机构接收该数据后,数据是否被篡改),该接收方需要首先使用哈希算法将其接收的数据电文生成一个新的哈希,然后使用第三方机构的公钥解密时间戳通证、获得其中的哈希,最后将两份哈希比对,如果相同,则说明其所接收的数据电文是自时间戳认证以来未经篡改的。

所以,技术上来看,时间戳和电子签名是相通的,可以理解为第三方时间戳服务机构包含了权威时间的电子签名。

但是,只有由个人计算机产生电子文件的时间取决于该台计算机设备的时钟,而此类时钟可以任意修改,只有根据可信的掌握权威时间的第三方认可的时间才产生可信时间戳,具有法律效力。每个国家的标准时间是具有权威性的,由各国权威授时中心管理。目前在我国广为接受的可信第三方时间戳服务中心为联合信任时间戳服务中心(官方网站:http://www.tsa.cn)。

因此,如果将时间戳技术应用到自建的合同订立系统,则需要与联合信任时间戳服务中心交互,为电子合同盖时间戳。

4.自建电子合同订立系统必须采用第三方存储系统

实践中,企业订立电子合同涉及“电子合同订立”和“电子合同信息存储”两个环节,对于潜在纠纷中的举证问题,后者的重要性不可忽略。值得注意的是,《意见稿》规定了“隔离原则”[11]:“电子合同订立系统设立人是合同缔约的一方当事人时,该设立人不得同时作为第三方存储该电子合同。”因此,如果企业选择自建电子合同订立系统,应当注意纳入第三方完成电子合同的存储。该设计背后的含义应该不是担心由防篡改的电子合同被一方篡改,而是担心缔约一方因道德风险诱发的物理毁损电文数据的载体。

 

[1] 《电子签名法》第十四条。

[2] 《意见稿》第3.1条。

[3] 《电子签名法》第四条。

[4] 《电子签名法》第十三条。

[5] 关于区块链的技术背景,参考长铗、韩锋等著《区块链:从数字货币到信用社会》,中信出版社,2016年7月。

[6] 引自《区块链:从数字货币到信用社会》第二章图2-1。

[7] 《最高人民法院关于互联网法院审理案件若干问题的规定》第十一条。

[8] 《最高人民法院关于互联网法院审理案件若干问题的规定》第十一条。

[9] 商务部于2013年12月1日发布实施标准编号为SB/T 11009-2013的《电子合同在线订立流程规范》,后被修订。2018年7月,商务部就修订后《规范》发布征求意见稿,我们认为目前发布的征求意见稿有较高的实践指导意义。

[10] 《电子签名法》第十六条。

[11] 《意见稿》第4.1条。