基于H5的电子合同制作方法、装置、设备及介质与流程

文档序号:14912084发布日期:2018-07-10 23:41阅读:564来源:国知局

本发明涉及电子交易技术领域,尤其涉及一种基于H5的电子合同制作方法、装置、设备及介质。



背景技术:

随着信息时代的迅速发展,通过网络直接签署电子合同,避免纸质合同签署、交换和保存过程的麻烦,逐渐成为电子商务领域引人注意的发展方向。目前电子合同的签署需要交易双方将电子合同上传到第三方电子合同签约平台,由第三方电子合同签约平台加盖签章,以完成合同的签订,使得电子合同的使用具有局限性。并且,当前电子合同签署过程采用的的签名插件与上传电子签名的终端设备所采用的操作系统(如智能手机中采用android系统或ios系统)相匹配,因此,对每一种操作系统均需开发一套对应的签名操作,在双方或多方用户签署电子合同时,需分别调用对应的签名插件进行处理,使得电子合同签署的效率较低,不利于电子合同的推广使用。



技术实现要素:

本发明实施例提供一种基于H5的电子合同制作方法、装置、设备及介质,以解决当前电子合同的签署具有局限性,不利于电子合同的推广使用的问题。

第一方面,本发明实施例提供一种基于H5的电子合同制作方法,包括:

获取电子合同制作请求,所述电子合同制作请求包括电子合同ID;

基于所述电子合同ID,获取与所述电子合同ID对应的电子合同模板;所述电子合同模板包括合同内容框架和签名模块,所述签名模块与基于H5的签名插件关联;

采用所述签名插件,获取待验证电子签名;

对所述待验证电子签名进行验证,获取目标电子签名;

基于所述目标电子签名和所述合同内容框架,获取目标电子合同。

第二方面,本发明实施例提供一种基于H5的电子合同制作装置,其特征在于,包括:

电子合同制作请求模块,用于获取电子合同制作请求,所述电子合同制作请求包括电子合同ID;

电子合同模板获取模块,用于基于所述电子合同ID,获取与所述电子合同ID对应的电子合同模板;所述电子合同模板包括合同内容框架和签名模块,所述签名模块与基于H5的签名插件关联;

待验证电子签名获取模块,用于采用所述签名插件,获取待验证电子签名;

目标电子签名获取模块,用于对所述待验证电子签名进行验证,获取目标电子签名;

目标电子合同获取模块,用于基于所述目标电子签名和所述合同内容框架,获取目标电子合同。

第三方面,本发明实施例提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述基于H5的电子合同制作方法的步骤。

第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述基于H5的电子合同制作方法的步骤。

本发明实施例提供的基于H5的电子合同制作方法、装置、设备及介质中,通过获取电子合同制作请求,基于电子合同制作请求中的电子合同ID获取对应的电子合同模板,以使用户无需手动制作电子合同,提高电子合同的制作效率。电子合同模板包括合同内容框架和签名模块,签名模块与基于H5的签名插件关联。之后,采用基于H5的签名插件,获取待验证电子签名,提高电子签名的渲染速度。再对待验证电子签名进行验证,获取目标电子签名,以使目标电子签名的安全性更高。最后,基于目标电子签名和合同内容框架中填充的合同内容,获取目标电子合同,使得电子合同的制作和签署过程简单方便。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例1中提供的基于H5的电子合同制作方法的一流程图。

图2是图1中步骤S40的一具体示意图。

图3是图2中步骤S41的一具体示意图。

图4是图2中步骤S42的一具体示意图。

图5是图4中步骤S422的一具体示意图。

图6是本发明实施例1中提供的基于H5的电子合同制作方法的另一流程图。

图7是本发明实施例2中提供的基于H5的电子合同制作装置的一原理框图。

图8是本发明实施例4中提供的终端设备的一示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例1

图1示出本实施例中基于H5的电子合同制作方法的流程图。该基于H5的电子合同制作方法可应用在终端设备上,用于完成电子合同制作过程,可实现无需将电子合同上传到第三方电子合同签约平台加盖签章,即可自主完成电子合同的签署。本实施例中,终端设备包括但不限于智能手机。终端设备与服务器相关联。如图1所示,该基于H5的电子合同制作方法包括如下步骤:

S10:获取电子合同制作请求,电子合同制作请求包括电子合同ID。

其中,电子合同制作请求是用于触发终端设备制作电子合同的请求。电子合同ID是用于唯一识别电子合同模板的标识,步骤S10中具体指用户选择的电子合同模板对应的标识。本实施例中,在电子合同的制作界面上以分级列表的形式对电子合同进行分类管理,例如,保险合同包括财产保险合同和人身保险合同等,以方便用户选择使用,提升用户体验度。

S20:基于电子合同ID,获取与电子合同ID对应的电子合同模板,电子合同模板包括合同内容框架和签名模块,签名模块与基于H5的签名插件关联。

具体地,服务器会预先存储有与各类型电子合同相对应的电子合同模板,该电子合同模板包括合同内容框架和签名模块。其中,合同内容框架是指电子合同模板中需要填充合同内容的区域,合同内容框架上可显示合同当事人、合同标的物、合同地点、合同期限和违约责任等合同条款。签名模块是指在电子合同模板中用于签署电子签名的区域。其中,合同内容框架中具体的合同期限、合同当事人和合同地点等内容,用户可根据需要自主设置。该电子签名模块依据电子合同模板的类型设置不同数量的签名模块,例如,买卖合同中需要甲乙双方的电子签名,因此需配置两个签名模块;赠与合同只需一方的电子签名,因此需配置一个签名模块。基于H5的签名插件是指基于H5制作的电子签名工具。由于H5(浏览器环境)可应用在android和ios系统中,使得应用android和ios系统的终端设备(智能手机)均可使用该基于H5电子的签名插件,无需分别选择与其操作系统相对应的签名插件。

进一步地,在电子合同的制作界面上显示电子合同列表,用户还可以采用拖拽或点击选择的方式输出电子合同制作请求,以选取所要制作的电子合同模板,操作简单,增强用户体验。

本实施例中,通过电子合同ID查询服务器的数据库,获取与电子合同ID对应的电子合同模板,以使用户可直接调用预先存储的电子合同模板,利用该电子合同模板制作电子合同,有利于提高电子合同的制作效率。可以理解地,数据库中可以存储但不限于买卖合同、赠与合同、借款合同、租赁合同、建设工程合同、运输合同和居间合同等电子合同模板,用户可通过更改或添加电子合同模板上具体的合同条款的内容,以获取用户需要的合同内容。

S30:采用签名插件,获取待验证电子签名。

其中,待验证电子签名是用户输入的用于进行验证的电子签名。具体地,用户可点击电子合同模板中的签名模块,即可触发与签名模块关联的签名插件进行签名,该签名插件包括签名区域和保存按钮,用户在签名完成时,点击签名插件中的保存按钮,即可使签名插件通过canvas元素中自带的获取签名的方法获取用户保存的电子签名,该电子签名即待验证电子签名。

进一步地,签名插件是开发人员预先在智能手机或平板等终端设备上采用共有的H5(浏览器环境)的canvas制作的签名插件。HTML5的canvas元素是使用JavaScript在网页上绘制图像的前端元素,具有渲染速度快、资源占用率低的优点。本实施例中,由于H5(浏览器环境)可应用在android和ios系统中,使得应用android和ios系统的终端设备(包括但不限于本实施例中的智能手机)均可使用该基于H5的签名插件,以使开发人员无需开发两套电子签名插件即可适配两种系统(android和ios)的目的。

S40:对待验证电子签名进行验证,获取目标电子签名。

其中,目标电子签名是指对待验证电子签名进行验证,并在验证通过时所获取的电子签名。本实施例中,对待验证电子签名进行验证包括身份验证,以判断是否为用户本人,提高了目标电子签名的安全性,再通过第三方验证的验证,进一步提高电子签名的安全性。

S50:基于目标电子签名和合同内容框架,获取目标电子合同。

具体地,将步骤S40获取到的目标电子签名填充到与电子合同模板的签名模块中,将合同内容相应的填充到电子合同模板的合同内容框架中,以获取目标电子合同。其中,合同内容是根据符合签署的具体情况输入的内容,包括合同当事人、合同标的物、合同时间、合同地点、合同金额和违约责任等内容。具体地,电子合同模板的合同内容框架上可设置若干默认合同条款。用户根据具体情况调整默认合同条款时,可通过在合同内容框架中填充具体的合同内容,以完成具体合同的拟订。可以理解地,在电子合同模板的合同内容框架上填充合同内容后,将目标电子签名填充到相应的签名模块中预留的区域上,即可完成目标电子合同的签署,使电子合同的制作过程自动化程度高,有利于提高电子合同的制作效率。

本实施例中,通过获取电子合同制作请求,该电子合同制作请求包括电子合同ID,基于该电子合同ID获取对应的电子合同模板,以使用户无需手动制作电子合同,提高电子合同的制作效率。电子合同模板包括合同内容框架和签名模块,签名模块与基于H5的签名插件关联。之后,采用基于H5的签名插件,获取待验证电子签名,提高电子签名的渲染速度。再对待验证电子签名进行身份验证和第三方验证的双重验证,获取目标电子签名,以使目标电子签名的安全性更高。最后,基于目标电子签名和合同内容框架中填充的合同内容,获取目标电子合同,使得电子合同的制作和签署过程简单方便,有利于电子合同的推广应用。

在一具体实施方式中,如图2所示,步骤S40中,即对待验证电子签名进行验证,获取目标电子签名,具体包括如下步骤:

S41:对待验证电子签名进行身份验证,获取原始电子签名。

其中,原始电子签名是对待验证电子签名进行身份验证,并在身份验证通过时所获取的电子签名。具体地,服务器会对电子签名进行身份验证,以判断该待验证电子签名是否为用户本人签署的。若该待验证电子签名是用户本人签署的,则将该待验证电子签名作为原始电子签名。若该待验证电子签名不是用户本人签署的,则发送提醒信息到签署该电子合同的用户对应的终端,以使用户能够第一时间了解合同签署的进度。

S42:将原始电子签名发送到第三方认证机构,获取第三方认证机构对原始电子签名进行验证的目标电子签名。

其中,目标电子签名是对原始电子签名进行第三方验证,并在验证通过时获取的电子签名。第三方认证机构是除了合同当事人之外的认证机构,能够验证合同当事人的真实合法身份,最大程度上的杜绝虚假信息,保证合同当事人利益。具体地,对待验证电子签名进行身份验证时,若验证确定待验证电子签名为用户本人签署时,获取原始电子签名,并将原始电子签名发送到第三方认证机构,以获取第三方认证机构对原始电子签名进行验证的目标电子签名。

进一步地,在采用目标电子签名进行签署合同时,服务器还会根据数字时间戳技术读取签署合同的时间。其中。时间戳有效证明了电子合同产生的时间及内容完整性,可解决电子合同的内容和时间易被人为篡改、证据效力低和当事人举证困难等问题,按照《中华人民共和国电子签名法》的有关规定,加盖了时间戳的数据电文(即电子合同)可以作为有效的法律证据,达到“不可否认”或“抗抵赖”的目的,以增强电子合同的法律效力。

本实施例中,对待验证电子签名进行身份验证,在该验证电子合同被验证为用户本人签名时,将该待验证电子签名作为原始电子签名,并将原始电子签名发送到第三方认证机构,以便获取第三方认证机构对原始电子签名进行验证的目标电子签名。通过对待验证电子签名进行身份验证和第三方验证的双重验证,获取目标电子签名,使得目标电子签名的安全性更高。

在一具体实施方式中,电子合同制作请求还包括用户ID。其中,用户ID是用于识别用户的唯一标识。如图3所示,步骤S41中,即对待验证电子签名进行身份验证,获取原始电子签名,具体包括如下步骤:

S411:获取与用户ID对应的历史电子签名。

历史电子签名是指多次采集用户的电子签名轨迹所形成的电子签名。具体地,服务器预先存储与用户ID相关联的历史电子签名,基于用户ID查找到与用户ID对应的历史电子签名。本实施例中,用户预先在终端设备上进行注册,然后服务器采集几次电子签名的采样数据后,从中提取签名特征,并将特征加密后存入数据库,以获取历史电子签名。

S412:对历史电子签名和原始电子签名进行特征提取,分别获取历史签名特征和原始签名特征。

具体地,对原始电子签名进行特征提取的过程如下:首先将原始电子签名进行预处理,获取第一电子签名。其中,预处理是对原始电子签名中相同时刻的连续点,用一个点来替代,具体可以将所有点进行取平均运算来获取。然后再通过以时间为自变量将第一电子签名的每一笔画的终点与下一笔画的起点相连,形成的坐标为虚拟坐标点,则包含虚拟坐标点的原始电子签名可以表示为等时间间隔的空间离散坐标点序列{Dx(t),Dy(t),Dz(t)},其中,Dx(t)是笔尖运动在直角坐标系X方向上t时刻的坐标,Dy(t)是笔尖运动在直角坐标系Y轴方向上t时刻的坐标,Dz(t)为垂直方向的压力级数。对Dx(t),Dy(t),Dz(t)分别做微分运算,得到vx(t),vy(t),vz(t),Ax(t),Ay(t),Az(t)六个导出信号,其中,vx(t)是直角坐标系X轴方向上的速度分量,vy(t)是直角坐标系Y轴方向上的速度分量Ax(t)为X轴方向上的加速速度分量,Ay(t)为Y轴方向上的加速速度分量。vz(t)为压力方向上的速度分量,Az(t)为压力方向上的加速度分量。根据vx(t),vy(t),Ax(t),Ay(t),采用公式进一步计算笔尖运动的书写方向的速度V(t),角速度以获取原始签名特征为

历史签名特征的提取过程与原始签名特征的提取过程相同,以避免重复,在此不一一赘述。

S413:采用欧式距离算法计算历史签名特征和原始签名特征的欧式距离,获取特征相似度。

其中,欧氏距离(euclidean metric,又称欧几里得度量)是指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。任意两个n维向量a(Xi1,Xi2,...,Xin)与b(Xj1,Xj2,...,Xjn)的欧氏距离其中,历史签名特征可用向量a(Xi1,Xi2,...,Xin)表示,原始签名特征可用向量b(Xj1,Xj2,...,Xjn)来表示,Da,b表示特征相似度。具体地,通过计算历史签名特征和原始签名特征的欧式距离,以获取特征相似度,计算过程简单方便。

S414:若特征相似度达到预设相似度,获取原始电子签名。

其中,预设相似度是预先设置用于评价两个电子签名特征对应同一用户需要达到的相似度。本实施例中,该预设相似度可设置为0.5,即若步骤S413获取到的特征相似度达到0.5,则将该待验证电子签名判定为用户本人签署的电子签名,则将该待验证电子签名作为原始电子签名。若步骤S413获取到的特征相似度未达到0.5,则发送提醒信息到对应的终端。

在一具体实施方式中,如图4所示,步骤S42中,即将原始电子签名发送到第三方认证机构,获取第三方认证机构对原始电子签名进行验证的目标电子签名,具体包括如下步骤:

S421:采用信息-摘要算法对原始电子签名进行计算,获取第一信息摘要。

其中,第一信息摘要是采用信息-摘要算法对原始电子签名进行计算所获取的固定长度的字符串。信息-摘要(message-digest algorithm,以下简称MD)算法就是把任意长的输入信息串变化成固定长度的输出串的一种函数,一般用于产生信息摘要和加密密钥等信息。本实施例中,采用MD算法的第五版本,即MD5算法,MD5具有安全性高的特点,使得用户信息不易泄露,保护用户隐私。其中,第一信息摘要是指采用信息-摘要算法将无固定长度的原始字节串转换为固定长度(128位二进制)的字符串即第一信息摘要。

S422:采用RSA加密算法对第一信息摘要进行加密,获取加密后的原始电子签名,并将加密后的原始电子签名发送给第三方认证机构。

其中,RSA加密算法是目前最有影响力和最常用的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,安全性高,一般采用公钥加密,私钥解密的方式。本实施例中,采用RSA算法对第一信息摘要进行加密,获取加密后的原始电子签名,并将加密后的原始电子签名发送给第三方认证机构进行认证,以保证原始电子签名的安全性。

S423:获取第三方认证机构发送的目标电子签名,目标电子签名是第三方认证机构对加密后的原始电子签名进行验证处理后获得的电子签名。

其中,目标电子签名是第三方认证机构进行验证,并在验证通过时所获取到的电子签名。具体地,服务器会获取第三方认证机构验证通过的目标电子签名,以使服务器基于目标电子签名完成目标电子合同的制作。

具体地,第三方认证机构的验证过程如下:第三方认证系统对接收到加密后的原始电子签名进行解密(本实施例中可采用RSA算法获取的公钥进行解密),以获取解密后的原始电子签名,然后采用与步骤S422中相同的信息-摘要算法对解密后的原始电子签名进行计算,获取第二信息摘要。最后将第一信息摘要与第二信息摘要进行比对,若二者相同,则验证通过,获取对应的目标电子签名。

本实施例中,采用信息-摘要算法对原始电子签名进行计算,获取第一信息摘要,然后采用RSA算法对第一信息摘要进行加密,获取加密后的原始电子签名,并将加密后的原始电子签名发送给第三方认证机构,以保证原始电子签名的安全性。最后,获取第三方认证机构对加密后的原始电子签名进行验证处理后所获得的目标电子签名,以使获取到的目标电子签名的安全性。

在一具体实施方式中,如图5所示,步骤S422中,即采用RSA算法对第一信息摘要进行加密,获取加密后的原始电子签名,具体包括如下步骤:

S4221:基于两个随机素数,获取中间值。

其中,素数是指除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积的整数。具体地,通过随机生成两个随机素数,然后对两个随机素数进行相乘操作,获取中间值。可以理解地,采用中间值计算公式n=pq对两个随机素数进行计算,其中,n为中间值,p、q分别表示随机素数。

S4222:采用欧拉函数计算公式对两个随机素数进行计算,获取欧拉函数值,其中欧拉函数计算公式为f=(p-1)(q-1),p、q分别表示随机素数,f为欧拉函数值。

具体地,将两个随机素数分别减1得到两个差值,然后再对该两个差值进行相乘运算,获取乘积即欧拉函数值,可以理解地,采用欧拉函数计算公式f=(p-1)(q-1)对两个随机素数进行计算,获取欧拉函数值,其中,p、q分别表示随机素数,n为中间值,f为欧拉函数值。

S4223:任意选取与欧拉函数值互质的随机数。

具体地,任意选取一个与欧拉函数值互质的随机数,即选取一个与f互质的随机数e,且1<e<f(n)。本实施例中,可采用random()函数获取随机数e。其中,random函数是用于返回一个[0,num-1]间的随机数的函数,其中num为预先自定义的整数。

S4224:采用逆元计算公式对随机数和欧拉函数值进行处理,获取逆元,其中,逆元计算公式为d≡e-(1modp-1)(q-1)),d表示逆元,e表示随机数。

具体地,采用逆元计算公式de≡1mod(p-1)(q-1)对随机数和欧拉函数值进行处理,以获取逆元。其中,d表示逆元,e表示随机数,mod为取模运算即才采用1对欧拉函数值进行取余运算,为后续对第一信息摘要进行加密提供技术支持。

S4225:基于逆元和中间值对第一信息摘要进行加密,获取加密后的原始电子签名。

具体地,采用公式U≡Mdmodn求取私钥,其中,U为私钥,d为步骤4224中获取的逆元,n为步骤S4221获取的中间值,M为第一信息摘要。采用公式C≡Memodn求取公钥,其中,C为私钥,e为步骤4223中获取的随机数,n为步骤S4221获取的中间值,M为第一信息摘要。本实施例中,采用私钥U进行加密,采用公钥C进行解密。

本实施例中,采用RSA加密算法对第一信息摘要进行加密,获取加密后的原始电子签名,并将加密后的原始电子签名发送给第三方认证机构进行认证,以保证原始电子签名的安全性。

在一具体实施方式中,在步骤S10之前,如图6所示,该基于H5的电子合同制作方法还包括步骤S60:创建电子合同模板,该电子合同模板与电子合同ID相关联,以便基于该电子合同ID获取对应的电子合同模板。步骤S60具体包括如下步骤:

S61:获取电子合同模板创建请求,电子合同模板创建请求包括电子合同ID和/或电子合同名称。

其中,电子合同模板创建请求是用于创建电子合同模板的请求。电子合同ID是用于唯一识别电子合同模板的标识,步骤S61中具体指用户所要创建的电子合同模板对应的标识。合同名称是指用户所要创建的电子合同模板对应的名称。可以理解地,该电子合同ID与步骤S10中的电子合同ID保持一致。本实施例中,合同类型包括但不限于买卖合同、赠与合同、借款合同、租赁合同、建设工程合同、运输合同和居间合同等电子合同模板,能够满足用户的不同需求,提升用户体验。

S62:根据电子合同ID和/或电子合同名称,获取电子合同页面,电子合同页面包括合同内容框架和签名模块。

具体地,根据电子合同ID和/或电子合同名称,查找数据库,以获取电子合同页面,对电子页面进行模块划分,以获取合同内容框架和签名模块。然后对合同内容框架设置合同格式和填充默认的合同条款。其中,默认的合同条款包括但不限于《合同法》中规定的必需条款,例如合同的效力。合同格式包括但不限于电子合同的字体、段落和行距等。本实施例中,默认的合同条款还可根据需要进行更改或添加,以满足用户的需求。

S63:给签名模块创建跳转到基于H5的签名插件的链接,以获取电子合同模板。

具体地,给签名模块创建跳转到基于H5的签名插件的链接,以便于后续调用该电子合同模板制作电子合同时,可使该电子合同模板中的签名模块显示电子签名界面,以便于用户在该电子签名界面中输入待验证电子签名,为实现电子合同制作提供基础。

本实施例中,通过预先创建电子合同模板为后续电子合同制作调用,以使电子合同的制作过程中,可直接调用预先创建好的电子合同模板而无需拟定电子合同的所有条款内容,可以基于调用电子合同模板中部分内容,并在合同内容框架上输入具体合同的合同内容,即可实现电子合同制作,有助于节省电子合同制作时间,降低工作量,提高工作效率。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

实施例2

图7示出与实施例1中基于H5的电子合同制作方法一一对应的基于H5的电子合同制作装置的原理框图。如图7所示,该基于H5的电子合同制作装置包括电子合同制作请求获取模块10、电子合同模板获取模块20、待验证电子签名获取模块30、目标电子签名获取模块40、目标电子合同获取模块50和电子合同模板创建模块60。其中,电子合同制作请求获取模块10、电子合同模板获取模块20、待验证电子签名获取模块30、目标电子签名获取模块40、目标电子合同获取模块50和电子合同模板创建模块60的实现功能与实施例1中基于H5的电子合同制作方法对应的步骤一一对应,为避免赘述,本实施例不一一详述。

电子合同制作请求获取模块10,用于获取电子合同制作请求,电子合同制作请求包括电子合同ID。

电子合同模板获取模块20,用于基于电子合同ID,获取与电子合同ID对应的电子合同模板。电子合同模板包括合同内容框架和签名模块,签名模块与基于H5的签名插件关联。

待验证电子签名获取模块30,用于采用签名插件,获取待验证电子签名。

目标电子签名获取模块40,用于对待验证电子签名进行验证,获取目标电子签名。

目标电子合同获取模块50,用于基于目标电子签名和合同内容框架,获取目标电子合同。

优选地,目标电子签名获取模块40包括原始电子签名获取单元41和目标电子签名获取单元42。

原始电子签名获取单元41,用于对待验证电子签名进行身份验证,获取原始电子签名。

目标电子签名获取单元42,用于将原始电子签名发送到第三方认证机构,获取第三方认证机构对原始电子签名进行验证的目标电子签名。

电子合同制作请求还包括用户ID。

优选地,原始电子签名获取单元41包括历史电子签名获取单元411、签名特征提取单元412、特征相似度获取单元413和原始电子签名获取单元414。

历史电子签名获取单元411,用于获取与用户ID对应的历史电子签名。

签名特征提取单元412,用于对历史电子签名和原始电子签名进行特征提取,分别获取历史签名特征和原始签名特征。

特征相似度获取单元413,用于采用欧式距离算法计算历史签名特征和原始签名特征的欧式距离,获取特征相似度。

原始电子签名获取单元414,用于若特征相似度达到预设相似度,获取原始电子签名。

目标电子签名获取单元42包括第一信息摘要获取子单元421、第一信息摘要加密子单元422和目标电子签名获取子单元423。

第一信息摘要获取子单元421,用于采用信息-摘要算法对原始电子签名进行计算,获取第一信息摘要。

第一信息摘要加密子单元422,用于采用RSA加密算法对第一信息摘要进行加密,获取加密后的原始电子签名,并将加密后的原始电子签名发送给第三方认证机构。

目标电子签名获取子单元423,用于获取第三方认证机构发送的目标电子签名,目标电子签名是第三方认证机构对加密后的原始电子签名进行验证处理后获得的电子签名。

优选地,第一信息摘要加密子单元422包括中间值获取子单元4221、欧拉函数值获取子单元4222、随机数获取子单元4223、逆元获取子单元4224和加密后的原始电子签名获取子单元4225。

中间值获取子单元4221,用于基于两个随机素数,获取中间值。

欧拉函数值获取子单元4222,用于采用欧拉函数计算公式对两个随机素数进行计算,获取欧拉函数值,其中欧拉函数计算公式为f=(p-1)(q-1),p、q分别表示随机素数,f为欧拉函数值。

随机数获取子单元4223,用于任意选取与欧拉函数值互质的随机数。

逆元获取子单元4224,用于采用逆元计算公式对随机数和欧拉函数值进行处理,获取逆元。其中,逆元计算公式为de≡1mod(p-1)(q-1),d表示逆元,e表示随机数。

加密后的原始电子签名获取子单元4225,用于基于逆元和中间值对第一信息摘要进行加密,获取加密后的原始电子签名。

优选地,该基于H5的电子合同制作装置还包括电子合同模板创建模块60,用于创建电子合同模板。

电子合同模板创建模块60包括电子合同模板创建请求获取单元61、电子合同页面获取单元62和电子合同模板获取单元63。

电子合同模板创建请求获取单元61,用于获取电子合同模板创建请求,电子合同模板创建请求包括电子合同ID和/或电子合同名称。

电子合同页面获取单元62,用于根据电子合同ID和/或电子合同名称,获取电子合同页面。电子合同页面包括合同内容框架和签名模块。

电子合同模板获取单元63,用于给签名模块创建跳转到基于H5的签名插件的链接,以获取电子合同模板。

实施例3

本实施例提供一计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现实施例1中基于H5的电子合同制作方法,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现实施例2中基于H5的电子合同制作装置中各模块/单元的功能,为避免重复,这里不再赘述。

实施例4

图8是本发明一实施例提供的终端设备的示意图。如图8所示,该实施例的终端设备80包括:处理器81、存储器82以及存储在存储器82中并可在处理器81上运行的计算机程序83。处理器81执行计算机程序83时实现实施例1中基于H5的电子合同制作方法的步骤,例如图1所示的步骤S10至S50。或者,处理器81执行计算机程序83时实现实施例2中基于H5的电子合同制作装置各模块/单元的功能,例如图7所示模块10至60的功能。

示例性的,计算机程序83可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器82中,并由处理器81执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序83在终端设备80中的执行过程。例如,计算机程序83可以被分割成电子合同制作请求获取模块10、电子合同模板获取模块20、待验证电子签名获取模块30、目标电子签名获取模块40、目标电子合同获取模块50和电子合同模板创建模块60,各模块具体功能如实施例2所述,在此不一一赘述。

终端设备80可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。终端设备可包括,但不仅限于,处理器81、存储器82。本领域技术人员可以理解,图8仅仅是终端设备80的示例,并不构成对终端设备80的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如终端设备还可以包括输入输出设备、网络接入设备、总线等。

所称处理器81可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器82可以是终端设备80的内部存储单元,例如终端设备80的硬盘或内存。存储器82也可以是终端设备80的外部存储设备,例如终端设备80上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器82还可以既包括终端设备80的内部存储单元也包括外部存储设备。存储器82用于存储计算机程序以及终端设备所需的其他程序和数据。存储器82还可以用于暂时地存储已经输出或者将要输出的数据。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1