CN113378196B - 基于区块链的多方合同签署方法 - Google Patents
基于区块链的多方合同签署方法 Download PDFInfo
- Publication number
- CN113378196B CN113378196B CN202110688588.4A CN202110688588A CN113378196B CN 113378196 B CN113378196 B CN 113378196B CN 202110688588 A CN202110688588 A CN 202110688588A CN 113378196 B CN113378196 B CN 113378196B
- Authority
- CN
- China
- Prior art keywords
- contract
- signing
- signer
- block chain
- certificate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000008569 process Effects 0.000 claims abstract description 30
- 238000013475 authorization Methods 0.000 claims description 27
- 238000012795 verification Methods 0.000 claims description 20
- 239000003999 initiator Substances 0.000 claims description 10
- 230000000977 initiatory effect Effects 0.000 claims description 10
- 239000000284 extract Substances 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 230000006399 behavior Effects 0.000 claims description 6
- 230000009471 action Effects 0.000 claims description 5
- 238000012790 confirmation Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 2
- 238000004891 communication Methods 0.000 abstract description 2
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/18—Legal services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- Tourism & Hospitality (AREA)
- Databases & Information Systems (AREA)
- Technology Law (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种基于区块链的多方合同签署方法。由证书颁发机构(CA)负责给签署者签发证书,并不具体参与合同的签署,减少了对可信第三方的依赖。合同签署方使用CA颁发的证书互相验证身份并给自己的区块链地址授权,授权的区块链地址即可代表所有者在区块链上进行合同的签署,简化了工作流程,减少了计算量和通讯量,也降低了合同签署的经济成本。合同的签署过程是在区块链上完成的,没有第三方的介入,可以保证合同签署过程的透明性、合理性、合法性和公平性。区块链中仅保存合同对应的哈希值以及签署方的区块链地址,并不能直接与现实中的具体合同及签署者身份联系起来,有效保护了用户的隐私。
Description
技术领域
本发明属于信息安全技术领域,更具体地,涉及一种基于区块链的多方合同签署方法。
背景技术
电子信息极易被修改、删除,要和传统的纸质合同具有相同法律效力,在线合同签署需要解决几个问题:①身份认证,即确定签署人的身份信息,目前的解决方案有电子签名,或者借助公安部身份认证系统等。②签署过程的公平性,即确保签署顺序等因素不会对合同签署方带来任何实质性的优势或劣势。通常的解决方案是借助可信第三方来保证。③签署合同的保存,确保合同在签署后不会被单方修改、篡改。解决方案有借助公证处公证、使用时间戳、使用区块链保存等。另外,有些合同可能还涉及隐私保护的问题。出于某些原因,合同的利益关系人希望知晓合同内容的人群仅局限在一个较小范围内。
目前市面上的合同签署平台大体可以分为中心化和去中心化两类。中心化的解决方案,如法大大、上上签等,合同的签署及生效高度依赖于某一组织的背书。其中有一部分解决方案也会借助区块链保存合同信息,如中国专利CN202011444867.8提出的基于区块链的电子合同在线签署及保全方法。去中心化的解决方案,都是依赖于区块链来完成合同的签署。如中国专利CN201810634852.4中提出的基于区块链的多方公平PDF合同签署方法,借助区块链技术,把各方的VES和分布式哈希所涉及的状态量存储到区块链中,并融合进一个群组密钥协商协议GKA,用于向区块链中存储加密的数字签名,进而完成合同签署。但该方案计算成本较高,并且由于PDF文件缘故,合同签署必须按照固定顺序线性完成,过程中出现异常还需要可信第三方的介入。
发明内容
本发明为克服上述现有技术中的缺陷,提供一种基于区块链的多方合同签署方法,有效提高了合约签署的安全性。
为解决上述技术问题,本发明采用的技术方案是:一种基于区块链的多方合同签署方法,包括以下步骤:
S1.合约部署:编写智能合约,其中,智能合约的内容包括:
①Create(contractHash,users,T):其中,contractHash是合同的hash值,users是参与合同签署的签署者的区块链地址,T是合同签署周期;用于实现创建合同签署流程并记录合同信息,包括contractHash、users、T、合同创建时间start、签署状态status以及签署人sign,并将该合同签署流程的状态isRunning标识为true,当isRunning为false时,不再接受合同签署行为;最后返还该合同签署流程唯一标识符contractId;
②Check(contractId):提供一个验证渠道,合同关系人可以凭contractId向合约获取合同hash值,并与本地合同比对,验证该签署流程签署的合同是否一致;
③Accept(contractId):只能由users中记载的区块链地址在isRunning标识为true的情况下调用,并且一旦调用就意味着合同签署签署者已确认合同无误,并在事实上签署这一合同;该过程会返还签署行为是否成功,同一签署者不能重复签署,当合同签署者悉数签署完合同后,合同会转入生效状态,并终止合同签署流程;
④Get(contractId):签署流程创建后,合同关系人可随时查看签署情况,包括contractHash、合同签署人sign、合同签署状态status以及合同签署的流程状态isRunning;
智能合约编写完成后,在区块链上完成部署,得到合约的地址SmartContractAddress,供合同签署者调用获取服务;
S2.身份认证与授权:合同签署者分别向CA申请一份证书,合约签署者选取区块链地址,编辑授权声明,并使用证书进行签名,将证书与声明发送给其他签署者;签署者收到证书和声明后,进行验证,最后从声明中提取签署者的区块链地址汇总到users;
S3.链上签署:签署者在区块链上完成合同签署;
S4.查看合同状态:任何人都可以查看合同签署的情况。
在本发明中,由证书颁发机构(CA)负责给签署者签发证书,用于身份验证和区块链地址授权,并不具体参与合同的签署,在极大程度上减少了对可信第三方的依赖。合同签署方使用CA颁发的证书互相验证身份并给自己的区块链地址授权,授权的区块链地址即可代表所有者在区块链上进行合同的签署,而不需要进行其他的验证工作。这简化了工作流程,减少了计算量和通讯量,由于区块链上的计算需要支付费用,因此也就减少了合同签署的经济成本。合同的签署过程是在区块链上完成的,没有第三方的介入,而区块链技术具有去中心化的特点,可以保证合同签署过程的透明性、合理性、合法性和公平性。而对于合同的数据,区块链中仅保存合同对应的哈希值以及签署方的区块链地址,并不能直接与现实中的具体合同及签署者身份联系起来,有效保护了用户的隐私;此外,区块链上的数据具有不可修改性和不可删除性,可以确保合同数据安全、有效。
进一步的,所述的步骤S2身份认证与授权主要包括以下步骤:
S21.多方通过商讨确定统一的合同内容;
S22.合同签署者分别向CA申请一份证书;
S23.合同签署者选取一个自己控制的区块链地址addressi,编辑包含当事人、区块链地址、相关合同等信息的授权声明,使用证书对声明进行签名,并将证书与声明发送给其他签署者;
S24.签署者收到其他人的证书和授权声明后,对这些信息进行验证,包括检验证书有效性、检验签名有效性以及检验声明是否规范,最后从声明中提取签署者的区块链地址汇总到users。
进一步的,所述的步骤S3链上签署包括以下步骤:
S31.任意签署者均可作为发起人,发起人需将合同内容哈希得到contractHash,再向智能合约发起创建合同签署流程的交易Create(contractHash,users,T),最后将智能合约返回的contractID发送给其他签署者;
S32.签署者凭借contractID向智能合约发起Check(contractId),获取区块链上记载的contractHash,并与自己持有的合同比对,如若不一致,说明合同内容有误或被篡改,签署者不再进行后继操作;
S33.签署者确认无误后,使用自己在声明中记载的区块链地址发起Accept(contractId)交易,正式签署合同。
进一步的,所述的智能合约的准确性和有效性由签署者自行检验。
本发明还提供一种基于区块链的多方合同签署系统,包括:
智能合约部署模块:用于编写智能合约,智能合约编写完成后,在区块链上完成部署,得到合约的地址SmartContractAddress,供合同签署者调用获取服务;其中,智能合约的内容包括:①Create(contractHash,users,T):
身份认证与授权模块:用于合同签署者分别向CA申请一份证书,合约签署者选取区块链地址,编辑授权声明,并使用证书进行签名,将证书与声明发送给其他签署者;签署者收到证书和声明后,进行验证,最后从声明中提取签署者的区块链地址汇总到users;
链上签署模块:用于签署者在区块链上完成合同签署;
合同状态查看模块:用于查看合同签署的情况。
进一步的,所述的智能合约部署模块包括:
Create(contractHash,users,T)单元:其中,contractHash是合同的hash值,users是参与合同签署的签署者的区块链地址,T是合同签署周期;用于实现创建合同签署流程并记录合同信息,包括contractHash、users、T、合同创建时间start、签署状态status以及签署人sign,并将该合同签署流程的状态isRunning标识为true,当isRunning为false时,不再接受合同签署行为;最后返还该合同签署流程唯一标识符contractId;
Check(contractId)单元:用于提供一个验证渠道,合同关系人可以凭contractId向合约获取合同hash值,并与本地合同比对,验证该签署流程签署的合同是否一致;
Accept(contractId)单元:只能由users中记载的区块链地址在isRunning标识为true的情况下调用,并且一旦调用就意味着合同签署签署者已确认合同无误,并在事实上签署这一合同;该过程会返还签署行为是否成功,同一签署者不能重复签署,当合同签署者悉数签署完合同后,合同会转入生效状态,并终止合同签署流程;
Get(contractId)单元:用于签署流程创建后,合同关系人随时查看签署情况,包括contractHash、合同签署人sign、合同签署状态status以及合同签署的流程状态isRunning。
进一步的,所述的身份认证与授权模块包括:
合同内容确认单元:用于多方签署者通过商讨确定统一的合同内容;
证书申请单元:用于合同签署者分别向CA申请一份证书;
授权声明单元:用于合同签署者选取一个自己控制的区块链地址addressi,编辑包含当事人、区块链地址、相关合同等信息的授权声明,使用证书对声明进行签名,并将证书与声明发送给其他签署者;
信息验证单元:用于签署者收到其他人的证书和授权声明后,对这些信息进行验证,包括检验证书有效性、检验签名有效性以及检验声明是否规范,最后从声明中提取签署者的区块链地址汇总到users。
进一步的,所述的链上签署模块包括:
Create(contractHash,users,T)发起单元:任意签署者均可作为发起人,用于发起人将合同内容哈希得到contractHash,再向智能合约发起创建合同签署流程的交易Create(contractHash,users,T),最后将智能合约返回的contractID发送给其他签署者;
Check(contractId)发起单元:用于签署者凭借contractID向智能合约发起Check(contractId),获取区块链上记载的contractHash,并与自己持有的合同比对,如若不一致,说明合同内容有误或被篡改,签署者不再进行后继操作;
Accept(contractId)发起单元:用于签署者确认无误后,使用自己在声明中记载的区块链地址发起Accept(contractId)交易,正式签署合同。
本发明还提供一种计算机设备,包括存储器和处理器,所述的存储器存储有计算机程序,所述的处理器执行所述的计算机程序时实现以上所述的方法的步骤。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述的计算机程序被处理器执行时实现以上所述方法的步骤。
与现有技术相比,有益效果是:本发明提供的一种基于区块链的多方合同签署方法,由证书颁发机构(CA)负责给签署者签发证书,用于身份验证和区块链地址授权,并不具体参与合同的签署,在极大程度上减少了对可信第三方的依赖。合同签署方使用CA颁发的证书互相验证身份并给自己的区块链地址授权,授权的区块链地址即可代表所有者在区块链上进行合同的签署,而不需要进行其他的验证工作,这简化了工作流程,减少了计算量和通讯量,也降低了合同签署的经济成本。合同的签署过程是在区块链上完成的,没有第三方的介入,而区块链技术具有去中心化的特点,可以保证合同签署过程的透明性、合理性、合法性和公平性。对于合同的数据,区块链中仅保存合同对应的哈希值以及签署方的区块链地址,并不能直接与现实中的具体合同及签署者身份联系起来,有效保护了用户的隐私;此外,区块链上的数据具有不可修改性和不可删除性,可以确保合同数据安全、有效。
具体实施方式
一种基于区块链的多方合同签署方法,包括以下步骤:
S1.合约部署:编写智能合约,其中,智能合约的内容包括:
Create(contractHash,users,T):其中,contractHash是合同的hash值,users是参与合同签署的签署者的区块链地址,T是合同签署周期;用于实现创建合同签署流程并记录合同信息,包括contractHash、users、T、合同创建时间start、签署状态status以及签署人sign,并将该合同签署流程的状态isRunning标识为true,当isRunning为false时,不再接受合同签署行为;最后返还该合同签署流程唯一标识符contractId;
Check(contractId):提供一个验证渠道,合同关系人可以凭contractId向合约获取合同hash值,并与本地合同比对,验证该签署流程签署的合同是否一致;
Accept(contractId):只能由users中记载的区块链地址在isRunning标识为true的情况下调用,并且一旦调用就意味着合同签署签署者已确认合同无误,并在事实上签署这一合同;该过程会返还签署行为是否成功,同一签署者不能重复签署,当合同签署者悉数签署完合同后,合同会转入生效状态,并终止合同签署流程;
Get(contractId):签署流程创建后,合同关系人可随时查看签署情况,包括contractHash、已签署合同者sign、合同是否生效status以及合同签署流程状态isRunning;
智能合约编写完成后,在区块链上完成部署,得到合约的地址SmartContractAddress,供合同签署者调用获取服务。
S2.身份认证与授权:
S21.多方通过商讨确定统一的合同内容;
S22.合同签署者分别向CA申请一份证书;
S23.合同签署者选取一个自己控制的区块链地址addressi,编辑包含当事人、区块链地址、相关合同等信息的授权声明,使用证书对声明进行签名,并将证书与声明发送给其他签署者;
S24.签署者收到其他人的证书和授权声明后,对这些信息进行验证,包括检验证书有效性、检验签名有效性以及检验声明是否规范,最后从声明中提取签署者的区块链地址汇总到users。
S3.链上签署:签署者在区块链上完成合同签署;
S31.任意签署者均可作为发起人,发起人需将合同内容哈希得到contractHash,再向智能合约发起创建合同签署流程的交易Create(contractHash,users,T),最后将智能合约返回的contractID发送给其他签署者;
S32.签署者凭借contractID向智能合约发起Check(contractId),获取区块链上记载的contractHash,并与自己持有的合同比对,如若不一致,说明合同内容有误或被篡改,签署者不再进行后继操作;
S33.签署者确认无误后,使用自己在声明中记载的区块链地址发起Accept(contractId)交易,正式签署合同。
S4.查看合同状态:任何人都可以查看合同签署的情况。
其中,所述的智能合约的准确性和有效性由签署者自行检验。
实施例
以3名签署者A、B、C在以太坊上通过智能合约进行合同《模拟合同001》签署为例。
步骤1:合约部署,根据前述智能合约的需求编写智能合约,并在以太坊上完成部署,得到智能合约地址“0x5ec375abedb991365bd12a37acfb7476891d9592”。
步骤2:身份验证与授权,以A为例,A用从认证中心CA申请到的证书,对声明“本人A,将使用区块链地址‘0xca35b7d915458ef540ade6068dfe2f44e8fa733c’进行合同《模拟合同001》的签署,该地址的签署行为代表本人的意愿”进行签名。再将签名和证书发送给B、C两人。B、C等人拿到A的信息后,先检验A的证书是否有效,再检验A的签名是否有效,最后核验声明是否符合要求,在三者检测都通过后,将A的声明中的区块链地址提取出来,加入到users集中。在交换结束后,A、B、C三人都应该有相同的签署者区块链地址集["0xca35b7d915458ef540ade6068dfe2f44e8fa733c","0x14723a09acff6d2a60dcdf7aa4aff308fddc160c","0x4b0897b0513fdc7c541b6d9d7e929c4e5364d2db"],其中另外两个为B、C的区块链地址。
步骤3:链上签署,以A为发起人为例,对合同《模拟合同001》使用sha1哈希运算,得到"qqrFZw3zEuhxyj3iZmgjYX9Gax4=",向智能合约发起创建合同签署流程的交易Create(contractHash,users,T),其中,contractHash为"qqrFZw3zEuhxyj3iZmgjYX9Gax4=",users为["0xca35b7d915458ef540ade6068dfe2f44e8fa733c","0x14723a09acff6d2a60dcdf7aa4aff308fddc160c","0x4b0897b0513fdc7c541b6d9d7e929c4e5364d2db"],T取3600,即一个小时。得到合同交易活动ID"0x455f36f54df34e88eb18d097060bfbc8c1689d792d64702e4969da6ce3778214"后,将其发送给B、C。
B、C得到交易活动ID后,可向智能合约发起Check交易,获取A创建时提交的合同哈希值,并将自己持有的合同用相同方式哈希运算,比对两者是否一致。不同则终止操作;
在确认无误之后,A、B、C就可以用其在授权声明中的区块链地址发起Accept(contractId)交易,其中contractId为"0x455f36f54df34e88eb18d097060bfbc8c1689d792d64702e4969da6ce3778214"。智能合约会根据地址以及合同创建时记载的信息对该交易进行判断,如果通过则记录此签署合同的地址。当合同预设的签署者都悉数完成合同签署后,合约会转入终止签署状态,合同会被标记为生效。否则,在T时间后,合约会转入终止签署状态,合同会被标记为无效。
步骤4:查看合同状态,A、B、C及其他关系人都可以向合约发起Get(contractId)交易查看合同签署情况,其中contractId是为0x455f36f54df34e88eb18d097060bfbc8c1689d792d64702e4969da6ce3778214。由于A、B、C都已签署了合同,因此得到的status为true,表明合同签署成功,已经生效。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (9)
1.一种基于区块链的多方合同签署方法,其特征在于,包括以下步骤:
S1.合约部署:编写智能合约,其中,智能合约的内容包括:
①创建,包括参数contractHash、users、T,其中,contractHash是合同的哈希值,users是参与合同签署的签署者的区块链地址,T是合同签署周期;用于实现创建合同签署流程并记录合同信息,包括contractHash、users、T、合同创建时间start、合同签署状态status以及合同签署人sign,并将该合同签署的流程状态isRunning标识为正确,当isRunning为错误时,不再接受合同签署行为;最后返还该合同签署流程唯一标识符contractId;
②验证,包括参数contractId:提供一个验证渠道,合同关系人凭contractId向合约获取合同哈希值,并与本地合同的哈希比对,验证该签署流程签署的合同是否一致;
③签署,包括参数contractId:只能由users中记载的区块链地址在isRunning标识为正确的情况下调用,并且一旦调用就意味着合同签署者已确认合同无误,并在事实上签署这一合同;该过程会返还签署行为是否成功,同一签署者不能重复签署,当合同签署者悉数签署完合同后,合同会转入生效状态,并终止合同签署流程;
④查询,包括参数contractId:签署流程创建后,合同关系人可随时查看签署情况,包括contractHash、合同签署人sign、合同签署状态status以及合同签署的流程状态isRunning;
智能合约编写完成后,在区块链上完成部署,得到合约的地址,供合同签署者调用获取服务;
S2.身份认证与授权:合同签署者分别向CA申请一份证书,合约签署者选取区块链地址,编辑授权声明,并使用证书进行签名,将证书与声明发送给其他签署者;签署者收到证书和声明后,进行验证,最后从声明中提取签署者的区块链地址汇总到users;
S3.链上签署:签署者在区块链上完成合同签署;
S4.查看合同状态:任何人都可以查看合同签署的情况。
2.根据权利要求1所述的基于区块链的多方合同签署方法,其特征在于,所述的步骤S2身份认证与授权包括以下步骤:
S21.多方通过商讨确定统一的合同内容;
S22.合同签署者分别向CA申请一份证书;
S23.合同签署者选取一个自己控制的区块链地址addressi,编辑包含当事人、区块链地址、相关合同信息的授权声明,使用证书对声明进行签名,并将证书与声明发送给其他签署者;
S24.签署者收到其他人的证书和授权声明后,对这些信息进行验证,包括检验证书有效性、检验签名有效性以及检验声明是否规范,最后从声明中提取签署者的区块链地址汇总到users。
3.根据权利要求2所述的基于区块链的多方合同签署方法,其特征在于,所述的步骤S3链上签署包括以下步骤:
S31.任意签署者均可作为发起人,发起人需将合同内容哈希得到contractHash,再向智能合约发起创建合同签署流程的交易中的①创建,最后将智能合约返回的contractID发送给其他签署者;
S32.签署者凭借contractID向智能合约发起②验证,获取区块链上记载的contractHash,并与自己持有的合同比对,如若不一致,说明合同内容有误或被篡改,签署者不再进行后继操作;
S33.签署者确认无误后,使用自己在声明中记载的区块链地址发起③签署交易,正式签署合同。
4.根据权利要求1所述的基于区块链的多方合同签署方法,其特征在于,所述的智能合约的准确性和有效性由签署者自行检验。
5.一种基于区块链的多方合同签署系统,其特征在于,包括:
智能合约部署模块:用于编写智能合约,智能合约编写完成后,在区块链上完成部署,得到合约的地址,供合同签署者调用获取服务;所述的智能合约部署模块包括:
创建单元:包括参数contractHash、users、T,其中,contractHash是合同的hash值,users是参与合同签署的签署者的区块链地址,T是合同签署周期;用于实现创建合同签署流程并记录合同信息,包括contractHash、users、T、合同创建时间start、合同签署状态status以及合同签署人sign,并将该合同签署流程的状态isRunning标识为正确,当isRunning为错误时,不再接受合同签署行为;最后返还该合同签署流程唯一标识符contractId;
验证单元:包括参数contractId,用于提供一个验证渠道,合同关系人可以凭contractId向合约获取合同哈希值,并与本地合同的哈希比对,验证该签署流程签署的合同是否一致;
签署单元:包括参数contractId,参数只能由users中记载的区块链地址在isRunning标识为正确的情况下调用,并且一旦调用就意味着合同签署者已确认合同无误,并在事实上签署这一合同;该过程会返还签署行为是否成功,同一签署者不能重复签署,当合同签署者悉数签署完合同后,合同会转入生效状态,并终止合同签署流程;
查询单元:包括参数contractId,用于签署流程创建后,合同关系人随时查看签署情况,包括contractHash、合同签署人sign、合同签署状态status以及合同签署的流程状态isRunning;
身份认证与授权模块:用于合同签署者分别向CA申请一份证书,合约签署者选取区块链地址,编辑授权声明,并使用证书进行签名,将证书与声明发送给其他签署者;签署者收到证书和声明后,进行验证,最后从声明中提取签署者的区块链地址汇总到users;
链上签署模块:用于签署者在区块链上完成合同签署;
合同状态查看模块:用于查看合同签署的情况。
6.根据权利要求5所述的基于区块链的多方合同签署系统,其特征在于,所述的身份认证与授权模块包括:
合同内容确认单元:用于多方签署者通过商讨确定统一的合同内容;
证书申请单元:用于合同签署者分别向CA申请一份证书;
授权声明单元:用于合同签署者选取一个自己控制的区块链地址addressi,编辑包含当事人、区块链地址、相关合同信息的授权声明,使用证书对声明进行签名,并将证书与声明发送给其他签署者;
信息验证单元:用于签署者收到其他人的证书和授权声明后,对这些信息进行验证,包括检验证书有效性、检验签名有效性以及检验声明是否规范,最后从声明中提取签署者的区块链地址汇总到users。
7.根据权利要求6所述的基于区块链的多方合同签署系统,其特征在于,所述的链上签署模块包括:
创建发起单元:任意签署者均可作为发起人,用于发起人将合同内容哈希得到contractHash,再向智能合约发起创建合同签署流程的交易即创建单元,最后将智能合约返回的contractId发送给其他签署者;
验证发起单元:用于签署者凭借contractId向智能合约发起验证contractId,获取区块链上记载的contractHash,并与自己持有的合同比对,如若不一致,说明合同内容有误或被篡改,签署者不再进行后继操作;
签署发起单元:用于签署者确认无误后,使用自己在声明中记载的区块链地址发起签署contractId交易,正式签署合同。
8.一种计算机设备,包括存储器和处理器,所述的存储器存储有计算机程序,其特征在于,所述的处理器执行所述的计算机程序时实现权利要求1至4任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述的计算机程序被处理器执行时实现权利要求1至4任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110688588.4A CN113378196B (zh) | 2021-06-21 | 2021-06-21 | 基于区块链的多方合同签署方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110688588.4A CN113378196B (zh) | 2021-06-21 | 2021-06-21 | 基于区块链的多方合同签署方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113378196A CN113378196A (zh) | 2021-09-10 |
CN113378196B true CN113378196B (zh) | 2022-04-15 |
Family
ID=77578192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110688588.4A Active CN113378196B (zh) | 2021-06-21 | 2021-06-21 | 基于区块链的多方合同签署方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113378196B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113806804A (zh) * | 2021-09-17 | 2021-12-17 | 安徽高山科技有限公司 | 一种基于区块链智能合约的合同签署方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106504008A (zh) * | 2016-10-24 | 2017-03-15 | 中山大学 | 一种基于区块链的公平合同签署方法 |
CN106960165A (zh) * | 2017-03-13 | 2017-07-18 | 广东网金控股股份有限公司 | 一种基于区块链智能合约实现电子合同多方会签的方法 |
CN108833115A (zh) * | 2018-06-15 | 2018-11-16 | 中山大学 | 一种基于区块链的多方公平pdf合同签署方法 |
CN109815728A (zh) * | 2018-12-21 | 2019-05-28 | 暨南大学 | 基于区块链的具有隐私保护的公平合同签署方法 |
CN109978543A (zh) * | 2019-04-03 | 2019-07-05 | 浙江鲸腾网络科技有限公司 | 一种合同签署的方法、装置、电子设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111444493A (zh) * | 2020-04-25 | 2020-07-24 | 中信银行股份有限公司 | 电子合同的签署方法、装置、电子设备及可读存储介质 |
-
2021
- 2021-06-21 CN CN202110688588.4A patent/CN113378196B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106504008A (zh) * | 2016-10-24 | 2017-03-15 | 中山大学 | 一种基于区块链的公平合同签署方法 |
CN106960165A (zh) * | 2017-03-13 | 2017-07-18 | 广东网金控股股份有限公司 | 一种基于区块链智能合约实现电子合同多方会签的方法 |
CN108833115A (zh) * | 2018-06-15 | 2018-11-16 | 中山大学 | 一种基于区块链的多方公平pdf合同签署方法 |
CN109815728A (zh) * | 2018-12-21 | 2019-05-28 | 暨南大学 | 基于区块链的具有隐私保护的公平合同签署方法 |
CN109978543A (zh) * | 2019-04-03 | 2019-07-05 | 浙江鲸腾网络科技有限公司 | 一种合同签署的方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
Contract Coin: Toward Practical Contract;Haibo Tian 等;《International Conference on Information Security Practice and Experience》;20171231;第43-61页 * |
基于公开区块链的隐私保护公平合同签署协议;田海博 等;《密码学报》;20171231;第187-198页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113378196A (zh) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108768988B (zh) | 区块链访问控制方法、设备及计算机可读存储介质 | |
CN108667612B (zh) | 一种基于区块链的信任服务架构及方法 | |
CN111552955B (zh) | 一种基于区块链和ipfs的个人身份认证方法及装置 | |
WO2019232880A1 (zh) | 一种基于生物特征标记认证的区块链安全交易方法及装置 | |
CN108900507B (zh) | 区块链实名认证方法和系统 | |
CN114186248B (zh) | 基于区块链智能合约的零知识证明可验证凭证数字身份管理系统及方法 | |
WO2021008453A1 (zh) | 一种基于标识认证的区块链离线交易方法和系统 | |
TW201741922A (zh) | 一種基於生物特徵的安全認證方法及裝置 | |
CN110069918A (zh) | 一种基于区块链技术的高效双因子跨域认证方法 | |
CN104104672A (zh) | 基于身份认证建立动态授权码的方法 | |
CN108880832B (zh) | 区块链实名认证方法和系统 | |
CN103312691A (zh) | 一种云平台的认证与接入方法及系统 | |
CN104660412A (zh) | 一种移动设备无密码安全认证方法及系统 | |
CN109816386A (zh) | 一种基于区块链的统一身份认证的链上数据打通方法 | |
CN109242404A (zh) | 履历信息管理方法、装置、计算机设备与可读存储介质 | |
CN110611647A (zh) | 一种区块链系统上的节点加入方法和装置 | |
CN104125230A (zh) | 一种短信认证服务系统以及认证方法 | |
CN108876375B (zh) | 区块链实名参与方法和系统 | |
WO2019178763A1 (zh) | 一种证书导入方法及终端 | |
CN109285256A (zh) | 基于区块链身份验证的机房进门权限给定方法 | |
CN115688191A (zh) | 一种基于区块链的电子签章系统及方法 | |
CN109241762A (zh) | 基于区块链技术的资产信息获取方法、装置与计算机设备 | |
JP2019154055A5 (zh) | ||
CN114491436A (zh) | 一种合约签订方法、装置、电子设备及存储介质 | |
CN113378196B (zh) | 基于区块链的多方合同签署方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |