CN111565108B - 签名处理方法、装置及系统 - Google Patents
签名处理方法、装置及系统 Download PDFInfo
- Publication number
- CN111565108B CN111565108B CN202010677627.6A CN202010677627A CN111565108B CN 111565108 B CN111565108 B CN 111565108B CN 202010677627 A CN202010677627 A CN 202010677627A CN 111565108 B CN111565108 B CN 111565108B
- Authority
- CN
- China
- Prior art keywords
- signature
- private key
- communication terminal
- sub
- encrypted
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0825—Key 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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 involving digital signatures
- H04L9/3252—Cryptographic 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 involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供一种签名处理方法、装置及系统。具体地,签名密钥分别在参与数据传输的三方独立生成,且签名需要三方合作计算,避免出现某一方密钥泄露,伪造签名成功的问题,同时,签名过程也结合加密算法,使得私钥在协同签名过程中处于加密状态,无需获取私钥的真实数据即可实现加密计算。本申请实施例提供的技术方案适用于涉及不可信云端环境的三方通信的数据传输,提高了密钥的安全性和数据的安全性。
Description
技术领域
本申请实施例涉及计算机应用技术领域,尤其涉及一种签名处理方法、装置及系统。
背景技术
随着互联网技术的发展,移动办公、移动支付越来越普及,移动信息化和云服务成为趋势。为了保证数据传输的安全性,密码技术是不可或缺的。通常情况下,采用数字签名技术为传输数据进行加密。
对于现有技术中的数字签名,只适用于客户端和服务端两方之间的数据传输,并且要求客户端和服务端都是诚实可信的,若一方不可信,则存在中间人攻击的风险。而现实场景下,移动终端和云环境均是不完全可信的,现有技术中的数字签名并不适用于包括不可信环境的三方之间的数据传输。
发明内容
本申请实施例提供一种签名处理方法、装置及系统,用以解决现有技术中数字签名技术不适用于包括不可信环境的三方之间的数据传输的问题。
本发明的第一方面提供了一种签名处理方法,该方法包括:
第一通信端生成待签名消息的消息摘要及第一部分签名;以及加密第一私钥获得第一加密私钥,并将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端;
所述第二通信端生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;
所述第三通信端生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第一私钥、所述第二私钥以及所述第三私钥分别由所述第一通信端、所述第二通信端以及所述第三通信端各自生成,并由所述第三通信端生成验证公钥;
所述第二通信端基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;
所述第一通信端对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
本发明的第二方面提供了一种签名处理装置,该装置包括:
第一生成模块,用于生成待签名消息的消息摘要及第一部分签名;
第一加密模块,用于加密第一私钥获得第一加密私钥;
第一发送模块,用于将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端;其中,所述第二通信端用于生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;其中,所述第三通信端用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至第一通信端以及将所述第三中间参数发送至所述第二通信端,由所述第二通信端基于所述第三中间参数计算获得第四中间参数;
第一签名模块,用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;
第一输出模块,用于输出所述第一签名和所述第二签名。
本发明的第三方面提供了一种签名处理装置,该装置包括:
第一接收模块,用于接收第一通信端发送的待签名消息的消息摘要、第一部分签名及第一加密私钥;其中,所述消息摘要及所述第一部分签名由所述第一通信端生成;所述第一加密私钥由所述第一通信端对第一私钥加密获得;
第二生成模块,用于生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;
第二加密模块,用于加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;
第二发送模块,用于将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;其中,所述第三通信端用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数,以及将所述第二中间参数及所述第一签名发送至所述第一通信端;
第二接收模块,用于接收所述第三通信端发送的所述第三中间参数;
计算模块,用于基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;其中,所述第一通信端用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
本发明的第四方面提供了一种签名处理装置,该装置包括:
第三接收模块,用于接收第二通信端发送的消息摘要、第二部分签名、第一协同签名、第一加密私钥、第二加密私钥及第一中间参数;其中,所述消息摘要以及所述第一加密私钥由第一通信端生成并发送至所述第二通信端;所述第二部分签名由所述第二通信端生成;所述第一协同签名由所述第二通信端结合所述第二部分签名和第一部分签名生成;所述第二加密私钥由所述第二通信端对第二私钥加密获得;所述第一中间参数由所述第二通信端基于所述第一加密私钥和所述第二加密私钥加密获得;
第三生成模块,用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;
第三加密模块,用于加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;
第三发送模块,用于将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第二通信端用于基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;所述第一通信端用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
本发明的第五方面提供了一种签名处理系统,该系统包括第一通信端、第二通信端及第三通信端;
所述第一通信端,用于生成待签名消息的消息摘要及第一部分签名;以及加密第一私钥获得第一加密私钥,并将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端;
所述第二通信端,用于生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;
所述第三通信端,用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第一私钥、所述第二私钥以及所述第三私钥分别由所述第一通信端、所述第二通信端以及所述第三通信端各自生成,并由所述第三通信端生成验证公钥;
所述第二通信端,还用于基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;
所述第一通信端,还用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
本发明中,签名密钥分别在参与数据传输的三方独立生成,且签名需要三方合作计算,避免出现某一方密钥泄露,伪造签名成功的问题,同时,签名过程也结合加密算法,使得私钥在协同签名过程中处于加密状态,无需获取私钥的真实数据即可实现加密计算,适用于涉及不可信云端环境的三方通信的数据传输,提高了密钥的安全性和数据的安全性。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请提供的一种签名处理方法一个实施例的流程图;
图2示出了本申请提供的一种签名处理方法中密钥生成的流程图;
图3示出了本申请提供的一种签名处理装置一个实施例的结构示意图;
图4示出了本申请提供的一种签名处理装置另一个实施例的结构示意图;
图5示出了本申请提供的一种签名处理装置另一个实施例的结构示意图;
图6示出了本申请提供的一种签名处理系统一个实施例的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在本申请的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
本发明实施例主要适用于数据传输场景中,可以在客户端、服务端以及不可信环境的云端之间数据传输的过程中,利用密钥对待传输的消息进行签名处理,保证数据安全性。
在云计算时代的环境下,云服务发展成为趋势,用户可以通过网络以按需、易扩展的方式获得所需服务。云服务可以将企业所需的数据信息放到云端,实现在任何时间、地点,与客户端和服务端建立连接,完成数据存取、运算等目的,方便快捷。为了保护数据安全性,需要采用数字签名技术对传输数据进行加密。
现有技术中,数字签名通常适用于双方通信的数据传输,即客户端和服务端之间,在通信双方分别存储部分私钥,两方联合才能实现对待签名消息的签名或解密操作。然而,该种签名方法适用于通信双方都是诚实可信的,对于有一方是不可信的情况,存在中间人攻击的风险,无法保证签名密钥的安全性以及数据的安全性。考虑到云端环境作为一种虚拟环境,存储信息较多,环境较复杂,容易出现数据滥用、信息被冒用等情况,同时容易受到中间人攻击。也即是说,现有技术中的该种签名方法并不适用于涉及不可信云端环境的三方通信的数据传输。
因此,在涉及云端不可信环境的三方通信的数据传输过程中,为了保护签名密钥的安全性以及数据的安全性,发明人提出了本发明的技术方案,包括:第一通信端生成待签名消息的消息摘要及第一部分签名;以及加密第一私钥获得第一加密私钥,并将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端;所述第二通信端生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;所述第三通信端生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第一私钥、所述第二私钥以及所述第三私钥分别由所述第一通信端、所述第二通信端以及所述第三通信端各自生成,并由所述第三通信端生成验证公钥;所述第二通信端基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;所述第一通信端对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。本发明中,签名密钥分别在参与数据传输的三方独立生成,且签名需要三方合作计算,避免出现某一方密钥泄露,伪造签名成功的问题,同时,签名过程也结合加密算法,使得私钥在协同签名过程中处于加密状态,无需获取私钥的真实数据即可实现加密计算,适用于涉及不可信云端环境的三方通信的数据传输,提高了密钥的安全性和数据的安全性。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,为本发明实施例提供的一种签名处理方法一个实施例的流程图,该方法可以包括以下几个步骤:
101:第一通信端生成待签名消息的消息摘要及第一部分签名;以及加密第一私钥获得第一加密私钥,并将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端。
在三方通信进行数据传输的过程中,可以分别以第一通信端、第二通信端和第三通信端来表示参与通信的三方。其中,第一通信端可以指客户端,客户端可以发起签名。
第一通信端发起签名,生成待签名消息的消息摘要,该消息摘也可以指数字摘要,通常是采用单向Hash(哈希)函数将需要加密的明文“摘要”成一串固定长度的密文。
具体地,第一通信端生成待签名消息的消息摘要可以由消息摘要生成公式来完成;
在实际应用中,签名的生成过程还需要密钥参与计算,其中,密钥可以包括私钥和公钥。因此,在生成待签名消息的消息摘要及第一部分签名之前,也即步骤101之前,还需要生成包括私钥和公钥在内的密钥。如图2所示,为本发明实施例提供的一种签名处理方法中密钥生成的流程图,可以包括以下步骤:
201:第一通信端生成第一私钥;以及基于所述第一私钥生成第一公钥,并将所述第一公钥发送至第二通信端。
在密钥生成以及签名生成的过程中,通常是基于算法(椭圆曲线公钥密码算
法)来运算。第一通信端、第二通信端和第三通信端共享算法的椭圆曲线参数、和,该椭圆曲线为定义在有限域上的椭圆曲线,为椭圆曲线上阶的基点,
为正整数,和属于椭圆曲线的参数。
其中,在三方通信进行数据传输的过程中,第一通信端指客户端的情况下,第二通信端可以指服务端或云端,其中,云端可以是指部署在云计算环境中的云服务端,与此对应的,第三通信端可以指云端或服务端。例如,第二通信端为服务端,则第三通信端为云端;或第二服务端为云端,则第三通信端为服务端。
可选地,第一通信端生成第一私钥的方法可以包括:
第一通信端随机生成第十随机数,并将所述第十随机数作为第一私钥。
可选地,第一通信端基于该第一私钥生成第一公钥的方法可以包括:
第一通信端将第一私钥按照第一公钥计算公式生成第一公钥:
第一通信端将第一私钥和椭圆曲线参数进行乘积计算,以生成第一公钥。第一通信端保存第一私钥,并将第一公钥发送至第二通信端以进行后续计算。
202:所述第二通信端生成第二私钥;以及基于所述第二私钥生成第二公钥及结合所述第一公钥和所述第二公钥生成临时公钥,并将所述临时公钥发送至第三通信端。
可选地,第二通信端生成第二私钥的方法可以包括:
第二通信端随机生成第十一随机数,并将所述第十一随机数作为第二私钥。
可选地,第二通信端基于该第二私钥生成第二公钥的方法可以包括:
第二通信端将第二私钥按照第二公钥计算公式生成第二公钥:
第二通信端将第二私钥和椭圆曲线参数进行乘积计算,以生成第二公钥,再结合第一公钥和第二公钥生成临时公钥。
具体地,第二通信端结合第一公钥和第二公钥可以按照临时公钥生成公式生成临时公钥:
第二通信端将生成的第二私钥和临时公钥进行保存,并将临时公钥发送至第三通信端以进行后续计算。
203:所述第三通信端生成第三私钥;以及基于所述第三私钥生成第三公钥及结合所述临时公钥和所述第三公钥生成验证公钥。
可选地,第三通信端生成第三私钥的方法可以包括:
第三通信端随机生成第十二随机数,并将该第十二随机数作为第三私钥。
可选地,第三通信端基于该第三私钥生成第三公钥的方法可以包括:
第三通信端将第三私钥按照第三公钥计算公式生成第三公钥:
第三通信端将第三私钥和椭圆曲线参数进行乘积计算,以生成第三公钥,再结合第三公钥和临时公钥生成验证公钥。
具体地,第三通信端结合第三公钥和临时公钥可以按照验证公钥生成公式生成验证公钥:
第三通信端将生成的第三私钥和验证公钥进行保存。
通过由第一通信端、第二通信端和第三通信端三方预先生成各自的私钥,即第一私钥、第二私钥和第三私钥,在三方协同签名的过程中,可以分别利用各自的私钥参与签名计算,避免由一方单独生成全部私钥,减少私钥被泄露的风险,有利于提高私钥的安全性。同时,结合三方各自的公钥生成的验证公钥可以用于对输出的签名进行验证,保证签名的准确性。
第一通信端预先生成第一私钥后,可以加密该第一私钥获得第一加密私钥,该第
一加密私钥可以用表示,第一加密私钥也可以用于后续的签名计算,并将该消息摘
要、第一部分签名和第一加密私钥发送至第二通信端,以便于第二通信端做一步的签名计
算。
通过将第一私钥加密传输,避免了传输过程被中间人攻击,导致第一私钥泄露的问题,同时,可以实现第二通信端接收到第一加密私钥后,无需明确第一私钥的真实数据,直接基于加密后的第一加密私钥进行相关的签名计算,可以有效保护第二通信端处于不可信环境中的密钥安全性和数据安全性。
102:所述第二通信端生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端。
第二通信端接收到第一通信端发送的消息摘要、第一部分签名和第一加密私钥,
第二通信端生成第二部分签名,该第二部分签名可以用表示,并结合该第二部分签名和
第一通信端发送的第一部分签名生成第一协同签名,第一协同签名可以用表示。其中,
该第一协同签名可以用于后续的签名计算。
可选地,第二通信端结合第二部分签名和第一通信端发送的第一部分签名生成第一协同签名的方法可以包括:
第二通信端将第二部分签名和第一通信端发送的第一部分签名按照第一协同计算公式计算生成第一协同签名:
第二通信端预先生成第二私钥后,可以加密该第二私钥获得第二加密私钥,结合该第二加密私钥和第一通信端发送的第一加密私钥进行加密获得第一中间参数,该第一中间参数也可以用于后续的签名计算。
第二通信端将自身生成的第一中间参数、第二部分签名、第一协同签名、第二加密私钥以及接收到的第一通信端发送的消息摘要、第一加密私钥都发送至第三通信端,以便于第三通信端进行后续的签名计算。
与第一私钥同理,第二私钥也进行加密传输,避免传输过程被中间人攻击,导致第二私钥泄露的问题,同时,可以实现第三通信端接收到第二加密私钥后,无需明确第二私钥的真实数据,直接基于加密后的第二加密私钥进行相关的签名计算,可以有效保护第三通信端处于不可信环境中的密钥安全性和数据安全性。
103:所述第三通信端生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第一私钥、所述第二私钥以及所述第三私钥分别由所述第一通信端、所述第二通信端以及所述第三通信端各自生成,并由所述第三通信端生成验证公钥。
第三通信端接收到第二通信端发送的消息摘要、第一中间参数、第二部分签名、第
一协同签名、第一加密私钥和第二加密私钥,第三通信端生成第三部分签名,该第三部分签
名可以用表示,并结合该第三部分签名和第一协同签名生成第二协同签名,该第二协同
签名可以用表示。
可选地,第三通信端结合第三部分签名和第一协同签名生成第二协同签名的方法可以包括:
第三通信端将第三部分签名和第一协同签名按照第二协同计算公式计算生成第二协同签名:
作为签名的一个组成部分,第一签名需要接受验证,避免第一签名出现错误,影响签名其他部分的计算及生成,或占用不必要时间计算签名并输出错误结果,缩短签名的生成时间,提高签名的生成效率。可选地,第三通信端基于第二协同签名及消息摘要获得第一签名之后,该方法还可以包括:
所述第三通信端验证所述第一签名是否等于0;
若是,返回所述第一通信端生成待签名消息的消息摘要及第一部分签名的步骤重新执行;
若否,执行加密第三私钥获得第三加密私钥的步骤。
第三通信端生成第一签名后,需要验证第一签名是否等于0,若第一签名等于0,则证明第一签名错误,无法进行后续签名计算,返回第一通信端生成待签名消息的消息摘要及第一部分签名的步骤重新执行;若第一签名不等于0,则证明第一签名正确,继续执行后续签名计算和生成等操作。
第三通信端预先生成第三私钥后,可以加密该第三私钥获得第三加密私钥,并基于第一加密私钥、第二加密私钥及该第三加密私钥,加密获得第二中间参数及第三中间参数,该第二中间参数及第三中间参数也可以用于签名计算。
第三通信端将生成的第二中间参数及第一签名发送至第一通信端,以便于第一通信端进行签名计算,并将生成的第三中间参数发送至第二通信端进行签名计算。
104:所述第二通信端基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端。
第二通信端接收到第三中间参数,并对该第三中间参数进行计算获得第四中间参数,将获得的第四中间参数发送至第一通信端,以便于第一通信端结合第四中间参数和第三通信端发送的第二中间参数等进行第二签名计算。
105:所述第一通信端对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
第一通信端接收到第二中间参数和第四中间参数,由于该第二中间参数和第四中间参数在生成过程中是经过加密运算的,因此第一通信端需要对其进行解密获得解密结果,再基于解密结果进行计算获得第二签名。
可选地,第一通信端对第四中间参数及第二中间参数进行解密,并基于解密结果计算获得第二签名的方法可以包括:
所述第一通信端基于所述第四中间参数及所述第二中间参数加密获得第一加密子签名及第二加密子签名;以及对所述第一加密子签名进行解密获得第一子签名,并对所述第二加密子签名进行解密获得第二子签名。
第一通信端接收到第四中间参数和第二中间参数后,考虑到第四中间参数和第二中间参数分别是由第二通信端和第三通信端发送的,且都是经过加密计算得到的,为了使上述加密计算过程正常进行,第一通信端需要先对第四中间参数和第二中间参数进行加密,获得加密的签名部分,从而保证加密过程完整。
再针对加密的签名部分进行解密,即对第一加密子签名进行解密获得第一子签
名,该第一子签名可以用表示;对第二加密子签名进行解密获得第二子签名,该第二子签
名可以用表示。该第一子签名和第二子签名可以用于计算第二签名,第二签名可以用
表示。
在计算第二签名的过程中,除了需要第一子签名和第二子签名外,还需要第一签名参与计算。而第一签名是由第三通信端计算生成的,第一通信端需要对该第一签名进行进一步地验证,保证第一签名没有被泄露,提高签名的准确性和安全性,因此,可选地,第三通信端将第二中间参数及第一签名发送至第一通信端的同时,该方法还可以包括:
所述第三通信端将所述第二部分签名、所述第三部分签名及所述第二协同签名发送至所述第一通信端;
所述第一通信端基于所述第二部分签名、所述第三部分签名及所述第二协同签名生成第一验证签名,并利用所述第一验证签名验证所述第一签名;
若验证通过,所述第一通信端基于所述第一子签名和所述第二子签名计算获得第二签名。
第三通信端将第二部分签名、第三部分签名及第二协同签名一并发送至第一通信端,以便于第一通信端对第一签名进行验证。
具体地,第一通信端可以将第二部分签名、第三部分签名及第二协同签名按照第一验证签名生成公式生成第一验证签名:
第一通信端利用生成的第一验证签名对第一签名进行验证,具体可以是验证第一验证签名与第一签名是否相等。若二者相等,则验证通过,第一签名正确,且没有被泄露,可以结合该第一签名进行第二签名计算;若二者不相等,则验证不通过,第一签名出现错误,或已被泄露,不可以参与第二签名计算,此时,终止签名。
第一通信端验证第一签名通过后,再基于第一子签名、第二子签名和第一签名计算生成第二签名,具体可以按照第二签名计算公式进行计算:
第一通信端生成第二签名之后,为了保证计算获得的第二签名是正确的,也需要对该第二签名进行验证。因此,可选地,第二通信端基于解密结果计算获得第二签名;以及输出第一签名和第二签名可以包括:
所述第一通信端基于解密结果计算获得第二签名,并验证所述第二签名是否等于0;
若否,输出所述第一签名和所述第二签名;
若是,返回所述第一通信端生成待签名消息的消息摘要及第一部分签名的步骤重新执行。
第一通信端生成第二签名后,需要验证第二签名是否等于0,若第二签名等于0,则证明第二签名错误,无法输出该第二签名,返回第一通信端生成待签名消息的消息摘要及第一部分签名的步骤重新执行;若第二签名不等于0,则证明第二签名正确,继续执行输出第一签名和第二签名的操作。
第一通信段输出的第一签名和第二签名可以用于对待签名消息进行签名加密,从而可以提高三方通信的安全性。可选地,第一通信端输出第一签名和第二签名之后,该方法还可以包括:
所述第三通信端利用所述验证公钥对所述第一签名和所述第二签名进行验证。
第三通信端验证第一签名和第二签名通过后,即可以实现三方安全通信。
本实施例中,签名密钥分别在参与数据传输的三方独立生成,且签名需要三方合作计算,避免出现某一方密钥泄露,伪造签名成功的问题,同时,签名过程也结合加密算法,使得私钥在协同签名过程中处于加密状态,无需获取私钥的真实数据即可实现加密计算,适用于涉及不可信云端环境的三方通信的数据传输,提高了密钥的安全性和数据的安全性。
在某些实施例中,第一通信端生成待签名消息的消息摘要及第一部分签名的方法可以包括:
所述第一通信端生成待签名消息的消息摘要;
所述第一通信端随机生成第一随机数和第二随机数,并基于所述第一随机数生成第一部分签名;以及分别加密所述第一随机数和所述第二随机数获得第一加密数和第二加密数。
可选地,该加密算法可以为同态加密算法。其中,同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。同态加密算法可以包括多种算法函数,都可以实现上述加密的功能,本实施例中对此不做限定。
在三方通信的过程中,对计算签名的重要参数采用同态加密算法进行加密,可以保证重要参数在三方通信的传输过程中具有较高的安全性,参与计算的通信方无需明确该参数的真实数据,即可以完成相应的运算,避免被处于不可信环境的通信方泄露数据,提高安全性。
第一通信段生成待签名消息的消息摘要的过程在前面的实施例部分有详细的说明,在此不再进行赘述。
具体地,第一通信端生成一个位于之间的第一随机数,该第一随机数即可以
用表示;以及生成一个位于之间的第二随机数,该第二随机数即可以用表示。其
中,为正整数。之后,第一通信端再基于第一随机数按照第一部分签名计算公式生成第一
部分签名:
可选地,该加密算法可以为同态加密算法。
可选地,第一通信端将消息摘要、第一部分签名及第一加密私钥发送至第二通信端的同时,该方法还可以包括:
将所述第一加密数及所述第二加密数发送至第二通信端。
其中,该第一加密数和第二加密数可以用于签名过程中重要参数的计算。
可选地,第二通信端生成第二部分签名的方法可以包括:
所述第二通信端随机生成第三随机数、第四随机数、第五随机数以及第六随机数;
所述第二通信端基于所述第三随机数生成第二部分签名。
具体地,第二通信端生成一个位于之间的第三随机数,该第三随机数即可以
用表示;以及生成一个位于之间的第四随机数,该第四随机数即可以用表示;以
及生成一个位于之间的第五随机数,该第五随机数即可以用表示;以及生成一个位
于之间的第六随机数,该第六随机数即可以用表示。其中,为正整数。之后,第二通信
端再基于第三随机数按照第二部分签名计算公式生成第二部分签名:
可选地,第二通信端基于第一加密私钥和第二加密私钥加密获得第一中间参数的方法可以包括:
所述第二通信端对所述第二加密私钥和所述第四随机数加密获得第三加密数,对所述第三随机数和所述第四随机数加密获得第四加密数;以及基于所述第一加密私钥、所述第二私钥、所述第二加密数和所述第三加密数加密获得第一子参数、基于所述第一加密数、所述第二加密数和所述第四加密数加密获得第二子参数;以及对所述第四随机数和所述第五随机数加密获得第五加密数,对所述第四随机数和所述第六随机数加密获得第六加密数,对所述第二加密私钥和所述第六随机数加密获得第七加密数;其中,所述第一子参数和所述第二子参数构成所述第一中间参数。
具体地,第二通信端可以利用同态加密算法对第二加密私钥和第四随机数加密获
得第三加密数,并利用同态加密算法对第三随机数和第四随机数加密获得第四加密
数,并利用同态加密算法对第四随机数和第五随机数加密获得第五加密数,
并利用同态加密算法对第四随机数和第六随机数加密获得第六加密数,并利用同态
加密算法对第二加密私钥和第六随机数加密获得第七加密数。其中,该第三至第七加
密数也可以用于签名过程中重要参数的计算。
可选地,第二通信端基于第一加密私钥、第二私钥、第二加密数和第三加密数加密获得第一子参数的方法可以包括:
所述第二通信端基于所述第一加密私钥、所述第二私钥、所述第二加密数和所述第三加密数按照第一加密公式加密获得第一子参数;
可选地,第二通信端基于第一加密数、第二加密数和第四加密数加密获得第二子参数的方法可以包括:
所述第二通信端基于所述第一加密数、所述第二加密数和所述第四加密数按照第二加密公式加密获得第二子参数;
该第一子参数和第二子参数共同构成第一中间参数,该第一中间参数可以用于签名的计算。
可选地,第二通信端将消息摘要、第二部分签名、第一协同签名、第一加密私钥、第二加密私钥及第一中间参数发送至第三通信端的同时,该方法还可以包括:
将所述第五加密数、所述第六加密数和所述第七加密数发送至第三通信端。
其中,该第五加密数、第六加密数和第七加密数可以用于重要参数的计算。
可选地,第三通信端生成第三部分签名的方法可以包括:
所述第三通信端随机生成第七随机数和第八随机数,并基于所述第七随机数生成第三部分签名。
具体地,第三通信端生成一个位于之间的第七随机数,该第七随机数即可以
用表示;以及生成一个位于之间的第八随机数,该第八随机数即可以用表示。其
中,为正整数。之后,第三通信端再基于第七随机数按照第三部分签名计算公式生成第三
部分签名;
可选地,第三通信端基于第一加密私钥、第二加密私钥及第三加密私钥,加密获得第二中间参数及第三中间参数的方法可以包括:
所述第三通信端基于所述第七随机数和所述第一签名生成第九随机数;以及基于所述第三加密私钥和所述第八随机数加密获得第八加密数;以及基于所述第八随机数和所述第九随机数加密获得第九加密数;以及基于所述第一子参数、所述第一加密私钥、所述第三私钥及所述第八加密数加密获得第三子参数、基于所述第二子参数和所述第九加密数加密获得第四子参数;其中,所述第三子参数和所述第四子参数构成所述第二中间参数;
所述第三通信端基于所述第六加密数和所述第七加密数加密获得第五子参数、基于所述第五加密数和所述第九随机数加密获得第六子参数;其中,所述第五子参数和所述第六子参数构成所述第三中间参数。
具体地,第三通信端可以基于第七随机数和第一签名生成按照第九随机数计算公式计算第九随机数;
可选地,第三通信端基于第一子参数、第一加密私钥、第三私钥及第八加密数加密获得第三子参数的方法可以包括:
所述第三通信端基于所述第一子参数、所述第一加密私钥、所述第三私钥及所述第八加密数按照第三加密公式加密获得第三子参数;
可选地,第三通信端基于第二子参数和第九加密数加密获得第四子参数的方法可以包括:
所述第三通信端基于所述第二子参数和所述第九加密数按照第四加密公式加密获得第四子参数;
该第三子参数和第四子参数可以构成第二中间参数,其中,该第二中间参数可以用于签名计算。
可选地,第三通信端基于第六加密数和第七加密数加密获得第五子参数的方法可以包括:
所述第三通信端基于所述第六加密数和所述第七加密数按照第五加密公式加密获得第五子参数;
可选地,第三通信端基于第五加密数和第九随机数加密获得第六子参数的方法可以包括:
所述第三通信端基于所述第五加密数和所述第九随机数按照第六加密公式加密获得第六子参数;
该第五子参数和第六子参数可以构成第三中间参数,其中,该第三中间参数可以用于签名计算。
第一通信端需要对第三通信端生成的第一签名进行验证,保证第一签名没有被泄露,提高签名的准确性和安全性,因此,可选地,第三通信端将第二中间参数及第一签名发送至第一通信端的同时,该方法还可以包括:
所述第三通信端将所述第二部分签名、所述第三部分签名及所述第二协同签名发送至所述第一通信端。
可选地,第一通信端对第四中间参数及第二中间参数进行解密,并基于解密结果计算获得第二签名的方法可以包括:
所述第一通信端基于所述第四中间参数及所述第二中间参数加密获得第一加密子签名及第二加密子签名;以及对所述第一加密子签名进行解密获得第一子签名,并对所述第二加密子签名进行解密获得第二子签名。
可选地,第一通信端可以基于第三子参数及第七子参数加密获得第一加密子签名;以及基于第四子参数及第八子参数加密获得第二加密子签名。
具体地,第一通信端可以基于第三子参数及第七子参数按照第七加密公式加密获得第一加密子签名;
第一通信端还可以基于第四子参数及第八子参数按照第八加密公式加密获得第二加密子签名;
可选地,第一通信端可以利用第四私钥对该第一加密子签名进行解密获得第一子
签名,并利用第四私钥对该第二加密子签名进行解密获得第二子签名,其中,该第四私钥可
以用表示,可以由第一通信端预先生成并保存,表示同态加密算法的私钥。
具体地,第一通信端可以利用第四私钥按照第一解密公式对第一加密子签名进行解密获得第一子签名:
第一通信端还可以利用第四私钥按照第二解密公式对第二加密子签名进行解密获得第二子签名:
第一通信端生成第一子签名和第二子签名的同时,还可以基于第二部分签名、第三部分签名及第二协同签名生成第一验证签名,并利用该第一验证签名对第一签名进行验证,待验证通过后,第一通信端才可以基于该第一子签名和该第二子签名计算获得第二签名。
本实施例中,在三方通信涉及到的重要参数计算中,利用同态加密算法,主要是加法同态加密算法计算生成重要参数,保护了数据传输过程的安全性,使得参与计签名计算的通信方无需了解重要参数的真实数据,即可以完成计算过程,避免了被中间人攻击,造成重要参数泄露,从而影响私钥和数据的安全性。适用于涉及不可信云端环境的三方通信的数据传输,提高了密钥的安全性和数据的安全性。
在某些实施例中,第一通信端输出第一签名和第二签名后,即可以利用该第一签名和第二签名对数据进行签名,从而实现安全传输。此时,第三通信端可以利用验证公钥对该第一签名和第二签名进行验证。
第三通信端可以利用验证公钥证明验证公式成立;
若成立,则确定第一签名和第二签名验证成功。
由第一通信端计算并输出的第二签名是按照第二签名计算公式得到的;
由此可知,第三通信端要验证第一签名和第二签名的正确性,也即是证明验证关系式成立;
其中,表示第一签名;表示第二签名;表示第一私钥;表示第二私钥;
表示第三私钥;表示第一随机数;表示第三随机数;表示第七随机数;表示第二随
机数;表示第四随机数;表示第八随机数,表示求模计算,为正整数。
即第三通信端验证第一签名和第二签名正确,则可以保证数据传输的安全性,适用于涉及不可信云端环境的三方通信的数据传输,提高了密钥的安全性和数据的安全性。
如图3所示,为本发明实施例提供的一种签名处理装置一个实施例的结构示意图,该装置可以包括以下几个模块:
第一生成模块301,用于生成待签名消息的消息摘要及第一部分签名。
第一加密模块302,用于加密第一私钥获得第一加密私钥。
第一发送模块303,用于将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端;其中,所述第二通信端用于生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;其中,所述第三通信端用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至第一通信端以及将所述第三中间参数发送至所述第二通信端,由所述第二通信端基于所述第三中间参数计算获得第四中间参数。
第一签名模块304,用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名。
第一输出模块305,用于输出所述第一签名和所述第二签名。
图3所述的签名处理装置应用于图1所示实施例中的第一通信端,可以执行图1所示实施例中第一通信端中所述的签名方法,其实现原理和技术效果不再赘述。对于上述实施例中的签名处理装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
如图4所示,为本发明实施例提供的一种签名处理装置另一个实施例的结构示意图,该装置可以包括以下几个模块:
第一接收模块401,用于接收第一通信端发送的待签名消息的消息摘要、第一部分签名及第一加密私钥;其中,所述消息摘要及所述第一部分签名由所述第一通信端生成;所述第一加密私钥由所述第一通信端对第一私钥加密获得。
第二生成模块402,用于生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名。
第二加密模块403,用于加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数。
第二发送模块404,用于将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;其中,所述第三通信端用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数,以及将所述第二中间参数及所述第一签名发送至所述第一通信端。
第二接收模块405,用于接收所述第三通信端发送的所述第三中间参数。
计算模块406,用于基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;其中,所述第一通信端用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
图4所述的签名处理装置应用于图1所示实施例中的第二通信端,可以执行图1所示实施例中第二通信端中所述的签名方法,其实现原理和技术效果不再赘述。对于上述实施例中的签名处理装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
如图5所示,为本发明实施例提供的一种签名处理装置另一个实施例的结构示意图,该装置可以包括以下几个模块:
第三接收模块501,用于接收第二通信端发送的消息摘要、第二部分签名、第一协同签名、第一加密私钥、第二加密私钥及第一中间参数;其中,所述消息摘要以及所述第一加密私钥由第一通信端生成并发送至所述第二通信端;所述第二部分签名由所述第二通信端生成;所述第一协同签名由所述第二通信端结合所述第二部分签名和第一部分签名生成;所述第二加密私钥由所述第二通信端对第二私钥加密获得;所述第一中间参数由所述第二通信端基于所述第一加密私钥和所述第二加密私钥加密获得。
第三生成模块502,用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名。
第三加密模块503,用于加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数。
第三发送模块504,用于将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第二通信端用于基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;所述第一通信端用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
图5所述的签名处理装置应用于图1所示实施例中的第三通信端,可以执行图1所示实施例中第三通信端中所述的签名方法,其实现原理和技术效果不再赘述。对于上述实施例中的签名处理装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
如图6所示,为本发明实施例提供的一种签名处理系统一个实施例的结构示意图,该系统可以包括第一通信端601、第二通信端602以及第三通信端603;
所述第一通信端,用于生成待签名消息的消息摘要及第一部分签名;以及加密第一私钥获得第一加密私钥,并将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端;
所述第二通信端,用于生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;
所述第三通信端,用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第一私钥、所述第二私钥以及所述第三私钥分别由所述第一通信端、所述第二通信端以及所述第三通信端各自生成,并由所述第三通信端生成验证公钥;
所述第二通信端,还用于基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;
所述第一通信端,还用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
图6所述的签名处理系统可以执行图1所示实施例中所述的签名处理方法,其实现原理和技术效果不再赘述。对于上述实施例中的签名处理系统中各个通信端执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (16)
1.一种签名处理方法,其特征在于,包括:
第一通信端生成待签名消息的消息摘要及第一部分签名;以及加密第一私钥获得第一加密私钥,并将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端;
所述第二通信端生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;
所述第三通信端生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第一私钥、所述第二私钥以及所述第三私钥分别由所述第一通信端、所述第二通信端以及所述第三通信端各自生成,并由所述第三通信端生成验证公钥;
所述第二通信端基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;
所述第一通信端对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
2.根据权利要求1所述的方法,其特征在于,所述第一通信端生成待签名消息的消息摘要及第一部分签名之前,所述方法还包括:
第一通信端生成第一私钥;以及基于所述第一私钥生成第一公钥,并将所述第一公钥发送至第二通信端;
所述第二通信端生成第二私钥;以及基于所述第二私钥生成第二公钥及结合所述第一公钥和所述第二公钥生成临时公钥,并将所述临时公钥发送至第三通信端;
所述第三通信端生成第三私钥;以及基于所述第三私钥生成第三公钥及结合所述临时公钥和所述第三公钥生成验证公钥。
3.根据权利要求1所述的方法,其特征在于,所述第一通信端输出所述第一签名和所述第二签名之后,所述方法还包括:
所述第三通信端利用所述验证公钥对所述第一签名和所述第二签名进行验证。
4.根据权利要求1所述的方法,其特征在于,所述第一通信端生成待签名消息的消息摘要及第一部分签名包括:
所述第一通信端生成待签名消息的消息摘要;
所述第一通信端随机生成第一随机数和第二随机数,并基于所述第一随机数生成第一部分签名;以及分别加密所述第一随机数和所述第二随机数获得第一加密数和第二加密数;
所述第一通信端将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端的同时,所述方法还包括:
将所述第一加密数及所述第二加密数发送至第二通信端;
所述第二通信端生成第二部分签名包括:
所述第二通信端随机生成第三随机数、第四随机数、第五随机数以及第六随机数;
所述第二通信端基于所述第三随机数生成第二部分签名;
所述第二通信端基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数包括:
所述第二通信端对所述第二加密私钥和所述第四随机数加密获得第三加密数,对所述第三随机数和所述第四随机数加密获得第四加密数;以及基于所述第一加密私钥、所述第二私钥、所述第二加密数和所述第三加密数加密获得第一子参数、基于所述第一加密数、所述第二加密数和所述第四加密数加密获得第二子参数;以及对所述第四随机数和所述第五随机数加密获得第五加密数,对所述第四随机数和所述第六随机数加密获得第六加密数,对所述第二加密私钥和所述第六随机数加密获得第七加密数;其中,所述第一子参数和所述第二子参数构成所述第一中间参数;
所述第二通信端将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端的同时,所述方法还包括:
将所述第五加密数、所述第六加密数和所述第七加密数发送至第三通信端;
所述第三通信端生成第三部分签名包括:
所述第三通信端随机生成第七随机数和第八随机数,并基于所述第七随机数生成第三部分签名;
所述第三通信端基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数包括:
所述第三通信端基于所述第七随机数和所述第一签名生成第九随机数;以及基于所述第三加密私钥和所述第八随机数加密获得第八加密数;以及基于所述第八随机数和所述第九随机数加密获得第九加密数;以及基于所述第一子参数、所述第一加密私钥、所述第三私钥及所述第八加密数加密获得第三子参数、基于所述第二子参数和所述第九加密数加密获得第四子参数;其中,所述第三子参数和所述第四子参数构成所述第二中间参数;
所述第三通信端基于所述第六加密数和所述第七加密数加密获得第五子参数、基于所述第五加密数和所述第九随机数加密获得第六子参数;其中,所述第五子参数和所述第六子参数构成所述第三中间参数;
所述第三通信端将所述第二中间参数和所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端包括:
所述第三通信端将所述第三子参数、所述第四子参数和所述第一签名发送至所述第一通信端以及将所述第五子参数和所述第六子参数发送至所述第二通信端;
所述第二通信端基于所述第三中间参数计算获得第四中间参数包括:
所述第二通信端基于所述第五子参数和所述第六随机数计算获得第七子参数、基于所述第六子参数和所述第五随机数计算获得第八子参数;其中,所述第七子参数和所述第八子参数构成所述第四中间参数。
5.根据权利要求4所述的方法,其特征在于,所述第三通信端将所述第二中间参数及所述第一签名发送至所述第一通信端的同时,所述方法还包括:
所述第三通信端将所述第二部分签名、所述第三部分签名及所述第二协同签名发送至所述第一通信端;
所述第一通信端对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名包括:
所述第一通信端基于所述第四中间参数及所述第二中间参数加密获得第一加密子签名及第二加密子签名;以及对所述第一加密子签名进行解密获得第一子签名,并对所述第二加密子签名进行解密获得第二子签名;
所述第一通信端基于所述第二部分签名、所述第三部分签名及所述第二协同签名生成第一验证签名,并利用所述第一验证签名验证所述第一签名;
若验证通过,所述第一通信端基于所述第一子签名和所述第二子签名计算获得第二签名。
6.根据权利要求5所述的方法,其特征在于,所述第一通信端基于所述第四中间参数及所述第二中间参数加密获得第一加密子签名及第二加密子签名包括:
所述第一通信端基于所述第三子参数及所述第七子参数加密获得第一加密子签名;以及基于所述第四子参数及所述第八子参数加密获得第二加密子签名;
所述第一通信端对所述第一加密子签名进行解密获得第一子签名,并对所述第二加密子签名进行解密获得第二子签名包括:
所述第一通信端利用第四私钥对所述第一加密子签名进行解密获得第一子签名,并利用所述第四私钥对所述第二加密子签名进行解密获得第二子签名。
7.根据权利要求1所述的方法,其特征在于,所述第三通信端基于所述第二协同签名及所述消息摘要获得第一签名之后,所述方法还包括:
所述第三通信端验证所述第一签名是否等于0;
若是,返回所述第一通信端生成待签名消息的消息摘要及第一部分签名的步骤重新执行;
若否,执行所述加密第三私钥获得第三加密私钥的步骤。
8.根据权利要求1所述的方法,其特征在于,所述第一通信端基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名包括:
所述第一通信端基于解密结果计算获得第二签名,并验证所述第二签名是否等于0;
若否,输出所述第一签名和所述第二签名;
若是,返回所述第一通信端生成待签名消息的消息摘要及第一部分签名的步骤重新执行。
9.根据权利要求4所述的方法,其特征在于,所述第二通信端基于所述第一加密私钥、所述第二私钥、所述第二加密数和所述第三加密数加密获得第一子参数包括:
所述第二通信端基于所述第一加密私钥、所述第二私钥、所述第二加密数和所述第三加密数按照第一加密公式加密获得第一子参数;
所述第二通信端基于所述第一加密数、所述第二加密数和所述第四加密数加密获得第二子参数包括:
所述第二通信端基于所述第一加密数、所述第二加密数和所述第四加密数按照第二加密公式加密获得第二子参数;
所述第三通信端基于所述第一子参数、所述第一加密私钥、所述第三私钥及所述第八加密数加密获得第三子参数包括:
所述第三通信端基于所述第一子参数、所述第一加密私钥、所述第三私钥及所述第八加密数按照第三加密公式加密获得第三子参数;
所述第三通信端基于所述第二子参数和所述第九加密数加密获得第四子参数包括:
所述第三通信端基于所述第二子参数和所述第九加密数按照第四加密公式加密获得第四子参数;
所述第三通信端基于所述第六加密数和所述第七加密数加密获得第五子参数包括:
所述第三通信端基于所述第六加密数和所述第七加密数按照第五加密公式加密获得第五子参数;
所述第三通信端基于所述第五加密数和所述第九随机数加密获得第六子参数包括:
所述第三通信端基于所述第五加密数和所述第九随机数按照第六加密公式加密获得第六子参数;
10.根据权利要求6所述的方法,其特征在于,所述第一通信端基于所述第三子参数及所述第七子参数加密获得第一加密子签名包括:
所述第一通信端基于所述第三子参数及所述第七子参数按照第七加密公式加密获得第一加密子签名:
所述第一通信端基于所述第四子参数及所述第八子参数加密获得第二加密子签名包括:
所述第一通信端基于所述第四子参数及所述第八子参数按照第八加密公式加密获得第二加密子签名:
所述第一通信端利用第四私钥对所述第一加密子签名进行解密获得第一子签名包括:
所述第一通信端利用第四私钥按照第一解密公式对所述第一加密子签名进行解密获得第一子签名:
所述第一通信端利用第四私钥对所述第二加密子签名进行解密获得第二子签名包括:
所述第一通信端利用第四私钥按照第二解密公式对所述第二加密子签名进行解密获得第二子签名:
12.根据权利要求2所述的方法,其特征在于,所述第一通信端生成第一私钥包括:
第一通信端随机生成第十随机数,并将所述第十随机数作为第一私钥;
所述第二通信端生成第二私钥包括:
所述第二通信端随机生成第十一随机数,并将所述第十一随机数作为第二私钥;
所述第三通信端生成第三私钥包括:
所述第三通信端随机生成第十二随机数,并将所述第十二随机数作为第三私钥。
13.一种签名处理装置,其特征在于,包括:
第一生成模块,用于生成待签名消息的消息摘要及第一部分签名;
第一加密模块,用于加密第一私钥获得第一加密私钥;
第一发送模块,用于将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端;其中,所述第二通信端用于生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;其中,所述第三通信端用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至第一通信端以及将所述第三中间参数发送至所述第二通信端,由所述第二通信端基于所述第三中间参数计算获得第四中间参数;
第一签名模块,用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;
第一输出模块,用于输出所述第一签名和所述第二签名。
14.一种签名处理装置,其特征在于,包括:
第一接收模块,用于接收第一通信端发送的待签名消息的消息摘要、第一部分签名及第一加密私钥;其中,所述消息摘要及所述第一部分签名由所述第一通信端生成;所述第一加密私钥由所述第一通信端对第一私钥加密获得;
第二生成模块,用于生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;
第二加密模块,用于加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;
第二发送模块,用于将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;其中,所述第三通信端用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数,以及将所述第二中间参数及所述第一签名发送至所述第一通信端;
第二接收模块,用于接收所述第三通信端发送的所述第三中间参数;
计算模块,用于基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;其中,所述第一通信端用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
15.一种签名处理装置,其特征在于,包括:
第三接收模块,用于接收第二通信端发送的消息摘要、第二部分签名、第一协同签名、第一加密私钥、第二加密私钥及第一中间参数;其中,所述消息摘要以及所述第一加密私钥由第一通信端生成并发送至所述第二通信端;所述第二部分签名由所述第二通信端生成;所述第一协同签名由所述第二通信端结合所述第二部分签名和第一部分签名生成;所述第一部分签名由所述第一通信端生成并发送至所述第二通信端;所述第二加密私钥由所述第二通信端对第二私钥加密获得;所述第一中间参数由所述第二通信端基于所述第一加密私钥和所述第二加密私钥加密获得;
第三生成模块,用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;
第三加密模块,用于加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;
第三发送模块,用于将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第二通信端用于基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;所述第一通信端用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
16.一种签名处理系统,其特征在于,包括第一通信端、第二通信端以及第三通信端;
所述第一通信端,用于生成待签名消息的消息摘要及第一部分签名;以及加密第一私钥获得第一加密私钥,并将所述消息摘要、所述第一部分签名及所述第一加密私钥发送至第二通信端;
所述第二通信端,用于生成第二部分签名及结合所述第二部分签名和所述第一部分签名生成第一协同签名;以及加密第二私钥获得第二加密私钥,并基于所述第一加密私钥和所述第二加密私钥加密获得第一中间参数;以及将所述消息摘要、所述第二部分签名、所述第一协同签名、所述第一加密私钥、所述第二加密私钥及所述第一中间参数发送至第三通信端;
所述第三通信端,用于生成第三部分签名及结合所述第三部分签名和所述第一协同签名生成第二协同签名,并基于所述第二协同签名及所述消息摘要获得第一签名;以及加密第三私钥获得第三加密私钥,并基于所述第一加密私钥、所述第二加密私钥及所述第三加密私钥,加密获得第二中间参数及第三中间参数;以及将所述第二中间参数及所述第一签名发送至所述第一通信端以及将所述第三中间参数发送至所述第二通信端;其中,所述第一私钥、所述第二私钥以及所述第三私钥分别由所述第一通信端、所述第二通信端以及所述第三通信端各自生成,并由所述第三通信端生成验证公钥;
所述第二通信端,还用于基于所述第三中间参数计算获得第四中间参数,并将所述第四中间参数发送至所述第一通信端;
所述第一通信端,还用于对所述第四中间参数及所述第二中间参数进行解密,并基于解密结果计算获得第二签名;以及输出所述第一签名和所述第二签名。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010677627.6A CN111565108B (zh) | 2020-07-15 | 2020-07-15 | 签名处理方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010677627.6A CN111565108B (zh) | 2020-07-15 | 2020-07-15 | 签名处理方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111565108A CN111565108A (zh) | 2020-08-21 |
CN111565108B true CN111565108B (zh) | 2020-11-24 |
Family
ID=72075470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010677627.6A Active CN111565108B (zh) | 2020-07-15 | 2020-07-15 | 签名处理方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111565108B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112822026B (zh) * | 2021-04-22 | 2021-09-17 | 北京信安世纪科技股份有限公司 | 数字签名方法、装置及系统 |
CN115134093B (zh) * | 2022-08-30 | 2022-11-15 | 北京信安世纪科技股份有限公司 | 数字签名方法及计算设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110492990B (zh) * | 2018-05-15 | 2021-10-15 | 华为技术有限公司 | 区块链场景下的私钥管理方法、装置及系统 |
CN108667625B (zh) * | 2018-07-19 | 2021-09-24 | 数安时代科技股份有限公司 | 协同sm2的数字签名方法 |
CN108964906B (zh) * | 2018-07-19 | 2021-05-28 | 数安时代科技股份有限公司 | 协同ecc的数字签名方法 |
CN109672539B (zh) * | 2019-03-01 | 2021-11-05 | 深圳市电子商务安全证书管理有限公司 | Sm2算法协同签名及解密方法、装置及系统 |
US11070379B2 (en) * | 2019-04-18 | 2021-07-20 | Advanced New Technologies Co., Ltd. | Signature verification for a blockchain ledger |
CN111200502B (zh) * | 2020-01-03 | 2023-04-07 | 信安神州科技(广州)有限公司 | 协同数字签名方法和装置 |
CN111314089B (zh) * | 2020-02-18 | 2023-08-08 | 数据通信科学技术研究所 | 一种基于sm2的两方协同签名方法及解密方法 |
-
2020
- 2020-07-15 CN CN202010677627.6A patent/CN111565108B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111565108A (zh) | 2020-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11108565B2 (en) | Secure communications providing forward secrecy | |
CN108667626B (zh) | 安全的两方协作sm2签名方法 | |
US10785019B2 (en) | Data transmission method and apparatus | |
CN109309569B (zh) | 基于sm2算法的协同签名的方法、装置及存储介质 | |
CN107947913B (zh) | 一种基于身份的匿名认证方法与系统 | |
CN107707358B (zh) | 一种ec-kcdsa数字签名生成方法及系统 | |
CN107634836B (zh) | 一种sm2数字签名生成方法及系统 | |
Rodriguez-Henriquez et al. | A brief introduction to modern cryptography | |
CN108199835B (zh) | 一种多方联合私钥解密方法 | |
CN107659395B (zh) | 一种多服务器环境下基于身份的分布式认证方法及系统 | |
CN110120939B (zh) | 一种基于异构系统的可否认认证的加密方法和系统 | |
US11870891B2 (en) | Certificateless public key encryption using pairings | |
CN110113150B (zh) | 基于无证书环境的可否认认证的加密方法和系统 | |
CN109547209B (zh) | 一种两方sm2数字签名生成方法 | |
CN112564907B (zh) | 密钥生成方法及装置、加密方法及装置、解密方法及装置 | |
CN111355582A (zh) | 基于sm2算法的两方联合签名和解密的方法及系统 | |
CN111052673A (zh) | 匿名广播方法、密钥交换方法、匿名广播系统、密钥交换系统、通信装置、程序 | |
CN111565108B (zh) | 签名处理方法、装置及系统 | |
CN114726546A (zh) | 数字身份认证方法、装置、设备和存储介质 | |
CN108055134B (zh) | 椭圆曲线点数乘及配对运算的协同计算方法及系统 | |
CN106534077B (zh) | 一种基于对称密码的可认证的代理重加密系统及方法 | |
CN111245594B (zh) | 一种基于同态运算的协同签名方法及系统 | |
US20220038267A1 (en) | Methods and devices for secured identity-based encryption systems with two trusted centers | |
WO2023048711A1 (en) | Threshold secret share generation for distributed symmetric cryptography | |
WO2023055371A1 (en) | Replicated secret share generation for distributed symmetric cryptography |
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 |