CN111600703B - 基于sm2的签名方法、系统、电子设备及存储介质 - Google Patents

基于sm2的签名方法、系统、电子设备及存储介质 Download PDF

Info

Publication number
CN111600703B
CN111600703B CN202010397349.9A CN202010397349A CN111600703B CN 111600703 B CN111600703 B CN 111600703B CN 202010397349 A CN202010397349 A CN 202010397349A CN 111600703 B CN111600703 B CN 111600703B
Authority
CN
China
Prior art keywords
information
component
blinding
electronic device
generating
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
Application number
CN202010397349.9A
Other languages
English (en)
Other versions
CN111600703A (zh
Inventor
黄海泉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jingdong Technology Holding Co Ltd
Jingdong Technology Information Technology Co Ltd
Original Assignee
Jingdong Technology Holding Co Ltd
Jingdong Technology Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jingdong Technology Holding Co Ltd, Jingdong Technology Information Technology Co Ltd filed Critical Jingdong Technology Holding Co Ltd
Priority to CN202010397349.9A priority Critical patent/CN111600703B/zh
Publication of CN111600703A publication Critical patent/CN111600703A/zh
Application granted granted Critical
Publication of CN111600703B publication Critical patent/CN111600703B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本公开提供一种基于SM2的签名方法、终端设备、服务器、系统、电子设备及存储介质,涉及计算机技术领域,具体涉及人工智能及区块链技术,包括:接收第二电子设备发送的与待签名信息对应的随机信息,根据随机信息确定签名结果的承诺分量,根据承诺分量生成论证信息,根据承诺分量和待签名信息,生成用于签名的第一电子设备的证明分量,将论证信息和第一电子设备的证明分量发送至第二电子设备,一方面,通过生成论证信息,避免了当第一电子设备的信息被盗取,进而实现了确保用户信息(包括用户的个人信息和财务相关信息等)的安全的技术效果;另一方面,通过结合第一电子设备和第二电子设备共同进行签名,可以提高签名的安全性和可靠性的技术效果。

Description

基于SM2的签名方法、系统、电子设备及存储介质
技术领域
本公开涉及计算机技术领域,具体涉及人工智能及区块链技术,尤其涉及一种基于SM2的签名方法、终端设备、服务器、系统、电子设备及存储介质。
背景技术
随着互联网技术的发展,信息传输或存储的安全性和可靠性称为了关注的焦点。
在现有技术中,服务器或者终端设备通常以软件的形式存储和使用私钥。比如,如果私钥完整的存储在服务器或者终端设备中,并基于服务器或者终端设备对待签名信息进行签名,那么攻击者通过权限提升则可以获得私钥,并根据私钥进行签名。
然而发明人在实现本申请的过程中,发现至少存在如下问题:通过终端设备进行签名,或者,通过服务器进行签名时,容易造成伪签名的问题。
发明内容
本公开提供一种基于SM2的签名方法、终端设备、服务器、系统、电子设备及存储介质,用以解决现有技术中的伪签名问题。
一方面,本公开实施例提供一种基于SM2的签名方法,应用于第一电子设备,所述方法包括:
接收第二电子设备发送的与待签名信息对应的随机信息;
根据所述随机信息确定用于签名的承诺分量;
根据所述承诺分量生成论证信息,所述论证信息用于验证所述第一电子设备的身份;
根据所述承诺分量和所述待签名信息生成,用于签名的所述第一电子设备的证明分量;
将所述论证信息和所述第一电子设备的证明分量发送至所述第二电子设备。
在一些实施例中,所述根据所述承诺分量生成论证信息包括:
通过与所述第二电子设备预先协商的零知识证明算法生成所述论证信息。
在一些实施例中,所述零知识证明算法包括论证模型,所述通过与所述第二电子设备预先协商的零知识证明算法生成所述论证信息包括:
获取所述论证模型;
根据所述论证模型对所述承诺分量进行计算,生成所述论证信息,其中,所述论证信息中包括待验证参数和验证参数。
在一些实施例中,在所述根据所述承诺分量和所述待签名信息生成,用于签名所述第一电子设备的证明分量之后,所述方法还包括:
生成盲化信息,所述盲化信息中包括所述第一电子设备的证明分量的盲化信息;
以及,所述将所述论证信息和所述第一电子设备的证明分量发送至所述第二电子设备包括:
将所述论证信息和所述盲化信息发送至所述第二电子设备。
在一些实施例中,所述盲化信息还包括所述第一电子设备的随机参数的盲化信息,所述生成盲化信息包括:
生成所述第一电子设备的私钥分片的所述随机参数;
根据所述第一电子设备的私钥分片和预设的公私钥对中的私钥生成第一盲化因子;
根据所述第一盲化因子对所述随机参数进行盲化处理,生成所述随机参数的盲化信息;
根据所述第一电子设备的私钥分片和所述承诺分量生成第二盲化因子;
根据所述第二盲化因子对所述第一电子设备的证明分量进行盲化处理,生成所述第一电子设备的证明分量的盲化信息。
另一方面,本公开实施例还提供了一种基于SM2的签名方法,应用于第二电子设备,所述方法包括:
生成并向第一电子设备发送与待签名信息对应的随机信息;
接收所述第一电子设备发送的论证信息和所述第一电子设备的证明分量,所述论证信息用于验证所述第一电子设备的身份;
根据所述论证信息对所述第一电子设备的身份进行验证;
若验证成功,则生成用于签名的所述第二电子设备的证明分量;
根据所述论证信息、所述第一电子设备的证明分量及所述第二电子设备的证明分量对所述待签名信息进行签名。
在一些实施例中,所述根据所述论证信息对所述第一电子设备的身份进行验证包括:
通过与所述第一电子设备预先协商的零知识证明算法进行验证。
在一些实施例中,所述零知识证明算法包括论证模型,所述论证信息中包括待验证参数和验证参数,所述通过与所述第二电子设备预先协商的零知识证明算法进行验证包括:
获取所述论证模型;
根据所述论证模型对所述论证参数进行计算;
若计算的结果与所述待验证参数相同,则验证成功。
在一些实施例中,若接收到的为盲化信息,则所述用于签名的所述第二电子设备的证明分量包括:
根据所述盲化信息、所述论证信息及所述第二电子设备的私钥分片生成所述第二电子设备的证明分量。
在一些实施例中,所述盲化信息还包括所述第一电子设备的随机参数的盲化信息,所述根据所述盲化信息、所述论证信息及所述第二电子设备的私钥分片生成所述第二电子设备的证明分量包括:
根据所述第二电子设备的私钥分片和预设的公私钥对中的私钥生成第三盲化因子;
根据所述第三盲化因子对所述盲化信息进行去盲化处理,生成所述随机参数;
根据所述随机参数、所述第二电子设备的私钥分片生成去盲参数;
根据所述论证信息的承诺分量、所述第二电子设备私钥分片及所述盲参数生成所述第二电子设备的证明分量。
在一些实施例中,所述根据所述论证信息、所述第一电子设备的证明分量及所述第二电子设备的证明分量对所述待签名信息进行签名包括:
根据所述论证信息和所述待签名信息中的消息摘要生成用于签名的承诺值;
根据所述承诺分量、所述去盲参数及所述第二电子设备的私钥分片生成第四盲化因子;
根据所述第二电子设备的证明分量、所述第四盲化因子及所述第一电子设备的证明分量的盲化信息生成用于签名的证明值;
根据所述用于签名的承诺值和所述用于签名的证明值,对所述待签名信息进行签名。
另一个方面,本公开实施例还提供了一种终端设备,所述终端设备包括:
第一接收模块,用于接收服务器发送的与待签名信息对应的随机信息;
确定模块,用于根据所述随机信息确定用于签名的承诺分量;
第一生成模块,用于根据所述承诺分量生成论证信息,所述论证信息用于验证所述终端设备的身份;
所述第一生成模块还用于,根据所述承诺分量和所述待签名信息,生成用于签名的所述终端设备的证明分量;
第一发送模块,用于将所述论证信息和所述终端设备的证明分量发送至所述服务器。
在一些实施例中,所述第一生成模块用于,通过与所述服务器预先协商的零知识证明算法生成所述论证信息。
在一些实施例中,所述零知识证明算法包括论证模型,所述第一生成模块用于,获取所述论证模型;
根据所述论证模型对所述承诺分量进行计算,生成所述论证信息,其中,所述论证信息中包括待验证参数和验证参数。
在一些实施例中,所述第一生成模块用于,生成盲化信息,所述盲化信息中包括所述终端设备的证明分量的盲化信息;
以及,所述第一发送模块用于,将所述论证信息和所述盲化信息发送至所述服务器。
在一些实施例中,所述盲化信息还包括所述终端设备的随机参数的盲化信息,所述第一生成模块用于,生成所述终端设备的私钥分片的所述随机参数;
根据所述终端设备的私钥分片和预设的公私钥对中的私钥生成第一盲化因子;
根据所述第一盲化因子对所述随机参数进行盲化处理,生成所述随机参数的盲化信息;
根据所述终端设备的私钥分片和所述承诺分量生成第二盲化因子;
根据所述第二盲化因子对所述终端设备的证明分量进行盲化处理,生成所述终端设备的证明分量的盲化信息。
另一个方面,本公开实施例还提供了一种服务器,所述服务器包括:
第二发送模块,用于生成并向终端设备发送与待签名信息对应的随机信息;
第二接收模块,用于接收所述终端设备发送的论证信息和所述终端设备的证明分量,所述论证信息用于验证所述终端设备的身份;
验证模块,用于根据所述论证信息对所述终端设备的身份进行验证;
第二生成模块,用于若验证成功,则生成用于签名的所述服务器的证明分量;
签名模块,用于根据所述论证信息、所述终端设备的证明分量及所述服务器的证明分量对所述待签名信息进行签名。
在一些实施例中,所述验证模块用于,通过与所述终端设备预先协商的零知识证明算法进行验证。
在一些实施例中,所述零知识证明算法包括论证模型,所述论证信息中包括待验证参数和验证参数,所述验证模块用于,获取所述论证模型,根据所述论证模型对所述论证参数进行计算,若计算的结果与所述待验证参数相同,则验证成功。
在一些实施例中,若接收到的为盲化信息,则所述第二生成模块用于,根据所述盲化信息、所述论证信息及所述服务器的私钥分片生成所述服务器的证明分量。
在一些实施例中,所述盲化信息还包括所述终端设备的随机参数的盲化信息,所述第二生成模块用于,根据所述服务器的私钥分片和预设的公私钥对中的私钥生成第三盲化因子;
根据所述第三盲化因子对所述盲化信息进行去盲化处理,生成所述随机参数;
根据所述随机参数、所述服务器的私钥分片生成去盲参数;
根据所述论证信息的承诺分量、所述服务器私钥分片及所述盲参数生成所述服务器的证明分量。
在一些实施例中,所述签名模块用于,根据所述论证信息和所述待签名信息中的消息摘要生成用于签名的承诺值;
根据所述承诺分量、所述去盲参数及所述服务器的私钥分片生成第四盲化因子;
根据所述服务器的证明分量、所述第四盲化因子及所述终端设备的证明分量的盲化信息生成用于签名的证明值;
根据所述用于签名的承诺值和所述用于签名的证明值,对所述待签名信息进行签名。
另一个方面,本公开实施例还提供了一种签名系统,所述签名系统包括:
如上任一实施例所述的终端设备;
如上任一实施例所述的服务器。
另一个方面,本公开实施例还提供了一种电子设备,包括:存储器,处理器;
所述存储器用于存储所述处理器可执行指令的存储器;
其中,当执行所述存储器中的指令时,所述处理器被配置为实现如上任一实施例所述的方法。
另一个方面,本公开实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上任一实施例所述的方法。
本公开提供一种基于SM2的签名方法、终端设备、服务器、系统、电子设备及存储介质,包括:接收第二电子设备发送的与待签名信息对应的随机信息,根据随机信息确定用于签名承诺分量,根据承诺分量生成论证信息,根据承诺分量和待签名信息生成用于签名的第一电子设备的证明分量,将论证信息和第一电子设备的证明分量发送至第二电子设备,一方面,通过在第一电子设备得到承诺分量时,根据承诺分量生成论证信息,避免了当第一电子设备的信息被盗取,被用于签名时造成用户信息(包括用户的个人信息和财务相关信息等)被盗用的问题,从而实现防盗防攻击的技术效果,进而实现了确保用户信息的安全的技术效果;另一方面,通过结合第一电子设备和第二电子设备共同进行签名,可以提高签名的安全性和可靠性的技术效果。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本申请实施例的基于SM2的签名方法的应用场景示意图;
图2为本申请一个实施例的基于SM2的签名方法的流程示意图;
图3为本申请实施例的基于SM2的签名方法的交互示意图;
图4为本申请另一实施例的基于SM2的签名方法的流程示意图;
图5为本申请另一实施例的基于SM2的签名方法的流程示意图;
图6为本申请实施例的终端设备的示意图;
图7为本申请实施例的服务器的示意图;
图8为本公开实施例的电子设备的结构示意图;
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
请参阅图1,图1为本申请实施例的基于SM2的签名方法的应用场景示意图。
如图1所示,图1中以手机100为例对终端设备进行了示范性地展示,手机100与服务器200之间可以建立通信链路,通过该通信链路,手机100可以实现与服务器200之间的交互。
当本申请实施例的基于SM2的签名方法应用于如图1所示的应用场景中,可以先由手机100确定签名结果中的部分签名信息,且进行证明,而后由服务器200确定出签名结果中的另外部分签名信息,并进行签名。当然,可以先由服务器200确定签名结果中的部分签名信息,且进行证明,而后由手机100确定出签名结果中的另外部分签名信息,并进行签名。具体原理可参见后文的阐述,此处不再赘述。
其中,终端设备可以是无线终端也可以是有线终端。无线终端可以是指向用户提供语音和/或其他业务数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(Radio Access Network,简称RAN)与一个或多个核心网设备进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。再例如,无线终端还可以是个人通信业务(Personal Communication Service,简称PCS)电话、无绳电话、会话发起协议(Session Initiation Protocol,简称SIP)话机、无线本地环路(Wireless LocalLoop,简称WLL)站、个人数字助理(Personal Digital Assistant,简称PDA)等设备。无线终端也可以称为系统、订户单元(Subscriber Unit)、订户站(Subscriber Station),移动站(Mobile Station)、移动台(Mobile)、远程站(Remote Station)、远程终端(RemoteTerminal)、接入终端(Access Terminal)、用户终端(User Terminal)、用户代理(UserAgent)、用户设备(User Device or User Equipment),在此不作限定。可选的,上述终端设备还可以是智能手表、平板电脑等设备。
在相关技术中,一般是由终端设备进行签名,或者,由服务器进行签名。
然而,通过终端设备进行签名,或者,通过服务器进行签名时,可能造成伪签名的问题。
为了避免伪签名的问题,本申请的发明人在经过创造性地劳动之后,得到了本申请的发明构思:通过两个电子设备(如上述示例中描述的终端设备和服务器)分别确定签名结果中的部分签名信息,得到签名结果,并基于签名结果进行签名,且由在先签名的电子设备对其身份进行证明。
下面以具体地实施例对本公开的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本公开的实施例进行描述。
根据本申请实施例的一个方面,本申请实施例提供了一种基于SM2的签名方法,该方法可以应用于第一电子设备。
请参阅图2,图2为本申请一个实施例的基于SM2的签名方法的流程示意图。
如图2所示,该方法包括:
S101:接收第二电子设备发送的与待签名信息对应的随机信息。
其中,本申请实施例的执行主体可以为第一电子设备,且第一电子设备可以为终端设备,当然,第一电子设备也可以为服务器。
例如,在如图1所示的应用场景中,第一电子设备可以为手机,第二电子设备可以为服务器;当然,第一电子设备可以为服务器,第二电子设备可以为手机。
S102:根据随机信息确定用于签名的承诺分量。
在该步骤中,第一电子设备接收到随机信息之后,可以基于随机信息进行计算,得到承诺分量。
值得说明地是,用于签名的信息可以包括承诺值和证明值,因此,在一些实施例中,承诺分量可以用于表征承诺值。
S103:根据承诺分量生成论证信息,论证信息用于验证第一电子设备的身份。
具体地,该步骤可以具体包括:对承诺分量进行证明,得到论证信息。
在本申请实施例中,在得到承诺分量时,可以对承诺分量进行证明,以生成对承诺分量进行证明的论证信息,可以理解为对第一电子设备的身份的真实性的证明,避免了当第一电子设备的信息被盗取,被用于签名时造成用户信息(包括用户的个人信息和财务相关信息等)被盗用的问题,从而实现了防盗防攻击的技术效果,进而实现了确保用户信息的安全的技术效果。
在一些实施例中,可以通过与第二电子设备预先协商的零知识证明算法生成论证信息。
S104:根据承诺分量和待签名信息,生成用于签名的第一电子设备的证明二分量。
基于上述示例可知,用于签名的信息可以包括承诺值和证明值,承诺分量可以用于表征承诺值,则第一电子设备的分量分量可以用于表征第一电子设备的证明值。
也就是说,在本申请实施例中,第一电子设备可以生成用于签名的部分签名信息,而该部分签名信息包括用于表征承诺值的承诺分量,且第一电子设备还可以对承诺分量进行证明,生成承诺分量的论证信息,并根据承诺分量和待签名信息生成部分签名信息中的用于表征证明值的第一电子设备的证明分量。
S105:将论证信息和第一电子设备的证明分量发送至第二电子设备。
基于上述分析可知,本申请实施例提供了一种基于SM2的签名方法,该方法可以应用于第一电子设备,且该第一电子设备可以为终端设备,也可以为服务器,一般而言,若第一电子设备为终端设备,则第二电子设备为服务器,若第一电子设备为服务器,则第二电子设备为终端设备,该方法包括:接收第二电子设备发送的与待签名信息对应的随机信息,根据随机信息确定用于签名的承诺分量,根据承诺分量生成论证信息,根据承诺分量和待签名信息,生成用于签名的第一电子设备的证明分量,将论证信息和第一电子设备的证明分量发送至第二电子设备,一方面,通过在第一电子设备得到承诺分量时生成论证信息,避免了当第一电子设备的信息被盗取,被用于签名时造成用户信息(包括用户的个人信息和财务相关信息等)被盗用的问题,从而实现了防盗防攻击的技术效果,进而实现了确保用户信息的安全的技术效果;另一方面,通过结合第一电子设备和第二电子设备共同进行签名,可以提高签名的安全性和可靠性的技术效果。
为使读者对本申请实施例的基于SM2的签名方法理解得更为透彻,现结合图3对本申请实施例的基于SM2的签名方法进行更为详细地阐述。其中,图3为本申请实施例的基于SM2的签名方法的交互示意图。
在图3中,我们以第一电子设备为终端设备,第二电子设备为服务器为例进行阐述。
如图3所示,该方法包括:
S1:服务器生成并向终端设备发送与待签名信息对应的随机信息。
具体地,该步骤可以包括:服务器根据SM2算法的椭圆曲线上的基点G和待签名信息的消息摘要e生成随机数DS(即S1中生成的随机信息)。
S2:终端设备根据随机信息确定签名结果的承诺分量。
具体地,该步骤可以包括:根据随机数DS生成随机分量KC,根据随机数DS和随机分量KC生成待签名信息的椭圆曲线点R,且根据椭圆曲线点R和待签名信息的消息摘要e确定出签名结果中的承诺值r(即S2中生成的承诺分量)。
S3:终端设备根据承诺分量生成论证信息,论证信息用于验证终端设备的身份。
在一些实施例中,该步骤可以具体包括:通过与服务器预先协商的零知识证明算法生成论证信息。例如,通过零知识证明算法对椭圆曲线点R进行证明,得到论证信息。
在一些实施例中,通过零知识证明算法生成论证信息可以具体包括:获取与服务器预先设定的论证模型,根据论证模型对承诺分量进行计算,生成论证信息,其中,论证信息中包括待验证参数和验证参数。
也就是说,服务器和终端设备可以预先对论证模型进行设定。
由于服务器和终端设备预先设定了论证模型,因此,当终端设备生成承诺分量时,可以基于论证模型对承诺分量进行计算,生成包括待验证参数和验证参数的论证信息。
S4:终端设备根据承诺分量和待签名信息生成用于签名的终端设备的证明分量。
在一些实施例中,该步骤可以具体包括:基于不经意传输扩展协议生成与预设的终端设备的私钥分片(下文简称为第一私钥分片)dC对应的中间值(下文简称为第一中间值),根据承诺值r和第一中间值生成终端设备的证明值SC(即终端设备的证明分量)。
也就是说,在本申请实施例中,终端设备和服务器之间可以预先通过不经意传输扩展协议生成各自对应的中间值,其中,关于不经意传输扩展协议生成的描述可以参见现有技术,此处不再赘述。
S5:终端设备生成盲化信息,其中,盲化信息包括终端设备的证明分量的盲化信息,还包括终端设备的随机参数的盲化信息。
其中,该步骤可以具体包括:生成第一私钥分片dC的随机参数φ,根据第一中间值、第一私钥分片dC、SM2算法的椭圆曲线上的基点G、预设的公私钥对中的私钥P和随机参数φ生成第一盲化因子其中,第一中间值包括/>和/>且,具体为将φ+1/dC和kC/dC作为不经意传输扩展协议的乘法器的输入,最后得到/>和/>根据第一盲化因子Γ1对随机参数φ进行盲化处理,生成随机参数φ的盲化信息ηφ=H(Γ1)+φ,H(Γ1)为第一盲化因子的杂凑函数;根据第一中间值、椭圆曲线点R和SM2算法的椭圆曲线上的基点G生成第二盲化因子/>根据第二盲化因子对终端设备的证明分量SC进行盲化处理,生成终端设备的证明分量SC的盲化信息ηsig=H(Γ2)+SC
在本申请实施例中,通过生成盲化信息,可以提高终端设备与服务器之间的数据传输的安全性和可靠性。
S6:终端设备将论证信息和盲化信息发送至服务器。
S7:服务器对终端设备的身份进行验证。
其中,该步骤可以具体包括:通过与终端设备预先协商的零知识证明算法验证。
在一些实施例中,零知识证明算法包括论证模型,论证信息中包括待验证参数和验证参数,该步骤可以具体包括:获取论证模型,根据论证模型对论证参数进行计算,若计算的结果与待验证参数相同,则验证成功。
S8:若验证成功,则服务器根据盲化信息、论证信息及服务器的私钥分片(下文简称为第二私钥分片)生成服务器的证明分量。
其中,该步骤可以具体包括:根据第二私钥分片dS和预设的公私钥对中的私钥生成第三盲化因子,根据第三盲化因子对盲化信息进行去盲化处理,生成随机参数,根据随机参数、第二私钥分片生成去盲参数,根据承诺分量、第二私钥分片及盲参数生成服务器的证明分量。
基于上述示例可知,终端设备和服务器之间可以预先通过不经意传输扩展协议生成各自对应的中间值,如终端设备可以基于不经意传输扩展协议生成与第一私钥分片dC对应的中间值(即第一中间值)。因此,在本申请实施例中,服务器也可以预先通过不经意传输扩展协议生成服务器对应的中间值(下文简称为第二中间值)。
具体地,可以根据第二中间值、基点G、预设的公私钥对中的私钥P生成第三盲化因子其中,第二中间值包括/>和/>且,具体为将1/dS和kS/dS作为不经意传输扩展协议的乘法器的输入,最后得到/>和/>
具体地,可以根据φ=H(Γ1)-ηφ生成随机参数φ,可以根据生成去盲参数θ,可以根据/>生成服务器的证明分量SS
S9:服务器根据论证信息、终端设备的证明分量及服务器的证明分量对待签名信息进行签名。
其中,该步骤可以具体包括:根据论证信息和待签名信息中的消息摘要生成用于签名的承诺值,根据承诺分量、去盲参数及服务器的私钥分片生成第四盲化因子,根据服务器的证明分量、第四盲化因子及终端设备的证明分量的盲化信息生成用于签名的证明值,根据用于签名的承诺值和用于签名的证明值,对待签名信息进行签名。
具体地,可以根据生成第四盲化因子Γ4
具体地,可以根据S=SSsig-H(Γ2)生成用于签名的证明值S。
值得说明地是,在一些实施例中,第一私钥分片dC和第二私钥分片dS可以基于dC+dS=d+n进行确定,其中,d为公私钥对中的私钥,n为基于需求、经验和试验进行设置的参数,如可以将n设置为1。
也就是说,在本申请实施例中,一方面,采用终端设备与服务器相结合,共同对待签名信息进行签名,可以避免单独采用终端设备进行签名,或者单独采用服务器进行签名时,造成的签名被伪造的弊端,确保了用户信息(包括用户的个人信息和财务相关信息等)的安全的技术效果;另一方面,在签名过程中,通过由在前签名的电子设备,如本申请实施例中的终端设备对相关信息进行证明,如对承诺分量进行证明,可以进一步确保终端设备的准确性,避免了当终端设备的信息被盗取,被用于签名时造成用户信息被盗用的问题,从而实现了防盗防攻击的技术效果;再一方面,在数据传输过程中,通过由在前签名的电子设备,如本申请实施例中的终端设备生成盲化信息,以确保数据传输过程中的安全性的技术效果。
值得说明地是,图3所示的示例只是用于示范性地说明,而不能理解为对第一电子设备和第二电子设备的具体限定。也就是说,在一些实施例中,第一电子设备可以为如图3中所示的终端设备,第二电子设备可以为如图3中所示的服务器,在另一些实施例中,第一电子设备也可以为如图3中所示的服务器,第二电子设备也可以为如图3中所示的终端设备,且当第一电子设备也可以为如图3中所示的服务器,第二电子设备也可以为如图3中所示的终端设备时,其实现原理与上述示例相同,因此,此处不再赘述。
根据本申请实施例的另一个方面,本申请实施例还提供了一种基于SM2的签名方法,该方法可以应用于第二电子设备。
请参阅图4,图4为本申请另一实施例的基于SM2的签名方法的流程示意图。
如图4所示,该方法包括:
S201:生成并向第一电子设备发送与待签名信息对应的随机信息。
其中,本申请实施例的执行主体可以为第二电子设备,且第二电子设备可以为终端设备,当然,第二电子设备也可以为服务器。
例如,在如图1所示的应用场景中,第二电子设备可以为手机,第一电子设备可以为服务器;当然,第二电子设备可以为服务器,第一电子设备可以为手机。
S202:接收第一电子设备发送的论证信息和第一电子设备的证明分量,论证信息用于验证第一电子设备的身份。
S203:根据论证信息对第一电子设备的身份进行验证。
S204:若验证成功,则生成用于签名的第二电子设备的证明分量。
值得说明地是,第二电子设备在验证时,可能为验证成功,也可能为验证失败,若验证成功,则说明第一电子设备为伪电子设备的可能性偏低,则第二电子设备生成用于签名的第二电子设备的证明分量;若验证失败,则说明第一电子设备为伪电子设备的可能性偏高,为了避免第二电子设备遭到攻击,造成用户信息的丢失等问题,流程结束。
S205:根据论证信息、第一电子设备的证明分量及第二电子设备的证明分量对待签名信息进行签名。
基于上述分析可知,本申请实施例提供了一种基于SM2的签名方法,该方法可以应用于第二电子设备,且该方法包括:生成并向第一电子设备发送与待签名信息对应的随机信息,接收第一电子设备发送的论证信息和承诺分量,论证信息用于验证第一电子设备的身份,根据论证信息对第一电子设备的身份进行验证,若验证成功,则生成用于签名的第二电子设备的证明分量,根据论证信息、第一电子设备的证明分量及第二电子设备的证明分量对待签名信息进行签名,一方面,采用终端设备与服务器相结合,共同对待签名信息进行签名,可以避免单独采用终端设备进行签名,或者单独采用服务器进行签名时,造成的签名被伪造的弊端,确保了用户信息(包括用户的个人信息和财务相关信息等)的安全的技术效果;另一方面,在签名过程中,通过第二电子设备对第一电子设备的身份进行验证,并在验证通过时,进行签名,可以进一步确保签名的安全性和可靠性的技术效果。
在一些实施例中,S203包括:通过与第一电子设备预先协商的零知识证明算法进行验证。
为使读者更加深刻地理解本申请实施例的基于SM2的签名方法,现结合图5对本申请实施例的基于SM2的签名方法进行详细地阐述。其中,图5为本申请另一实施例的基于SM2的签名方法的流程示意图。
如图5所示,该方法包括:
S301:生成并向第一电子设备发送与待签名信息对应的随机信息。
其中,关于S301的描述可参见S201,此处不再赘述。
S302:接收第一电子设备发送的论证信息和第一电子设备的证明分量,论证信息用于验证第一电子设备的身份。
S303:获取与第一电子设备预先设定的论证模型。
S304:根据论证模型对论证参数进行计算。
S305:判断计算的结果与待验证参数是否相同,若是,则说明验证成功,则执行S306,若否,则说明验证失败,则流程结束。
S306:生成用于签名的第二电子设备的证明分量。
在一些实施例中,若接收到的为盲化信息,则S306可以具体包括:根据盲化信息、论证信息及第二电子设备的私钥分片生成第二电子设备的证明分量。
在一些实施例中,若盲化信息还包括第一电子设备的随机参数的盲化信息,则S306可以具体包括:
S61:根据第二电子设备的私钥分片和预设的公私钥对中的私钥生成第三盲化因子。
S62:根据第三盲化因子对盲化信息进行去盲化处理,生成随机参数。
S63:根据随机参数、第二电子设备的私钥分片生成去盲参数。
S64:根据承诺分量、第二电子设备私钥分片及盲参数生成第二电子设备的证明分量。
S307:根据论证信息、第一电子设备的证明分量及第二电子设备的证明分量对待签名信息进行签名。
在一些实施例中,S307可以具体包括:
S71:根据论证信息和待签名信息中的消息摘要生成用于签名的承诺值。
S72:根据承诺分量、去盲参数及第二电子设备的私钥分片生成第四盲化因子。
S73:根据第二电子设备的证明分量、第四盲化因子及第一电子设备的证明分量的盲化信息生成用于签名的证明值。
S74:根据用于签名的承诺值和用于签名的证明值,对待签名信息进行签名。
根据本公开实施例的另一个方面,本公开实施例还提供了一种终端设备,用于执行如图2所示的基于SM2的签名方法。
请参阅图6,图6为本申请实施例的终端设备的示意图。
如图6所示,该终端设备包括:
第一接收模块11,用于接收服务器发送的与待签名信息对应的随机信息;
确定模块12,用于根据所述随机信息确定用于签名的承诺分量;
第一生成模块13,用于根据所述承诺分量生成论证信息,所述论证信息用于验证所述终端设备的身份;
所述第一生成模块13还用于,根据所述承诺分量和所述待签名信息,生成用于签名的所述终端设备的证明分量;
第一发送模块14,用于将所述论证信息和所述所述终端设备的证明分量发送至所述服务器。
在一些实施例中,所述第一生成模块13用于,通过与所述服务器预先协商的零知识证明算法生成所述论证信息。
在一些实施例中,所述零知识证明算法包括论证模型,所述第一生成模块13用于,获取所述论证模型;
根据所述论证模型对所述承诺分量进行计算,生成所述论证信息,其中,所述论证信息中包括待验证参数和验证参数。
在一些实施例中,所述第一生成模块13用于,生成盲化信息,所述盲化信息中包括所述终端设备的证明分量的盲化信息;
以及,所述第一发送模块14用于,将所述论证信息和所述盲化信息发送至所述服务器。
在一些实施例中,所述盲化信息还包括所述终端设备的随机参数的盲化信息,所述第一生成模块13用于,生成所述终端设备的私钥分片的所述随机参数;
根据所述终端设备的私钥分片和预设的公私钥对中的私钥生成第一盲化因子;
根据所述第一盲化因子对所述随机参数进行盲化处理,生成所述随机参数的盲化信息;
根据所述终端设备的私钥分片和所述承诺分量生成第二盲化因子;
根据所述第二盲化因子对所述终端设备的证明分量进行盲化处理,生成所述终端设备的证明分量的盲化信息。
根据本公开实施例的另一个方面,本公开实施例还提供了一种服务器,用于执行如图4和图5所示的基于SM2的签名方法。
请参阅图7,图7为本申请实施例的服务器的示意图。
如图7所示,该服务器包括:
第二发送模块21,用于生成并向终端设备发送与待签名信息对应的随机信息;
第二接收模块22,用于接收所述终端设备发送的论证信息和所述终端设备的证明分量,所述论证信息用于验证所述终端设备的身份;
验证模块23,用于根据所述论证信息对所述终端设备的身份进行验证;
第二生成模块24,用于若验证成功,则生成用于签名的所述服务器的证明分量;
签名模块25,用于根据所述论证信息、所述所述终端设备的证明分量及所述服务器的证明分量对所述待签名信息进行签名。
在一些实施例中,所述验证模块23用于,通过与所述终端设备预先协商的零知识证明算法进行验证。
在一些实施例中,所述零知识证明算法包括论证模型,所述论证信息中包括待验证参数和验证参数,所述验证模块23用于,获取所述论证模型,根据所述论证模型对所述论证参数进行计算,若计算的结果与所述待验证参数相同,则验证成功。
在一些实施例中,若接收到的为盲化信息,则所述第二生成模块24用于,根据所述盲化信息、所述论证信息及所述服务器的私钥分片生成所述服务器的证明分量。
在一些实施例中,所述盲化信息还包括所述终端设备的随机参数的盲化信息,所述第二生成模块24用于,根据所述服务器的私钥分片和预设的公私钥对中的私钥生成第三盲化因子;
根据所述第三盲化因子对所述盲化信息进行去盲化处理,生成所述随机参数;
根据所述随机参数、所述服务器的私钥分片生成去盲参数;
根据所述论证信息的承诺分量、所述服务器私钥分片及所述盲参数生成所述服务器的证明分量。
在一些实施例中,所述签名模块25用于,根据所述论证信息和所述待签名信息中的消息摘要生成用于签名的承诺值;
根据所述承诺分量、所述去盲参数及所述服务器的私钥分片生成第四盲化因子;
根据所述服务器的证明分量、所述第四盲化因子及所述终端设备的证明分量的盲化信息生成用于签名的证明值;
根据所述用于签名的承诺值和所述用于签名的证明值,对所述待签名信息进行签名。
根据本公开实施例的另一个方面,本公开实施例还提供了一种签名系统,该签名系统包括如图6所示的终端设备和,如图7所示的服务器。
根据本公开实施例的另一个方面,本公开实施例还提供了一种电子设备,包括:存储器,处理器;
存储器用于存储处理器可执行指令的存储器;
其中,当执行存储器中的指令时,处理器被配置为实现如上任一实施例所述的方法。
请参阅图8,图8为本公开实施例的电子设备的结构示意图。
如图8所示,该电子设备包括存储器和处理器,该电子设备还可以包括通信接口和总线,其中,处理器、通信接口和存储器通过总线连接;处理器用于执行存储器中存储的可执行模块,例如计算机程序。
其中,存储器可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。
其中,存储器用于存储程序,处理器在接收到执行指令后,执行程序,前述本公开实施例任一实施例揭示的方法可以应用于处理器中,或者由处理器实现。
处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。结合本公开实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
根据本公开实施例的另一个方面,本公开实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上任一实施例所述的方法。
读者应理解,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本公开实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
还应理解,在本公开各实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。

Claims (13)

1.一种基于SM2的签名方法,其特征在于,应用于第一电子设备,所述方法包括:
接收第二电子设备发送的与待签名信息对应的随机信息;
根据所述随机信息确定用于签名的承诺分量;
根据所述承诺分量生成论证信息,所述论证信息用于验证所述第一电子设备的身份;
根据所述承诺分量和所述待签名信息,生成用于签名的所述第一电子设备的证明分量;
生成盲化信息,所述盲化信息中包括所述第一电子设备的证明分量的盲化信息;
将所述论证信息和所述第一电子设备的证明分量发送至所述第二电子设备;
所述盲化信息还包括所述第一电子设备的随机参数的盲化信息,所述生成盲化信息包括:
生成所述第一电子设备的私钥分片的所述随机参数;
根据所述第一电子设备的私钥分片和预设的公私钥对中的私钥生成第一盲化因子;
根据所述第一盲化因子对所述随机参数进行盲化处理,生成所述随机参数的盲化信息;
根据所述第一电子设备的私钥分片和所述承诺分量生成第二盲化因子;
根据所述第二盲化因子对所述第一电子设备的证明分量进行盲化处理,生成所述第一电子设备的证明分量的盲化信息。
2.根据权利要求1所述的方法,其特征在于,所述根据所述承诺分量生成论证信息包括:
通过与所述第二电子设备预先协商的零知识证明算法生成所述论证信息。
3.根据权利要求2所述的方法,其特征在于,所述零知识证明算法包括论证模型,所述通过与所述第二电子设备预先协商的零知识证明算法生成所述论证信息包括:
获取所述论证模型;
根据所述论证模型对所述承诺分量进行计算,生成所述论证信息,其中,所述论证信息中包括待验证参数和验证参数。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述将所述论证信息和所述第一电子设备的证明分量发送至所述第二电子设备包括:
将所述论证信息和所述盲化信息发送至所述第二电子设备。
5.一种基于SM2的签名方法,其特征在于,应用于第二电子设备,所述方法包括:
生成并向第一电子设备发送与待签名信息对应的随机信息;
接收所述第一电子设备发送的论证信息和所述第一电子设备的证明分量,所述论证信息用于验证所述第一电子设备的身份;
根据所述论证信息对所述第一电子设备的身份进行验证;
若验证成功,则生成用于签名的所述第二电子设备的证明分量;
根据所述论证信息、所述第一电子设备的证明分量及所述第二电子设备的证明分量对所述待签名信息进行签名;
若接收到的为盲化信息,所述盲化信息还包括所述第一电子设备的随机参数的盲化信息,则所述生成用于签名的所述第二电子设备的证明分量包括:
根据所述第二电子设备的私钥分片和预设的公私钥对中的私钥生成第三盲化因子;
根据所述第三盲化因子对所述盲化信息进行去盲化处理,生成所述随机参数;
根据所述随机参数、所述第二电子设备的私钥分片生成去盲参数;
根据所述论证信息的承诺分量、所述第二电子设备私钥分片及所述去盲参数生成所述第二电子设备的证明分量。
6.根据权利要求5所述的方法,其特征在于,所述根据所述论证信息对所述第一电子设备的身份进行验证包括:
通过与所述第一电子设备预先协商的零知识证明算法进行验证。
7.根据权利要求6所述的方法,其特征在于,所述零知识证明算法包括论证模型,所述论证信息中包括待验证参数和验证参数,所述通过与所述第二电子设备预先协商的零知识证明算法进行验证包括:
获取所述论证模型;
根据所述论证模型对所述验证参数进行计算;
若计算的结果与所述待验证参数相同,则对验证成功。
8.根据权利要求5所述的方法,其特征在于,所述根据所述论证信息、所述第一电子设备的证明分量及所述第二电子设备的证明分量对所述待签名信息进行签名包括:
根据所述论证信息和所述待签名信息中的消息摘要生成用于签名的承诺值;
根据所述承诺分量、所述去盲参数及所述第二电子设备的私钥分片生成第四盲化因子;
根据所述第二电子设备的证明分量、所述第四盲化因子及所述第一电子设备的证明分量的盲化信息生成用于签名的证明值;
根据所述用于签名的承诺值和所述用于签名的证明值,对所述待签名信息进行签名。
9.一种终端设备,其特征在于,所述终端设备包括:
第一接收模块,用于接收服务器发送的与待签名信息对应的随机信息;
确定模块,用于根据所述随机信息确定用于签名的承诺分量;
第一生成模块,用于根据所述承诺分量生成论证信息,所述论证信息用于验证所述终端设备的身份;
所述第一生成模块还用于,根据所述承诺分量和所述待签名信息,生成用于签名的所述终端设备的证明分量;
第一发送模块,用于将所述论证信息和所述终端设备的证明分量发送至所述服务器;
所述第一生成模块还用于,生成盲化信息,所述盲化信息中包括所述终端设备的证明分量的盲化信息和所述终端设备的随机参数的盲化信息;
所述第一生成模块,具体用于生成所述终端设备的私钥分片的所述随机参数;
根据所述终端设备的私钥分片和预设的公私钥对中的私钥生成第一盲化因子;
根据所述第一盲化因子对所述随机参数进行盲化处理,生成所述随机参数的盲化信息;
根据所述终端设备的私钥分片和所述承诺分量生成第二盲化因子;
根据所述第二盲化因子对所述终端设备的证明分量进行盲化处理,生成所述终端设备的证明分量的盲化信息。
10.一种服务器,其特征在于,所述服务器包括:
第二发送模块,用于生成并向终端设备发送与待签名信息对应的随机信息;
第二接收模块,用于接收所述终端设备发送的论证信息和所述终端设备的证明分量,所述论证信息用于验证所述终端设备的身份;
验证模块,用于根据所述论证信息对所述终端设备的身份进行验证;
第二生成模块,用于若验证成功,则生成用于签名的所述服务器的证明分量;
签名模块,用于根据所述论证信息、所述终端设备的证明分量及所述服务器的证明分量对所述待签名信息进行签名;
所述第二生成模块,具体用于若接收到的为盲化信息,所述盲化信息还包括所述终端设备的随机参数的盲化信息,根据所述服务器的私钥分片和预设的公私钥对中的私钥生成第三盲化因子;
根据所述第三盲化因子对所述盲化信息进行去盲化处理,生成所述随机参数;
根据所述随机参数、所述服务器的私钥分片生成去盲参数;
根据所述论证信息的承诺分量、所述服务器私钥分片及所述去盲参数生成所述服务器的证明分量。
11.一种签名系统,其特征在于,所述签名系统包括:
如权利要求9所述的终端设备;
如权利要求10所述的服务器。
12.一种电子设备,包括:存储器,处理器;
所述存储器用于存储所述处理器可执行指令的存储器;
其中,当执行所述存储器中的指令时,所述处理器被配置为实现如权利要求1至4中任一项所述的方法;或者,
所述处理器被配置为实现如权利要求5至8中任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至4中任一项所述的方法;或者,
所述处理器被配置为实现如权利要求5至8中任一项所述的方法。
CN202010397349.9A 2020-05-12 2020-05-12 基于sm2的签名方法、系统、电子设备及存储介质 Active CN111600703B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010397349.9A CN111600703B (zh) 2020-05-12 2020-05-12 基于sm2的签名方法、系统、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010397349.9A CN111600703B (zh) 2020-05-12 2020-05-12 基于sm2的签名方法、系统、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN111600703A CN111600703A (zh) 2020-08-28
CN111600703B true CN111600703B (zh) 2023-08-04

Family

ID=72182320

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010397349.9A Active CN111600703B (zh) 2020-05-12 2020-05-12 基于sm2的签名方法、系统、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111600703B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114338028A (zh) * 2020-09-28 2022-04-12 华为技术有限公司 门限签名方法、装置、电子设备和可读存储介质
CN114448610A (zh) * 2020-10-30 2022-05-06 华为技术有限公司 数据保护方法、终端及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095456B (zh) * 2013-01-10 2016-07-06 天地融科技股份有限公司 交易报文的处理方法和系统
CN106327723B (zh) * 2016-08-29 2018-07-10 福建新大陆支付技术有限公司 一种基于智能平台的mPOS交易系统
CN106712946B (zh) * 2017-02-07 2020-06-26 上海瀚银信息技术有限公司 一种数据安全传输方法
CN110719172B (zh) * 2018-07-13 2021-08-10 北京京东尚科信息技术有限公司 区块链系统中的签名方法、签名系统以及相关设备
CA3040601C (en) * 2018-11-27 2021-03-30 Alibaba Group Holding Limited System and method for information protection

Also Published As

Publication number Publication date
CN111600703A (zh) 2020-08-28

Similar Documents

Publication Publication Date Title
US10263969B2 (en) Method and apparatus for authenticated key exchange using password and identity-based signature
US11432150B2 (en) Method and apparatus for authenticating network access of terminal
CN109818730B (zh) 盲签名的获取方法、装置和服务器
CN111064583B (zh) 一种门限sm2数字签名方法、装置、电子设备及存储介质
CN109861828B (zh) 一种基于边缘计算的节点接入和节点认证方法
CN111600703B (zh) 基于sm2的签名方法、系统、电子设备及存储介质
JP6780771B2 (ja) 検証情報付与装置、検証装置、情報管理システム、方法およびプログラム
CN114338054B (zh) 区块链可信数据传输、验证和获取方法及装置
CN117978408B (zh) 协同签名算法的检测方法、协同签名设备及可读存储介质
CN112653554A (zh) 一种签名方法、系统、设备及可读存储介质
CN111600704B (zh) 基于sm2的秘钥交换方法、系统、电子设备及存储介质
CN109766716A (zh) 一种基于可信计算的匿名双向认证方法
CN111275417B (zh) 交易背书处理方法、服务器及计算机可读存储介质
CN107223322A (zh) 签名验证的方法、设备和系统
CN111600717B (zh) 基于sm2的解密方法、系统、电子设备及存储介质
CN108833104A (zh) 一种文件的签署方法、验证方法及装置
CN116684104A (zh) Api接口的rsa2签名复核方法、装置、电子设备及介质
CN113923668B (zh) 识别网络攻击行为的方法、装置、芯片及可读存储介质
CN115277240A (zh) 一种物联网设备的认证方法及装置
CN117579280A (zh) 接入设备的认证方法、聚合设备、装置及存储介质
CN115733651A (zh) 交易隐私保护方法和装置、电子设备和存储介质
CN115001698A (zh) 聚合签名方法、装置、设备和存储介质
CN112738043A (zh) 大数据系统中对用户身份进行合法性认证的方法、系统及相关产品
US10454687B2 (en) Non-repudiation of electronic transactions
US9882721B2 (en) Authentication using electronic signature

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
CB02 Change of applicant information

Address after: 601, 6 / F, building 2, No. 18, Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Shuke Haiyi Information Technology Co.,Ltd.

Applicant after: Jingdong Digital Technology Holding Co.,Ltd.

Address before: 601, 6 / F, building 2, No. 18, Kechuang 11th Street, Beijing Economic and Technological Development Zone, Beijing 100176

Applicant before: BEIJING HAIYI TONGZHAN INFORMATION TECHNOLOGY Co.,Ltd.

Applicant before: JINGDONG DIGITAL TECHNOLOGY HOLDINGS Co.,Ltd.

Address after: 601, 6 / F, building 2, No. 18, Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Technology Information Technology Co.,Ltd.

Applicant after: Jingdong Technology Holding Co.,Ltd.

Address before: 601, 6 / F, building 2, No. 18, Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant before: Jingdong Shuke Haiyi Information Technology Co.,Ltd.

Applicant before: Jingdong Digital Technology Holding Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant