签名验证方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:22390293 阅读:24 留言:0更新日期:2019-10-29 07:17
本申请提供了一种签名验证方法、装置、计算机设备和存储介质,其中,该方法包括:第一用户端生成第一部分公钥和第一部分私钥;第一用户端向证书授权中心发送证书请求,其中,证书请求中携带有第一用户端的身份信息和第一部分公钥;第一用户端接收证书授权中心响应于证书请求返回的第二部分私钥和隐式证书,其中,第二部分私钥和隐式证书由证书授权中心根据身份信息和第一部分公钥生成;第一用户端根据第一部分私钥和第二部分私钥生成第一用户端的完整私钥;第一用户端根据完整私钥生成签名,并将隐式证书和签名发送至第二用户端,使得第二用户端根据隐式证书验证签名的有效性。上述方案中的签名验证方法能够提高签名验证效率并同时节约带宽。

Signature verification methods, devices, computer equipment and storage media

【技术实现步骤摘要】
签名验证方法、装置、计算机设备和存储介质
本申请涉及信息安全
,特别涉及一种签名验证方法、装置、计算机设备和存储介质。
技术介绍
随着网络信息技术应用的日渐普及,网络信息安全越来越成为一个倍受关注的课题。在解决网络信息安全问题的所有机制与方案当中,用户身份认证通常是最基本的一步。物联网是新一代网络信息技术的重要组成部分,面临着严峻的网络信息安全问题,身份认证是信息安全的第一道防线,可以通过验证签名的有效性来进行身份认证。然而,由于物联网应用环境中的CPU运算能力有限、存储空间有限且网络带宽有限等等,因此在物联网应用场景应用传统PKI体系进行签名验证时存在诸多弊端,至少包括签名验证效率低。针对上述问题,目前尚未提出有效的解决方案。
技术实现思路
本申请实施例提供了一种签名验证方法、装置、计算机设备和存储介质,以解决现有技术中签名验证效率低的问题。本申请实施例提供了一种签名验证方法,包括:第一用户端生成第一部分公钥和第一部分私钥;第一用户端向证书授权中心发送证书请求,其中,证书请求中携带有第一用户端的身份信息和第一部分公钥;第一用户端接收证书授权中心响应于证书请求返回的第二部分私钥和隐式证书,其中,第二部分私钥和隐式证书由证书授权中心根据身份信息和第一部分公钥生成;第一用户端根据第一部分私钥和第二部分私钥生成第一用户端的完整私钥;第一用户端根据完整私钥生成签名,并将隐式证书和签名发送至第二用户端,使得第二用户端根据隐式证书验证签名的有效性。在一个实施例中,第一用户端生成第一部分公钥和第一部分私钥,包括:获取椭圆曲线相关参数;根据椭圆曲线相关参数生成第一部分公钥和第一部分私钥。在一个实施例中,证书授权中心根据身份信息和第一部分公钥生成第二部分私钥和隐式证书,包括:接收第一用户端发送的证书请求,其中,证书请求中携带有证书相关参数、第一用户端的身份信息和第一部分公钥;生成椭圆曲线相关参数和哈希函数;根据椭圆曲线相关参数生成临时公钥和临时私钥;根据第一部分公钥和临时公钥生成第二部分公钥,根据证书相关参数构造证书信息,并根据身份信息、第二部分公钥和证书信息生成隐式证书;根据系统公钥、系统私钥、证书信息、椭圆曲线相关参数、哈希函数、身份信息、第二部分公钥和临时私钥生成第二部分私钥,其中,系统私钥为证书授权中心的私钥,系统公钥为证书授权中心的公钥。在一个实施例中,第一用户端根据第一部分私钥和第二部分私钥生成第一用户端的完整私钥,包括:根据第一部分私钥、第二部分私钥和椭圆曲线相关参数生成完整私钥。在一个实施例中,第二用户端根据隐式证书验证签名的有效性,包括:接收第一用户端发送的隐式证书和签名,其中,隐式证书中携带有第一用户端的身份信息、证书信息和第二部分公钥;获取哈希函数、椭圆曲线相关参数以及系统公钥;根据证书信息验证隐式证书的有效性;在验证隐式证书有效的情况下,根据哈希函数、系统公钥、身份信息、第二部分公钥和证书信息生成第一用户端的完整公钥;根据完整公钥验证签名的有效性,并将验证结果返回至第一用户端。在一个实施例中,第一用户端根据椭圆曲线相关参数生成第一部分公钥和第一部分私钥,包括按照以下公式生成第一部分公钥:X=x·G;其中,X为第一部分公钥,x为第一部分私钥,x∈[1,q-1],G为椭圆曲线E上的基点,q为G的阶,E为定义在有限域Fp上的椭圆曲线,p为大素数,Fp为包含p个元素的有限域,p、q和G为椭圆曲线相关参数。在一个实施例中,证书授权中心根据身份信息和第一部分公钥生成第二部分私钥,包括按照以下公式生成第二部分私钥:y=(l·m+w)modq;其中,y为第二部分私钥,m为系统私钥,w为临时私钥,w∈[1,q-1],q为G的阶,G为椭圆曲线E上的基点,E为定义在有限域Fp上的椭圆曲线,p为大素数,Fp为包含p个元素的有限域,p、q和G为椭圆曲线相关参数,l=H(Mx||My||ID||Yx||Yy||Cif),其中,H为哈希函数,Mx、My为M的坐标,Yx、Yy为Y的坐标,其中,M为系统公钥,Y为第二部分公钥,ID为身份信息,Cif为证书信息,其中,Y=X+W,X为第一部分公钥,W为临时公钥,其中,W=w·G。在一个实施例中,第一用户端根据第一部分私钥和第二部分私钥生成第一用户端的完整私钥,包括按照以下公式生成完整私钥:s=(x+y)modq;其中,s为完整私钥,x为第一部分私钥,y为第二部分私钥,q为G的阶,G为椭圆曲线E上的基点,E为定义在有限域Fp上的椭圆曲线,p为大素数,Fp为包含p个元素的有限域,p、q和G为椭圆曲线相关参数。在一个实施例中,第二用户端根据哈希函数、系统公钥、身份信息、第二部分公钥和证书信息生成第一用户端的完整公钥,包括按照以下公式生成完整公钥:P=l·M+Y;其中,P为完整公钥,M为系统公钥,Y为第二部分公钥,l=H(Mx||My||ID||Yx||Yy||Cif),其中,H为哈希函数,Mx、My为M的坐标,Yx、Yy为Y的坐标,ID为身份信息,Cif为证书信息,ID为身份信息。本申请实施例还提供了一种签名验证装置,位于第一用户端中,包括:第一生成模块,用于生成第一部分公钥和第一部分私钥;发送模块,用于向证书授权中心发送证书请求,其中,证书请求中携带有第一用户端的身份信息和第一部分公钥;接收模块,用于接收证书授权中心响应于证书请求返回的第二部分私钥和隐式证书,其中,第二部分私钥和隐式证书由证书授权中心根据身份信息和第一部分公钥生成;第二生成模块,用于根据第一部分私钥和第二部分私钥生成第一用户端的完整私钥;签名模块,用于根据完整私钥生成签名,并将隐式证书和签名发送至第二用户端,使得第二用户端根据隐式证书验证签名的有效性。本申请实施例还提供一种计算机设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述任意实施例中所述的签名验证方法的步骤。本申请实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述任意实施例中所述的签名验证方法的步骤。在本申请实施例中,提供了一种签名验证方法,第一用户端生成第一部分公钥和第一部分私钥,并向证书授权中心发送携带有第一用户端的身份信息和第一部分公钥的证书请求;证书授权中心响应于证书请求根据身份信息和第一部分公钥生成第二部分私钥和隐式证书,并将生成的第二部分私钥和隐式证书发送至第一用户端;第一用户端根据第一部分私钥和第二部分私钥生成第一用户端的完整私钥,根据完整私钥生成签名,并将隐式证书和签名发送至第二用户端,使得第二用户端根据隐式证书验证签名的有效性。上述方案中,由于隐式证书是基于第一部分公钥生成的,生成的隐式证书中仅包含部分公钥,因此可以有效减小证书长度,使得所占用的存储空间更小并且在物联网带宽资源受限的场景下传输效率更高;进一步地,由于隐式证书是基于身份信息生成的,因此更适用于物联网场景下的身份管理;更进一步地,由于相比于显式证书,隐式证书中不包含证书授权中心对证书属性的签名,在第二用户端根据隐式证书验证签名有效性时可以减少一次验签时间,因而在物联网计算能力有限的场景下可提高验证速度。通过上述方案解决了现有的签名验证的效率低下的技术问题,达到了有效提升验证效率、降低对设备和网络性能本文档来自技高网...

【技术保护点】
1.一种签名验证方法,其特征在于,包括:第一用户端生成第一部分公钥和第一部分私钥;所述第一用户端向证书授权中心发送证书请求,其中,所述证书请求中携带有所述第一用户端的身份信息和所述第一部分公钥;所述第一用户端接收所述证书授权中心响应于所述证书请求返回的第二部分私钥和隐式证书,其中,所述第二部分私钥和所述隐式证书由所述证书授权中心根据所述身份信息和所述第一部分公钥生成;所述第一用户端根据所述第一部分私钥和所述第二部分私钥生成所述第一用户端的完整私钥;所述第一用户端根据所述完整私钥生成签名,并将所述隐式证书和所述签名发送至第二用户端,使得所述第二用户端根据所述隐式证书验证所述签名的有效性。

【技术特征摘要】
1.一种签名验证方法,其特征在于,包括:第一用户端生成第一部分公钥和第一部分私钥;所述第一用户端向证书授权中心发送证书请求,其中,所述证书请求中携带有所述第一用户端的身份信息和所述第一部分公钥;所述第一用户端接收所述证书授权中心响应于所述证书请求返回的第二部分私钥和隐式证书,其中,所述第二部分私钥和所述隐式证书由所述证书授权中心根据所述身份信息和所述第一部分公钥生成;所述第一用户端根据所述第一部分私钥和所述第二部分私钥生成所述第一用户端的完整私钥;所述第一用户端根据所述完整私钥生成签名,并将所述隐式证书和所述签名发送至第二用户端,使得所述第二用户端根据所述隐式证书验证所述签名的有效性。2.根据权利要求1所述的方法,其特征在于,所述第一用户端生成第一部分公钥和第一部分私钥,包括:获取椭圆曲线相关参数;根据所述椭圆曲线相关参数生成第一部分公钥和第一部分私钥。3.根据权利要求2所述的方法,其特征在于,所述证书授权中心根据所述身份信息和所述第一部分公钥生成所述第二部分私钥和所述隐式证书,包括:接收所述第一用户端发送的证书请求,其中,所述证书请求中携带有证书相关参数、所述第一用户端的身份信息和所述第一部分公钥;生成所述椭圆曲线相关参数和哈希函数;根据所述椭圆曲线相关参数生成临时公钥和临时私钥;根据所述第一部分公钥和所述临时公钥生成第二部分公钥,根据所述证书相关参数构造证书信息,并根据所述身份信息、所述第二部分公钥和所述证书信息生成隐式证书;根据系统公钥、系统私钥、所述证书信息、所述椭圆曲线相关参数、所述哈希函数、所述身份信息、所述第二部分公钥和所述临时私钥生成第二部分私钥,其中,所述系统私钥为所述证书授权中心的私钥,所述系统公钥为所述证书授权中心的公钥。4.根据权利要求2所述的方法,其特征在于,所述第一用户端根据所述第一部分私钥和所述第二部分私钥生成所述第一用户端的完整私钥,包括:根据所述第一部分私钥、所述第二部分私钥和所述椭圆曲线相关参数生成所述完整私钥。5.根据权利要求3所述的方法,其特征在于,所述第二用户端根据所述隐式证书验证所述签名的有效性,包括:接收所述第一用户端发送的隐式证书和签名,其中,所述隐式证书中携带有所述第一用户端的身份信息、所述证书信息和所述第二部分公钥;获取所述哈希函数、所述椭圆曲线相关参数以及所述系统公钥;根据所述证书信息验证所述隐式证书的有效性;在验证所述隐式证书有效的情况下,根据所述哈希函数、所述系统公钥、所述身份信息、所述第二部分公钥和所述证书信息生成所述第一用户端的完整公钥;根据所述完整公钥验证所述签名的有效性,并将验证结果返回至所述第一用户端。6.根据权利要求2所述的方法,其特征在于,所述第一用户端根据所述椭圆曲线相关参数生成第一部分公钥和第一部分私钥,包括按照以下公式生成所述第一部分公钥:X=x·G;其中,X为所述第一部分公钥,x为所述第一部分私钥,x∈[1,q-1],G为椭圆曲线E上的基点,q为G的阶,E为定义在有限域Fp上的椭圆曲线,p...

【专利技术属性】
技术研发人员:商建伟张心中罗璎珞刘建行周唯
申请(专利权)人:济南晟安信息技术有限公司国汽北京智能网联汽车研究院有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1