CN111311172A - 电子签约的方法、***和存储介质 - Google Patents
电子签约的方法、***和存储介质 Download PDFInfo
- Publication number
- CN111311172A CN111311172A CN201911272781.9A CN201911272781A CN111311172A CN 111311172 A CN111311172 A CN 111311172A CN 201911272781 A CN201911272781 A CN 201911272781A CN 111311172 A CN111311172 A CN 111311172A
- Authority
- CN
- China
- Prior art keywords
- signing
- contract
- electronic
- equipment
- hash value
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 97
- 238000012795 verification Methods 0.000 claims abstract description 29
- 230000008859 change Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000012905 input function Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products 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/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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Accounting & Taxation (AREA)
- Economics (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种电子签约的方法、***和存储介质,包括如下步骤:第一签约设备根据用户操作创建电子合约,并根据第一算法得到电子合约的哈希值;第一签约设备将哈希值和电子合约上传至区块链,以使得区块链根据电子合约、哈希值、第一签约设备的公钥和第二签约设备的公钥生成对应的合约指纹;第一签约设备和第二签约设备获取区块链上的合约指纹,并对合约指纹进行验证;若验证成功,则第一签约设备和第二签约设备分别使用私钥对合约指纹签名,并分别将签名后的合约指纹上传至区块链,完成电子签约。本发明旨在解决现有的电子签约中无法保证信息安全性的问题。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种电子签约的方法、***和存储介质。
背景技术
目前大多数电子签约过程都是在网络上通过第三方平台签署,解决了签约合同的存证问题,在需要举证的时候从网络存证中心直接调取合约,用来做司法举证,无需调取纸质合同。但是现有的电子签约技术将个人信息存储在第三方的数据库,这样一来,第三方数据库存在容易被盗的风险,难以保证签约信息不被泄露。
发明内容
本发明的主要目的在于提供一种电子签约的方法、***和存储介质。旨在解决现有的电子签约无法保证信息安全性。
为实现上述目的,本发明提供一种电子签约的方法,包括如下步骤:
第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到所述电子合约的哈希值;
第一签约设备将所述哈希值和所述电子合约上传至区块链,以使得区块链根据所述电子合约、所述哈希值、第一签约设备对应的预存的公钥和第二签约设备对应的预存的公钥生成对应的合约指纹;
第一签约设备和第二签约设备获取区块链上存储的所述合约指纹,并对获取到的合约指纹进行验证;
若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链,完成电子签约。
可选地,所述第一签约设备和第二签约设备获取区块链上存储的所述合约指纹,并对获取到的所述合约指纹进行验证的步骤包括:
第一签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功;
第二签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功。
可选地,所述若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链的步骤之后包括:
第一签约设备和第二签约设备使得区块链接收被第一签约设备的私钥签名后的合约指纹和被第二签约设备的私钥签名的合约指纹,并分别验证所述签名是否与所述合约指纹相匹配;
若所述签名与所述合约指纹相匹配,则第一签约设备和第二签约设备完成电子签约。
可选地,所述第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到所述电子合约的哈希值的步骤之前还包括:
第一签约设备将与第一签约设备对应的个人签约信息上传至区块链。
可选地,所述第一签约设备将与第一签约设备对应的个人签约信息上传至区块链的步骤包括:
第一签约设备根据第二算法计算得到第一签约设备对应的私钥和公钥;
第一签约设备读取与所述第一签约设备对应的用户信息,并对所述用户信息进行验证;
若验证成功,则第一签约设备根据所述第一签约设备的公钥和所述第一签约设备的用户信息生成对应的个人签约信息,并将所述个人签约信息上传至区块链。
可选地,所述第一签约设备将所述哈希值和所述电子合约上传至区块链的步骤包括:
第一签约设备将所述哈希值、所述电子合约及所述电子合约中对应的合约关键信息上传至区块链。
可选地,所述第一算法包括MD5码哈希算法,所述第二算法包括椭圆加密算法。
可选地,所述合约关键信息包括合约MD5码及数据变动信息。
此外,为实现上述目的,本发明还提供一种电子签约***,所述电子签约***包括:区块链、包括存储器和处理器的第一签约设备、包括存储器和处理器的第二签约设备及存储在所述第一签约设备的存储器和所述第二签约存储器上并可被所述第一签约设备的处理器和所述第二签约处理器运行的电子签约程序,所述电子签约程序被执行时实现如上所述的电子签约方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有电子签约程序,所述电子签约程序被处理器执行时实现如上所述的电子签约方法的步骤。
本发明提供了一种电子签约的方法、***和存储介质,包括如下步骤:第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到电子合约的哈希值;第一签约设备将哈希值和电子合约上传至区块链,以使得区块链根据电子合约、哈希值、第一签约设备对应的预存的公钥和第二签约设备对应的预存的公钥生成对应的合约指纹;第一签约设备和第二签约设备获取区块链上存储的合约指纹,并对获取到的合约指纹进行验证;若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对合约指纹签名,并分别将签名后的合约指纹上传至区块链,完成电子签约。通过上述方式,本发明先是根据电子合约和哈希值得到合约指纹,由于哈希值能起到错误矫正的作用,即合约指纹一旦改变,哈希值也随之变化,通过比较哈希值的方式验证合约指纹,防止合约指纹被篡改;第一签约设备和第二签约设备分别使用对应的预存的私钥对合约指纹签名,由于私钥具有唯一性和不可篡改性,在提高签约真实性的同时还提高了电子签约的安全性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;
图2为本发明电子签约方法一实施例的流程示意图;
图3为本发明实施例中所述第一签约设备和第二签约设备获取区块链上存储的合约指纹,并对合约指纹进行验证的步骤细化流程示意图;
图4为本发明电子签约方法又一实施例的流程示意图;
图5为本发明电子签约方法另一实施例的流程示意图;
图6为本发明实施例中所述第一签约设备将与第一签约设备对应的个人签约信息上传至区块链的步骤细化流程示意图;
图7为本发明实施例中所述第一签约设备将哈希值和电子合约上传至区块链的步骤细化流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端可以是电脑,也可以是智能手机、平板电脑、便携计算机等具有显示功能和输入功能的可移动式终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选的用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、WiFi模块等等,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作***、网络通信模块、用户接口模块以及网络操作控制应用程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要包括输入单元比如键盘,键盘包括无线键盘和有线键盘,用于连接客户端,与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的电子签约程序,并执行以下操作:
第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到所述电子合约的哈希值;
第一签约设备将所述哈希值和所述电子合约上传至区块链,以使得区块链根据所述电子合约、所述哈希值、第一签约设备对应的预存的公钥和第二签约设备对应的预存的公钥生成对应的合约指纹;
第一签约设备和第二签约设备获取区块链上存储的所述合约指纹,并对获取到的所述合约指纹进行验证;
若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链,完成电子签约。
进一步地,处理器1001可以调用存储器1005中存储的电子签约程序,还执行以下操作:
所述第一签约设备和第二签约设备获取区块链上存储的所述合约指纹,并对获取到的所述合约指纹进行验证的步骤包括:
第一签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功;
第二签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功。
进一步地,处理器1001可以调用存储器1005中存储的电子签约程序,还执行以下操作:
所述若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链的步骤之后包括:
第一签约设备和第二签约设备使得区块链接收被第一签约设备的私钥签名的合约指纹和被第二签约设备的私钥签名的合约指纹,并分别验证所述签名是否与所述合约指纹相匹配;
若所述签名与所述合约指纹相匹配,则第一签约设备和第二签约设备完成电子签约。
进一步地,处理器1001可以调用存储器1005中存储的电子签约程序,还执行以下操作:
所述第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到所述电子合约的哈希值的步骤之前还包括:
第一签约设备将与第一签约设备对应的个人签约信息上传至区块链。
进一步地,处理器1001可以调用存储器1005中存储的电子签约程序,还执行以下操作:
所述第一签约设备将与第一签约设备对应的个人签约信息上传至区块链的步骤包括:
第一签约设备根据第二算法计算得到第一签约设备对应的私钥和公钥;
第一签约设备读取与所述第一签约设备对应的用户信息,并对所述用户信息进行验证;
若验证成功,则第一签约设备根据所述第一签约设备的公钥和所述第一签约设备的用户信息生成对应的个人签约信息,并将所述个人签约信息上传至区块链。
进一步地,处理器1001可以调用存储器1005中存储的电子签约程序,还执行以下操作:
所述第一签约设备将所述哈希值和所述电子合约上传至区块链的步骤包括:
第一签约设备将所述哈希值、所述电子合约及所述电子合约中对应的合约关键信息上传至区块链。
基于上述硬件结构,提出本发明电子签约方法的各个实施例。
请参阅图2,图2为本发明电子签约方法一实施例的流程示意图,本实施例提供的电子签约方法包括如下步骤:
步骤S10,第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到所述电子合约的哈希值;
在本发明实施例中,以该电子签约方法在手机上的APP(计算机应用程序)应用为例,应当理解的是,本发明公开的电子签约方法可以应用在电脑、智能手机、平板电脑、便携计算机等具有显示功能和输入功能的可移动式终端设备上。应当理解的是,由于一份合同的乙方可以为另一份合同的甲方,因此第一签约设备为泛指,可以为本实施例中的第一签约设备或第二签约设备。
为满足用户的不同签约需求,本实施例应用程序中预先设置有可定制化的合约模板,从而可提升用户的使用体验。预先设置的合约模板中包括多种类型,例如买卖合约模板、服务合约模板、租赁合约模板、借款合约模板等多种种类,可满足用户的不同签约需求;当然用户也可以根据自己的需求在应用程序界面自定义合约。合约包括签约参与方的名称或者姓名和住所,数量,价款或报酬,履行期限、地点和方式,违约责任等基本信息。
根据用户操作创建对应的电子合约后,第一签约设备根据第一算法计算电子合约的哈希值。第一算法包括MD5码哈希算法,哈希算法就是把任意长度的输入通过散列算法变换成固定长度的输出的一种算法。哈希算法包括SHA-1哈希算法、MD4码哈希算法和MD5码哈希算法等哈希算法。由于MD5码哈希算法具有安全性高,在抗分析和抗差分方面表现更好的特点,本实施例使用MD5码哈希算法,当然也可以使用其他哈希算法。使用第一算法计算电子合约的哈希值,哈希值把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来,能确保传递信息的真实性和起到错误矫正的作用。
步骤S20,第一签约设备将所述哈希值和所述电子合约上传至区块链,以使得区块链根据所述电子合约、所述哈希值、第一签约设备对应的预存的公钥和第二签约设备对应的预存的公钥生成对应的合约指纹;
本实施例中,第一签约设备将通过第一算法得到的哈希值和创建的电子合约上传至区块链,第一签约设备的公钥与私钥同时产生且优先于电子合约上传至区块链。区块链上存储有第一签约设备对应的公钥和第二签约设备对应的公钥,公钥是密钥对中公开的部分,公钥通常用于加密会话密钥、验证数字签名,或加密可以用相应的私钥解密的数据。区块链根据第一签约设备上传的电子合约、哈希值、存储在区块链上的第一签约设备对应的公钥和存储在区块链上的第二签约设备对应的公钥生成的对应的合约指纹。由于用公钥加密的数据也必须用私钥解密,通过这种方式,保证了签约的真实性。其中,第一签约设备通常包括一台设备,第二签约设备可以是一台或者多台设备,即该签约方法,第一签约设备可以同时与一个或多个第二签约设备进行签约,从而可支持双方或多方签约。
步骤S30,第一签约设备和第二签约设备获取区块链上存储的所述合约指纹,并对获取到的所述合约指纹进行验证;
第一签约设备和第二签约设备分别获取区块链上存储的合约指纹,并根据第一算法得到合约指纹的MD5码哈希值。MD5码是根据公开的MD5算法对原信息进行数学变换后得到的一个128位的特征码,具有唯一性,MD5码更改则表示合约发生变动。根据合约指纹的MD5码的特征,验证合约是否被更改。若合约指纹的MD5码哈希值与上述得到的电子合约的哈希值一致,表示合约内容未有更改,则为验证成功。应当理解的是,第一签约设备需要对得到的合约指纹进行验证,第二签约设备也需要对得到的合约指纹进行验证。当双方均验证成功后,进行电子签约方法的下一操作。通过这种验证合约内容是否更改的方式,加强了电子签约的真实性。
步骤S40,若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链,完成电子签约。
当第一签约设备和第二签约设备均验证成功后,即均确定合约的内容未有更改,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并将各自签名后的合约指纹上传至区块链,即代表第一签约设备合第二签约设备同意合约并签署合约。
私钥与公钥同时产生,与公钥不同的是,私钥存储在签约设备的存储器内,与用户所使用的签约设备一一对应,即一台签约设备对应一个唯一的私钥,从而保证签约活动的真实性。
应当理解的是,本实施例中第二签约设备是泛指,其可以是一台也可以是多台设备,因此第二签约设备的合约指纹上可以包括两位和/或多位用户的签名。
本实施例中的电子签约的方法包括如下步骤:第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到电子合约的哈希值;第一签约设备将哈希值和电子合约上传至区块链,以使得区块链根据电子合约、哈希值、第一签约设备对应的预存的公钥和第二签约设备对应的预存的公钥生成对应的合约指纹;第一签约设备和第二签约设备获取区块链上存储的合约指纹,并对获取到的合约指纹进行验证;若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对合约指纹签名,并分别将签名后的合约指纹上传至区块链,完成电子签约。通过上述方式,本发明先是根据电子合约和哈希值得到合约指纹,由于哈希值能起到错误矫正的作用,即合约指纹一旦改变,哈希值也随之变化,通过比较哈希值的方式验证合约指纹,防止合约指纹被篡改;第一签约设备和第二签约设备分别使用对应的预存的私钥对合约指纹签名,由于私钥具有唯一性和不可篡改性,在提高签约真实性的同时还提高了电子签约的安全性。
进一步的,参照图3,图3为本发明实施例中所述第一签约设备和第二签约设备获取区块链上存储的合约指纹,并对合约指纹进行验证的步骤细化流程示意图。上述第一签约设备和第二签约设备获取区块链上存储的合约指纹,并对合约指纹进行验证的步骤包括:
步骤S31,第一签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功;
步骤S32,第二签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功。
第一签约设备和第二签约设备获取区块链上存储的合约指纹,即区块链分别向第一签约设备和第二签约设备发送存储的合约指纹。第一签约设备和第二签约设备获取到合约指纹后,根据第一算法计算电子合约的哈希值。第一算法包括MD5码哈希算法,哈希算法就是把任意长度的输入通过散列算法变换成固定长度的输出的一种算法。哈希算法包括SHA-1哈希算法、MD4码哈希算法和MD5码哈希算法等哈希算法。由于MD5码哈希算法具有安全性高,在抗分析和抗差分方面表现更好的特点,本实施例使用MD5码哈希算法,当然也可以使用其他哈希算法。使用第一算法计算合约的哈希值,哈希值把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来,能确保传递信息的真实性和起到错误矫正的作用。
计算得到哈希值后,对合约指纹的哈希值进行验证,第一签约设备和第二签约设备比较得到的合约指纹的哈希值与上述电子合约的哈希值,当合约指纹的哈希值与电子合约的哈希值一致时,表明合约未被更改。当第一签约设备得到的合约指纹的哈希值与上述电子合约的哈希值一致时,且第二签约设备得到的合约指纹的哈希值与上述电子合约的哈希值也一致时,此时即为验证成功。
进一步的,参照图4,图4为本发明电子签约方法又一实施例的流程示意图。上述步骤S40第一签约设备和第二签约设备分别对获取到的合约指纹进行验证,若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链之后包括:
步骤S50,第一签约设备和第二签约设备使得区块链接收被第一签约设备的私钥签名的合约指纹和被第二签约设备的私钥签名的合约指纹,并分别验证所述签名是否与所述合约指纹相匹配;
步骤S60,若所述签名与所述合约指纹相匹配,则第一签约设备和第二签约设备完成电子签约。
第一签约设备和第二签约设备分别对获取到的合约指纹用各自对应的私钥进行签名后,将签名后的合约指纹上传至区块链。区块链接收到签名后的合约指纹,对第一签约设备发送的合约指纹和第二签约设备发送的合约指纹进行验证。公钥是密钥对中公开的部分,公钥通常用于加密会话密钥、验证数字签名,或加密可以用相应的私钥解密的数据。由于用公钥加密的数据也必须用私钥解密,因此第一签约设备接收的合约指纹要使用第一签约设备的私钥进行解密,第二签约设备接收的合约指纹要使用第二签约设备的私钥进行解密。区块链具有检验私钥与公钥是否匹配的功能,区块链获取到签名后的合约指纹后,检验合约指纹上存储的公钥和签名上存储的私钥是否为一对密钥对,是否相互匹配。
当区块链接收到的第一签约设备的合约指纹与签名相匹配,且区块链接收到的第二签约设备的合约指纹与签名也相匹配时,即为匹配成功。匹配成功后,将被第一签约设备签名后的合约指纹和被第二签约设备签名后的合约指纹存储在区块链上,完成此次电子签约。
进一步的,参照图5,图5为本发明电子签约方法另一实施例的流程示意图。上述步骤S10第一签约设备根据用户操作创建对应的电子合约,并根据所述电子合约和第一签约设备的私钥生成对应的合约指纹之前包括:
步骤S70,第一签约设备将与第一签约设备对应的个人签约信息上传至区块链。
将第一签约设备的个人签约信息上传至区块链,应当理解的是,由于一份合同的乙方可以为另一份合同的甲方,因此上述第一签约设备为泛指,可以为本实施例中的第一签约设备或第二签约设备。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,它本质上是一个去中心化的数据库。由于区块链具有去中心化的特点,因此签约设备对应的个人签约信息无需存储在第三方平台中的数据库,从而防止第三方平台盗用签约设备的合约信息,避免个人信息被第三方平台盗用进行签约。
进一步的,参照图6,图6为本发明实施例中所述第一签约设备将与第一签约设备对应的个人签约信息上传至区块链的步骤细化流程示意图。上述第一签约设备将与第一签约设备对应的个人签约信息上传至区块链的步骤包括:
步骤S71,第一签约设备根据第二算法计算得到与第一签约设备对应的私钥和公钥;
步骤S72,第一签约设备读取与所述第一签约设备对应的用户信息,并对所述用户信息进行验证;
步骤S73,若验证成功,则第一签约设备根据所述第一签约设备的公钥和所述第一签约设备的用户信息生成对应的个人签约信息,并将所述个人签约信息上传至区块链。
第二算法包括椭圆加密算法,椭圆加密算法是一种公钥加密体制,其数学基础是利用椭圆曲线上的有理点构成Abel加法群上椭圆离散对数的计算困难性,是一种建立公开密钥加密的算法,也就是非对称加密。基于椭圆加密算法生成用户所使用的签约设备的公钥和私钥,其中私钥与设备一一对应,一台设备只能生成对应的一个私钥。
对用户的身份进行身份认证,以确保身份的真实性,进而保证其签署的协议或合同真实并具有法律效力。第一签约设备的用户在第一签约设备的终端界面上输入自己的个人信息,应用程序可以联合公安部公民网络身份识别***等机构对使用第一签约设备的用户的身份进行认证,认证方式可以包括手机验证、银行卡验证、身份证验证、人脸识别验证等。
当验证成功后,对用户的身份认证完成时,将记录第一签约设备的用户信息及第一签约设备对应的公钥生成个人签约信息,并向区块链上传第一签约设备对应的个人签约信息,其中个人签约信息包括第一签约设备对应的公钥。
区块链在获取到该个人签约信息时,将会公示该公钥,以说明该公钥是经过认证,是可信的。由于合约指纹上存储有第一签约设备的公钥和第二签约设备的公钥,因此区块链使用合约指纹上存储的公钥将合约指纹发送至第一签约设备和第二签约设备,方便第一签约设备和第二签约设备对各自接收到的合约指纹进行签名,通过这种方式,加快了签约的速度。
进一步的,参照图7,图7为本发明实施例中所述第一签约设备将哈希值和电子合约上传至区块链的步骤细化流程示意图。上述第一签约设备将所述哈希值和所述电子合约上传至区块链包括:
步骤S21,第一签约设备将所述哈希值、所述电子合约及所述电子合约中对应的合约关键信息上传至区块链。
第一签约设备得到电子合约的哈希值后,将合约中对应的合约关键信息上传至区块链,合约关键信息包括合约MD5码及数据变动信息,也可以包括模板编号等能特定标识合约的信息。第一签约设备将合约关键信息上传至区块链后,当第一签约设备需要在区块链上提取存储的电子合约时,可根据合约关键信息在区块链中快速提取。通过这种方式对存储在区块链中的电子合约进行了备份,避免了第一签约设备和第二签约设备丢失电子合约,无法完成电子签约的情况。
进一步的,所述第一算法包括MD5码哈希算法,所述第二算法包括椭圆加密算法。
第一算法包括MD5码哈希算法,哈希算法就是把任意长度的输入通过散列算法变换成固定长度的输出的一种算法。哈希算法包括SHA-1哈希算法、MD4码哈希算法和MD5码哈希算法等哈希算法。由于MD5码哈希算法具有安全性高,在抗分析和抗差分方面表现更好的特点,本实施例使用MD5码哈希算法,当然也可以使用其他哈希算法。
第二算法包括椭圆加密算法,椭圆加密算法是一种公钥加密体制,其数学基础是利用椭圆曲线上的有理点构成Abel加法群上椭圆离散对数的计算困难性,是一种建立公开密钥加密的算法,也就是非对称加密。
进一步的,所述合约关键信息包括合约MD5码及数据变动信息。
合约关键信息包括合约MD5码及数据变动信息,也可以包括模板编号等能特定标识合约的信息。数据变动信息记载电子合约的变动记录,即使第一签约设备对电子合约进行了变动。也不妨碍对存储在区块链中的电子合约进行提取。其中,MD5码是根据公开的MD5算法对原信息进行数学变换后得到的一个128位的特征码,具有唯一性。根据合约的MD5码的特征,验证合约是否被更改。通过这种验证的,加强对于电子签约真实的验证,从而保证签约的真实性。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有电子签约程序,所述电子签约程序被处理器执行时实现如下操作:
第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到所述电子合约的哈希值;
第一签约设备将所述哈希值和所述电子合约上传至区块链,以使得区块链根据所述电子合约、所述哈希值、第一签约设备对应的预存的公钥和第二签约设备对应的预存的公钥生成对应的合约指纹;
第一签约设备和第二签约设备获取区块链上存储的所述合约指纹,并对获取到的所述合约指纹进行验证;
若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链,完成电子签约。
进一步地,所述电子签约程序被处理器执行时还实现如下操作:
所述第一签约设备和第二签约设备获取区块链上存储的所述合约指纹,并对获取到的所述合约指纹进行验证的步骤包括:
第一签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功;
第二签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功。
进一步地,所述电子签约程序被处理器执行时还实现如下操作:
所述第一签约设备和第二签约设备分别对获取到的合约指纹进行验证,若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链的步骤之后包括:
第一签约设备和第二签约设备使得区块链接收被第一签约设备的私钥签名的合约指纹和被第二签约设备的私钥签名的合约指纹,并分别验证所述签名是否与所述合约指纹相匹配;
若所述签名与所述合约指纹相匹配,则第一签约设备和第二签约设备完成电子签约。
进一步地,所述电子签约程序被处理器执行时还实现如下操作:
所述第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到所述电子合约的哈希值的步骤之前还包括:
第一签约设备将与第一签约设备对应的个人签约信息上传至区块链。
进一步地,所述电子签约程序被处理器执行时还实现如下操作:
所述第一签约设备将与第一签约设备对应的个人签约信息上传至区块链的步骤包括:
第一签约设备根据第二算法计算得到第一签约设备对应的私钥和公钥;
第一签约设备读取与所述第一签约设备对应的用户信息,并对所述用户信息进行验证;
若验证成功,则第一签约设备根据所述第一签约设备的公钥和所述第一签约设备的用户信息生成对应的个人签约信息,并将所述个人签约信息上传至区块链。
进一步地,所述电子签约程序被处理器执行时还实现如下操作:
所述第一签约设备将所述哈希值和所述电子合约上传至区块链的步骤包括:
第一签约设备将所述哈希值、所述电子合约及所述电子合约中对应的合约关键信息上传至区块链。
本发明计算机可读存储介质的具体实施例与上述电子签约方法各实施例基本相同,在此不作赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者***中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种电子签约的方法,其特征在于,包括以下步骤:
第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到所述电子合约的哈希值;
第一签约设备将所述哈希值和所述电子合约上传至区块链,以使得区块链根据所述电子合约、所述哈希值、第一签约设备对应的预存的公钥和第二签约设备对应的预存的公钥生成对应的合约指纹;
第一签约设备和第二签约设备获取区块链上存储的所述合约指纹,并对获取到的所述合约指纹进行验证;
若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链,完成电子签约。
2.如权利要求1所述的电子签约的方法,其特征在于,所述第一签约设备和第二签约设备获取区块链上存储的所述合约指纹,并对获取到的所述合约指纹进行验证的步骤包括:
第一签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功;
第二签约设备获取区块链上存储的所述合约指纹,并根据所述第一算法计算得到所述合约指纹的哈希值,当所述合约指纹的哈希值与所述合约的哈希值一致时,即为验证成功。
3.如权利要求1所述的电子签约的方法,其特征在于,所述若验证成功,则第一签约设备和第二签约设备分别使用对应的预存的私钥对所述合约指纹签名,并分别将所述签名后的合约指纹上传至区块链的步骤之后包括:
第一签约设备和第二签约设备使得区块链接收被第一签约设备的私钥签名的合约指纹和被第二签约设备的私钥签名的合约指纹,并分别验证所述签名是否与所述合约指纹相匹配;
若所述签名与所述合约指纹相匹配,则第一签约设备和第二签约设备完成电子签约。
4.如权利要求1所述的电子签约的方法,其特征在于,所述第一签约设备根据用户操作创建对应的电子合约,并根据第一算法计算得到所述电子合约的哈希值的步骤之前包括:
第一签约设备将与第一签约设备对应的个人签约信息上传至区块链。
5.如权利要求4所述的电子签约的方法,其特征在于,所述第一签约设备将与第一签约设备对应的个人签约信息上传至区块链的步骤包括:
第一签约设备根据第二算法计算得到第一签约设备对应的私钥和公钥;
第一签约设备读取与所述第一签约设备对应的用户信息,并对所述用户信息进行验证;
若验证成功,则第一签约设备根据所述第一签约设备的公钥和所述第一签约设备的用户信息生成对应的个人签约信息,并将所述个人签约信息上传至区块链。
6.如权利要求1所述的电子签约的方法,其特征在于,所述第一签约设备将所述哈希值和所述电子合约上传至区块链的步骤包括:
第一签约设备将所述哈希值、所述电子合约及所述电子合约中对应的合约关键信息上传至区块链。
7.如权利要求1-6任意一项所述的一种电子签约的方法,其特征在于,所述第一算法包括MD5码哈希算法,所述第二算法包括椭圆加密算法。
8.如权利要求1-6任意一项所述的一种电子签约的方法,其特征在于,所述合约关键信息包括合约MD5码及变动数据信息。
9.一种电子签约***,其特征在于,所述电子签约***包括:区块链、包括存储器和处理器的第一签约设备、包括存储器和处理器的第二签约设备及存储在所述第一签约设备的存储器和所述第二签约存储器上并可被所述第一签约设备的处理器和所述第二签约处理器运行的电子签约程序,所述电子签约程序被执行时实现如权利要求1至8中任意一项所述的电子签约方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有电子签约程序,所述电子签约程序被处理器执行时实现如权利要求1至8中任意一项所述的电子签约方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911272781.9A CN111311172A (zh) | 2019-12-12 | 2019-12-12 | 电子签约的方法、***和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911272781.9A CN111311172A (zh) | 2019-12-12 | 2019-12-12 | 电子签约的方法、***和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111311172A true CN111311172A (zh) | 2020-06-19 |
Family
ID=71159697
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911272781.9A Pending CN111311172A (zh) | 2019-12-12 | 2019-12-12 | 电子签约的方法、***和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111311172A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112270556A (zh) * | 2020-11-23 | 2021-01-26 | 苏州园启软件有限公司 | 电子合同的真实性验证方法、电子设备及存储介质 |
CN112801663A (zh) * | 2021-02-05 | 2021-05-14 | 北京众享比特科技有限公司 | 区块链存证方法、装置、***、设备和介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109035024A (zh) * | 2018-08-15 | 2018-12-18 | 杭州链汇通区块链科技有限公司 | 电子签约的方法、***和存储介质 |
-
2019
- 2019-12-12 CN CN201911272781.9A patent/CN111311172A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109035024A (zh) * | 2018-08-15 | 2018-12-18 | 杭州链汇通区块链科技有限公司 | 电子签约的方法、***和存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112270556A (zh) * | 2020-11-23 | 2021-01-26 | 苏州园启软件有限公司 | 电子合同的真实性验证方法、电子设备及存储介质 |
CN112801663A (zh) * | 2021-02-05 | 2021-05-14 | 北京众享比特科技有限公司 | 区块链存证方法、装置、***、设备和介质 |
CN112801663B (zh) * | 2021-02-05 | 2024-03-19 | 北京众享比特科技有限公司 | 区块链存证方法、装置、***、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220058655A1 (en) | Authentication system | |
CN109862041B (zh) | 一种数字身份认证方法、设备、装置、***及存储介质 | |
CN111628868B (zh) | 数字签名生成方法、装置、计算机设备和存储介质 | |
CN109951489B (zh) | 一种数字身份认证方法、设备、装置、***及存储介质 | |
CN109756485B (zh) | 电子合同签署方法、装置、计算机设备及存储介质 | |
CN109035024A (zh) | 电子签约的方法、***和存储介质 | |
US9124571B1 (en) | Network authentication method for secure user identity verification | |
CN108234442B (zh) | 获取合约的方法、***及可读存储介质 | |
CN108833431B (zh) | 一种密码重置的方法、装置、设备及存储介质 | |
KR102284396B1 (ko) | 생체 정보 기반의 pki 키 생성 방법 및 이를 이용한 키 생성 장치 | |
US20130104218A1 (en) | Method and system for securely accessing to protected resource | |
JP2017532707A (ja) | アウト・オブ・バンド・データから導出されるデジタルフィンガープリント信号に基づくユーザ検証 | |
CN106209730B (zh) | 一种管理应用标识的方法及装置 | |
CN111062059B (zh) | 用于业务处理的方法和装置 | |
CN113709115A (zh) | 认证方法及装置 | |
CN114168922B (zh) | 一种基于数字证书的用户ca证书生成方法和*** | |
CN111311172A (zh) | 电子签约的方法、***和存储介质 | |
CN109978543B (zh) | 一种合同签署的方法、装置、电子设备及存储介质 | |
CN107733645B (zh) | 加密通信认证方法和*** | |
CN111681141B (zh) | 文件认证方法、文件认证装置及终端设备 | |
CN108574658B (zh) | 一种应用登录方法及其设备 | |
CN110830264B (zh) | 业务数据验证方法、服务器、客户端及可读存储介质 | |
CN111245594B (zh) | 一种基于同态运算的协同签名方法及*** | |
CN110175471B (zh) | 一种档案的存储方法及*** | |
JP7250960B2 (ja) | ユーザのバイオメトリクスを利用したユーザ認証および署名装置、並びにその方法 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200619 |
|
WD01 | Invention patent application deemed withdrawn after publication |