CN115396122B - 消息处理方法、装置、电子设备及存储介质 - Google Patents
消息处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115396122B CN115396122B CN202211322508.4A CN202211322508A CN115396122B CN 115396122 B CN115396122 B CN 115396122B CN 202211322508 A CN202211322508 A CN 202211322508A CN 115396122 B CN115396122 B CN 115396122B
- Authority
- CN
- China
- Prior art keywords
- request message
- signature
- key
- calculating
- signature information
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 29
- 238000000034 method Methods 0.000 claims abstract description 34
- 238000004364 calculation method Methods 0.000 claims description 59
- 238000012795 verification Methods 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 23
- 238000012545 processing Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004891 communication Methods 0.000 abstract description 13
- 230000008569 process Effects 0.000 abstract description 9
- 238000005516 engineering process Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000004873 anchoring Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
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/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
-
- 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/3236—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 using cryptographic hash functions
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)
- Storage Device Security (AREA)
Abstract
本申请提供的一种消息处理方法、装置、电子设备及存储介质,包括:获取第一区块链的第一用户发起的请求消息,所述请求消息的对象为第二区块链的第二用户;基于私钥计算所述请求消息的签名公钥;基于所述签名公钥和随机比特数确定所述请求消息的签名信息;基于所述签名信息对所述请求消息进行签名,并将签名后的所述请求消息发送给第二设备,以使所述第二设备对所述签名信息进行验证,以将所请求消息对应的交易发送给第二区块链。本申请提供的技术方案能够在跨链访问的过程中防止故障攻击的同时,提高跨链访问的通信速度。
Description
技术领域
本申请涉及区块链技术领域,特别地涉及一种消息处理方法、装置、电子设备及存储介质。
背景技术
区块链技术涉及到了密码学、计算机科学、博弈论、数学等多个学科领域,点对点网络、加密算法、共识机制、智能合约、分布式数据存储等多种技术的不断创新,形成多类区块链项目百花齐放的景象。多类区块链项目的出现导致不同链之间通信壁垒的存在,区块链的整个生态呈割裂的形势,无法进行网状的高速价值和信息流通,形成了数据孤岛。为了打破数据孤岛,跨链技术应运而生,区块链通过跨链为每个独立区块链中的信息提供跨链契约服务。
主流的跨链技术按照其具体的实现方式主要分别是侧链/中继链。侧链是一个和主链相对独立运行的区块链,其运行依赖于主链。侧链实现的技术基础是双向锚定,通过在侧链和主链中锁定资产,并提供有效验证方式,从而在其主链或侧链上生成或释放等价值的资产。中继链本质上是公证人和侧链机制的融合和扩展,提供了一个跨链交互的平台或中继区块链,各种不同的链都可以接上中继链,实现跨链交互。但是,侧链并不是真正的协议,因为侧链技术目前没有像计算机网络一样有一些共识的协议,所以其实只能说是侧链机制,要有足够的算力保证侧链的可靠和安全,然而中继需要从各主链抽象分离出来一个跨链操作层,研发一套专门的跨链协议,增大了研发难度和接入难度。
现有技术1(CN111431903A):一种跨链中继方法、装置以及计算机可读存储介质。该方法包括,验证者节点加载主链与侧链的信息;根据所述主链与侧链的信息,将主链与侧链之间的跨链通信数据进行传输,将所述验证者节点作为中继节点实现中继功能。上述方法,可以通过两个时间门限值来合交叉判断作为中继节点的验证者节点是否可用,提高了主链与侧链之间跨链通信数据传输的可靠性。在不引入第三方的中继链的前提下,通过将验证者节点作为中继节点实现中继功能,可以确保跨链通信数据的安全性,避免由于中继链的可靠性低造成区块链信息被篡改或者截取的风险。
现有技术2(CN110245517A):一种区块链的跨链方法、装置、系统及电子设备,应用在侧链中继模式下的跨链系统中,主要包括:中继读取原生资产所在的第一区块链在锁定原生资产后生成的锁定证明;中继将锁定证明发送至第二区块链,锁定证明用于触发第二区块链对所述锁定证明进行验证,并在验证成功后生成与所述原生资产对应的映射资产;其中,所述中继为对所述第一区块链和所述第二区块链具有访问权限的去信任的全节点。由于中继满足可信设置的条件,即为主链和侧链的全节点,便可成为跨链双方认可的第三方中继并提供跨链服务,不需要通过现有技术中的复杂手段去产生能够信任的中继,从而简化中继的设置机制,通过去信任的中继简化跨链服务,且提升跨链交易安全。
发明内容
针对上述相关技术中的问题,本申请提供一种消息处理方法、装置、电子设备及存储介质。
本申请提供了一种消息处理方法,应用于第一设备,包括:
获取第一区块链的第一用户发起的请求消息,所述请求消息的对象为第二区块链的第二用户;
基于私钥计算所述请求消息的签名公钥;
基于所述签名公钥和随机比特数确定所述请求消息的签名信息;
基于所述签名信息对所述请求消息进行签名,并将签名后的所述请求消息发送给第二设备,以使所述第二设备对所述签名信息进行验证,以将所请求消息对应的交易发送给第二区块链。
在一些实施例中,所述基于私钥计算所述请求消息的签名公钥,包括:
基于所述私钥计算离散函数;
基于所述离散函数计算辅助私钥;
基于所述辅助私钥和椭圆曲线的基点计算所述请求消息的签名公钥。
在一些实施例中,所述基于所述签名公钥和随机比特数确定所述请求消息的签名信息,包括:
获取随机比特数;
基于所述随机比特数计算所述请求消息的第一哈希值;
对所述第一哈希值取余数得到临时密钥;
基于所述临时密钥和所述签名公钥计算所述请求消息的签名信息。
在一些实施例中,所述基于所述临时密钥和所述签名公钥计算所述请求消息的签名信息,包括:
基于所述临时密钥和所述基点计算所述请求消息的第一签名值;
基于所述第一签名值、所述第一哈希值和所述签名公钥确定第二哈希值;
基于所述第二哈希值、所述辅助私钥和所述临时密钥计算所述请求消息的第二签名值;
基于所述第一签名值和所述第二签名值确定所述请求消息的签名信息。
在一些实施例中,所述基于所述第二哈希值、所述辅助私钥和所述临时密钥计算第二签名值,包括:
基于第二哈希值、所述辅助私钥和所述临时密钥采用第一计算式计算所述第二签名,其中,所述第一计算式为:
S=(r+hx) mod n;
其中,S为第二签名值,r为临时密钥,h为第二哈希值,x为辅助密钥,mod n为求余运算。
本申请实施例提供一种消息处理方法,应用于第二设备,包括:
获取第一设备发送的签名的请求消息;
对所述签名的请求消息的签名信息进行验证,其中,所述签名信息基于所述签名公钥和随机比特数确定;
在所述签名信息验证通过的情况下,构造所述请求消息对应的交易,并对所述交易进行签名;
将签名后的交易发送给第二区块链。
在一些实施例中,所述签名信息包括:第一签名值和第二签名值,对所述签名的请求消息的签名信息进行验证,包括:
基于所述请求消息、所述第一签名值和所述签名公钥计算第三哈希值;
计算所述第二签名值与椭圆曲线的基点的乘积,以得到第一计算结果;
将所述第一签名值加上所述第三哈希值与所述签名公钥的乘积,以得到第二计算结果;
基于所述第一计算结果与所述第二计算结果对所述签名的请求消息的签名信息进行验证。
在一些实施例中,所述基于所述第一计算结果与所述第二计算结果对所述签名的请求消息的签名信息进行验证,包括:
在所述第一计算结果等于所述第二计算结果的情况下,确定所述签名信息验证通过;
在所述第一计算结果不等于所述第二计算结果的情况下,确定所述签名信息验证不通过。
本申请实施例提供一种消息处理装置,应用于第一设备,包括:
第一获取模块,用于获取第一区块链的第一用户发起的请求消息,所述请求消息的对象为第二区块链的第二用户;
第一计算模块,用于基于私钥计算所述请求消息的签名公钥;
第一确定模块,用于基于所述签名公钥和随机比特数确定所述请求消息的签名信息;
第一发送模块,用于基于所述签名信息对所述请求消息进行签名,并将签名后的所述请求消息发送给第二设备,以使所述第二设备对所述签名信息进行验证,以将所请求消息对应的交易发送给第二区块链。
本申请实施例提供一种消息处理装置,应用于第二设备,包括:
第二获取模块,用于获取第一设备发送的签名的请求消息;
验证模块,用于对所述签名的请求消息的签名信息进行验证,其中,所述签名信息是所述第一设备基于所述签名公钥和随机比特数确定的;
签名模块,用于在所述签名信息验证通过的情况下,构造所述请求消息对应的交易,并对所述交易进行签名;
第二发送模块,用于将签名后的交易发送给第二区块链。
本申请实施例提供一种电子设备,包括:包括存储器和处理器,所述存储器上存储有计算机程序,该计算机程序被所述处理器执行时,执行如上述所述的消息处理方法。
本申请实施例提供一种存储介质,该存储介质存储的计算机程序,能够被一个或多个处理器执行,能够用来实现上述所述的消息处理方法。
本申请实施例提供一种消息处理方法、装置、电子设备及存储介质,第一设备通过签名公钥和随机比特数确定请求消息的签名信息,然后进行签名,并发送给第二设备,第二设备对所述签名信息进行验证,在验证成功后,将所请求消息对应的交易发送给第二区块链,能够在跨链访问的过程中防止故障攻击的同时,提高跨链访问的通信速度。
附图说明
在下文中将基于实施例并参考附图来对本申请进行更详细的描述。
图1为本申请实施例提供的一种消息处理方法的实现流程示意图;
图2为本申请实施例提供的另一种消息处理方法的实现流程示意图;
图3为本申请实施例提供的一种消息处理装置的结构示意图;
图4为本申请实施例提供的电子设备的组成结构示意图。
在附图中,相同的部件使用相同的附图标记,附图并未按照实际的比例绘制。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
如果申请文件中出现“第一\第二\第三”的类似描述则增加以下的说明,在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
基于相关技术中存在的问题,本申请实施例提供一种消息处理方法,所述方法应用于第一设备,所述第一设备为电子设备,所述电子设备具体可以为手机、平板电脑、笔记本电脑、超级移动个人计算机(Ultra-mobile Personal Computer,UMPC)、手持计算机、上网本、服务器等,本申请实施例对此不做任何限制。本申请实施例提供的消息处理方法所实现的功能可以通过电子设备的处理器调用程序代码来实现,其中,程序代码可以保存在计算机存储介质中。图1为本申请实施例提供的该消息处理方法的实现流程示意图,如图1所示,包括:
步骤S1:获取第一区块链的第一用户发起的请求消息,所述请求消息的对象为第二区块链的第二用户。
本申请实施例中,所述请求消息可以是交易请求信息,所述第一区块链和第二区块链不同。本申请实施例中,可以通过获取第一用户的输入信息来获取第一区块链的第一用户发起的请求消息。
步骤S2,基于私钥计算所述请求消息的签名公钥。
本申请实施例中,步骤S2可以通过以下步骤实现:
步骤S21,基于所述私钥计算离散函数。
本申请实施例中,私钥可以用K表示,私钥为b位的私钥。
本申请实施例中,可以基于私钥计算散列函数,散列函数可以包括:H(k)=(h0,...,h2b-1)、a=(h0,...,hb-1)、b=(hb,...,h2b-1),其中,a和b为椭圆曲线的系数。
步骤S22,基于所述离散函数计算辅助私钥。
承接上面的示例,辅助私钥可以用x表示,可以通过以下计算式计算所述辅助私钥:
x=2b-2+Σ3≤i≤b-32ihi;
其中,x为整数。
步骤S23,基于所述辅助私钥和椭圆曲线的基点计算所述请求消息的签名公钥。
承接上面的示例,椭圆曲线的基点可以用B表示,所述签名公钥可以通过以下计算式计算:
A=x*B;
其中,A为签名公钥。
步骤S3,基于所述签名公钥和随机比特数确定所述请求消息的签名信息。
本申请实施例中,步骤S3可以通过以下步骤实现:
步骤S31,获取随机比特数。
本申请实施例中,随机比特数可以用ni表示。
步骤S32,基于所述随机比特数计算所述请求消息的第一哈希值。
承接上面的示例,请求消息可以用M表示,可以通过以下公式计算第一哈希值:
e=H(hb,...,h2b-1,M,ni);
其中,e为第一哈希值,H表示哈希运算。
步骤S33,对所述第一哈希值取余数得到临时密钥。
承接上面的示例,可以通过以下计算公式计算临时密钥:
r=e mod n;
其中,r为临时密钥,mod n为求余运算。
步骤S34,基于所述临时密钥和所述签名公钥计算所述请求消息的签名信息。
承接上面的示例,步骤S34可以通过以下步骤实现:
步骤S341,基于所述临时密钥和所述基点计算所述请求消息的第一签名值。
本申请实施例中,可以通过以下公式计算第一签名值:
R=rB;
其中,R为第一签名值,r为临时密钥,B为椭圆曲线的基点。
承接上面的示例,若第一签名值为无穷远点,则从基于所述私钥计算离散函数的步骤。
步骤S342,基于所述第一签名值、所述第一哈希值和所述签名公钥确定第二哈希值。
承接上面的示例,可以通过以下公式计算第二哈希值:
h=H(R,A,e);
其中,h为第二哈希值。
步骤S343,基于所述第二哈希值、所述辅助私钥和所述临时密钥计算所述请求消息的第二签名值。
本申请实施例中,基于第二哈希值、所述辅助私钥和所述临时密钥采用第一计算式计算所述第二签名,其中,所述第一计算式为:
S=(r+hx)mod n;
其中,S为第二签名值,r为临时密钥,h为第二哈希值,x为辅助密钥,mod n为求余运算。
步骤S344,基于所述第一签名值和所述第二签名值确定所述请求消息的签名信息。
承接上面的示例,签名信息可以表示为:(R,S)。
步骤S4,基于所述签名信息对所述请求消息进行签名,并将签名后的所述请求消息发送给第二设备,以使所述第二设备对所述签名信息进行验证,以将所请求消息对应的交易发送给第二区块链。
本申请实施例中,第二设备可以对签名信息进行验证,验证成功后,第二设备构造所述请求消息对应的交易,并对所述交易进行签名;将签名后的交易发送给第二区块链,从而完成跨链,以实现信息交互。
本申请实施例提供的消息处理方法,第一设备通过签名公钥和随机比特数确定请求消息的签名信息,然后进行签名,并发送给第二设备,第二设备对所述签名信息进行验证,在验证成功后,将所请求消息对应的交易发送给第二区块链,在验证成功后,将所请求消息对应的交易发送给第二区块链,能够在跨链访问的过程中防止故障攻击的同时,提高跨链访问的通信速度。
另外,本申请实施例提供的消息处理方法,不需要额外的研发一套跨链系统,减少开发成本和复杂度,而且不需要足够的算力也可以保证跨链技术的可靠和安全。
本申请实施例再提供一种消息处理方法,所述方法应用于第二设备,所述第二设备为电子设备,所述电子设备具体可以为手机、平板电脑、笔记本电脑、超级移动个人计算机(Ultra-mobile Personal Computer,UMPC)、手持计算机、上网本、服务器等,本申请实施例对此不做任何限制。本申请实施例提供的消息处理方法所实现的功能可以通过电子设备的处理器调用程序代码来实现,其中,程序代码可以保存在计算机存储介质中。图2为本申请实施例提供的该消息处理方法的实现流程示意图,如图2所示,包括:
步骤S101,获取第一设备发送的签名的请求消息。
本申请实施例中,采用签名信息对请求消息进行签名后即得到签名的请求消息。所述签名信息包括:第一签名值和第二签名值。
步骤S102,对所述签名的请求消息的签名信息进行验证,其中,所述签名信息是所述第一设备基于所述签名公钥和随机比特数确定。
本申请实施例中,步骤S102可以通过以下步骤实现:
步骤S1021,基于所述请求消息、所述第一签名值和所述签名公钥计算第三哈希值。
本申请实施例中,所述第三哈希值可以通过以下公式计算:
h=H(R,A,M);
其中,h为第三哈希值,R为第一签名值,A为签名公钥,M为请求消息。
步骤S1022,计算所述第二签名值与椭圆曲线的基点的乘积,以得到第一计算结果;
步骤S1023,将所述第一签名值加上所述第三哈希值与所述签名公钥的乘积,以得到第二计算结果;
步骤S1024,基于所述第一计算结果与所述第二计算结果对所述签名的请求消息的签名信息进行验证。
承接上面的示例,可以通过以下公式对签名信息进行验证:
SB=R+hA;
其中,S为第二签名值,B为椭圆曲线的基点,R为第一签名值,h为第三哈希值,A为签名公钥。
本申请实施例中,可以验证上述公式是否成立以对所述签名信息进行验证。
本申请实施例中,在所述第一计算结果等于所述第二计算结果的情况下,确定所述签名信息验证通过;在所述第一计算结果不等于所述第二计算结果的情况下,确定所述签名信息验证不通过。
承接上面的示例,SB不等于R+hA,则验证不通过。
步骤S103,在所述签名信息验证通过的情况下,构造所述请求消息对应的交易,并对所述交易进行签名。
步骤S104,将签名后的交易发送给第二区块链。
本申请实施例中,在将交易发送给第二区块链后,则第二区块链就可以等待执行。
本申请实施例提供的消息处理方法,通过第二设备对所述签名信息进行验证,在验证成功后,将所请求消息对应的交易发送给第二区块链,通过引入随机比特数能够在在防止故障攻击,而且本申请实施例提供的消息处理方法不需要中继网络确定,从而提高跨链访问的通信速度。
基于前述的实施例,本申请实施例提供一种消息处理装置,该装置包括的各模块、以及各模块包括的各单元,可以通过计算机设备中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(CPU,Central ProcessingUnit)、微处理器(MPU,Microprocessor Unit)、数字信号处理器(DSP,Digital SignalProcessing)或现场可编程门阵列(FPGA,Field Programmable Gate Array)等。
本申请实施例提供了一种消息处理装置300,应用于第一设备,图3为本申请实施例提供的一种消息处理装置的结构示意图,如图3所示,消息处理装置300包括:
第一获取模块301,用于获取第一区块链的第一用户发起的请求消息,所述请求消息的对象为第二区块链的第二用户;
第一计算模块302,用于基于私钥计算所述请求消息的签名公钥;
第一确定模块303,用于基于所述签名公钥和随机比特数确定所述请求消息的签名信息;
第一发送模块304,用于基于所述签名信息对所述请求消息进行签名,并将签名后的所述请求消息发送给第二设备,以使所述第二设备对所述签名信息进行验证,以将所请求消息对应的交易发送给第二区块链。
在一些实施例中,所述第一计算模块302包括:
第一计算单元,用于基于所述私钥计算离散函数;
第二计算单元,用于基于所述离散函数计算辅助私钥;
第三计算单元,用于基于所述辅助私钥和椭圆曲线的基点计算所述请求消息的签名公钥。
在一些实施例中,第一确定模块303,用于基于所述签名公钥和随机比特数确定所述请求消息的签名信息,包括:
第一获取单元,用于获取随机比特数;
第四计算单元,用于基于所述随机比特数计算所述请求消息的第一哈希值;
第五计算单元,用于对所述第一哈希值取余数得到临时密钥;
第六计算单元,用于基于所述临时密钥和所述签名公钥计算所述请求消息的签名信息。
在一些实施例中,所述第六计算单元,包括:
第一计算子单元,用于基于所述临时密钥和所述基点计算所述请求消息的第一签名值;
第一确定子单元,用于基于所述第一签名值、所述第一哈希值和所述签名公钥确定第二哈希值;
第二计算子单元,用于基于所述第二哈希值、所述辅助私钥和所述临时密钥计算所述请求消息的第二签名值;
第二确定子单元,用于基于所述第一签名值和所述第二签名值确定所述请求消息的签名信息。
在一些实施例中,所述第二计算子单元用于基于第二哈希值、所述辅助私钥和所述临时密钥采用第一计算式计算所述第二签名,其中,所述第一计算式为:
S=(r+hx) mod n;
其中,S为第二签名值,r为临时密钥,h为第二哈希值,x为辅助密钥,mod n为求余运算。
本申请实施例再提供一种,应用于第二设备,包括:
第二获取模块,用于获取第一设备发送的签名的请求消息;
验证模块,用于对所述签名的请求消息的签名信息进行验证,其中,所述签名信息是所述第一设备基于所述签名公钥和随机比特数确定的;
签名模块,用于在所述签名信息验证通过的情况下,构造所述请求消息对应的交易,并对所述交易进行签名;
第二发送模块,用于将签名后的交易发送给第二区块链。
在一些实施例中,所述签名信息包括:第一签名值和第二签名值,验证模块包括:
第七计算单元,用于基于所述请求消息、所述第一签名值和所述签名公钥计算第三哈希值;
第八计算单元,用于计算所述第二签名值与椭圆曲线的基点的乘积,以得到第一计算结果;
第九计算单元,用于将所述第一签名值加上所述第三哈希值与所述签名公钥的乘积,以得到第二计算结果;
验证单元,用于基于所述第一计算结果与所述第二计算结果对所述签名的请求消息的签名信息进行验证。
在一些实施例中,验证单元,包括:
第一验证子单元,用于在所述第一计算结果等于所述第二计算结果的情况下,确定所述签名信息验证通过;
第二验证子单元,用于在所述第一计算结果不等于所述第二计算结果的情况下,确定所述签名信息验证不通过。
需要说明的是,本申请实施例中,如果以软件功能模块的形式实现上述的消息处理方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,ReadOnly Memory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。
相应地,本申请实施例提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中提供消息处理方法中的步骤。
本申请实施例提供一种电子设备;图4为本申请实施例提供的电子设备的组成结构示意图,如图4所示,所述电子设备500包括:一个处理器501、至少一个通信总线502、用户接口503、至少一个外部通信接口504、存储器505。其中,通信总线502配置为实现这些组件之间的连接通信。其中,用户接口503可以包括显示屏,外部通信接口504可以包括标准的有线接口和无线接口。所述处理器501配置为执行存储器中存储的消息处理方法程序,以实现以上述实施例提供的消息处理方法中的步骤。
以上电子设备和存储介质实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请计算机设备和存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台控制器执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种消息处理方法,其特征在于,应用于第一设备,包括:
获取第一区块链的第一用户发起的请求消息,所述请求消息的对象为第二区块链的第二用户;
基于私钥计算所述请求消息的签名公钥;
基于所述签名公钥和随机比特数确定所述请求消息的签名信息;
基于所述签名信息对所述请求消息进行签名,并将签名后的所述请求消息发送给第二设备,以使所述第二设备对所述签名信息进行验证,验证成功后,所述第二设备构造所述请求消息对应的交易,并对所述交易进行签名,以将所述请求消息对应的交易发送给第二区块链;
所述基于私钥计算所述请求消息的签名公钥,包括:
基于所述私钥计算离散函数;
基于所述离散函数计算辅助私钥;
基于所述辅助私钥和椭圆曲线的基点计算所述请求消息的签名公钥。
2.根据权利要求1所述的方法,其特征在于,所述基于所述签名公钥和随机比特数确定所述请求消息的签名信息,包括:
获取随机比特数;
基于所述随机比特数计算所述请求消息的第一哈希值;
对所述第一哈希值取余数得到临时秘钥;
基于所述临时秘钥和所述签名公钥计算所述请求消息的签名信息。
3.根据权利要求2所述的方法,其特征在于,所述基于所述临时秘钥和所述签名公钥计算所述请求消息的签名信息,包括:
基于所述临时秘钥和所述基点计算所述请求消息的第一签名值;
基于所述第一签名值、所述第一哈希值和所述签名公钥确定第二哈希值;
基于所述第二哈希值、所述辅助私钥和所述临时秘钥计算所述请求消息的第二签名值;
基于所述第一签名值和所述第二签名值确定所述请求消息的签名信息。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第二哈希值、所述辅助私钥和所述临时秘钥计算第二签名值,包括:
基于第二哈希值、所述辅助私钥和所述临时秘钥采用第一计算式计算所述第二签名,其中,所述第一计算式为:
S=(r+hx) mod n;
其中,S为第二签名值,r为临时秘钥,h为第二哈希值,x为辅助私钥,mod n为求余运算。
5.一种消息处理方法,其特征在于,应用于第二设备,包括:
获取第一设备发送的签名的请求消息;
对所述签名的请求消息的签名信息进行验证,其中,所述签名信息是所述第一设备基于签名公钥和随机比特数确定的;
在所述签名信息验证通过的情况下,构造所述请求消息对应的交易,并对所述交易进行签名;
将签名后的交易发送给第二区块链;
其中,
所述第一设备:
基于所述私钥计算离散函数;
基于所述离散函数计算辅助私钥;
基于所述辅助私钥和椭圆曲线的基点计算所述请求消息的签名公钥。
6.根据权利要求5所述的方法,其特征在于,所述签名信息包括:第一签名值和第二签名值,对所述签名的请求消息的签名信息进行验证,包括:
基于所述请求消息、所述第一签名值和所述签名公钥计算第三哈希值;
计算所述第二签名值与椭圆曲线的基点的乘积,以得到第一计算结果;
将所述第一签名值加上所述第三哈希值与所述签名公钥的乘积,以得到第二计算结果;
基于所述第一计算结果与所述第二计算结果对所述签名的请求消息的签名信息进行验证。
7.根据权利要求6所述的方法,其特征在于,所述基于所述第一计算结果与所述第二计算结果对所述签名的请求消息的签名信息进行验证,包括:
在所述第一计算结果等于所述第二计算结果的情况下,确定所述签名信息验证通过;
在所述第一计算结果不等于所述第二计算结果的情况下,确定所述签名信息验证不通过。
8.一种消息处理装置,其特征在于,应用于第一设备,包括:
第一获取模块,用于获取第一区块链的第一用户发起的请求消息,所述请求消息的对象为第二区块链的第二用户;
第一计算模块,用于基于私钥计算所述请求消息的签名公钥;
第一确定模块,用于基于所述签名公钥和随机比特数确定所述请求消息的签名信息;
第一发送模块,用于基于所述签名信息对所述请求消息进行签名,并将签名后的所述请求消息发送给第二设备,以使所述第二设备对所述签名信息进行验证,验证成功后,所述第二设备构造所述请求消息对应的交易,并对所述交易进行签名,以将所述请求消息对应的交易发送给第二区块链;
其中,
所述第一计算模块基于私钥计算所述请求消息的签名公钥包括:
基于所述私钥计算离散函数;
基于所述离散函数计算辅助私钥;
基于所述辅助私钥和椭圆曲线的基点计算所述请求消息的签名公钥。
9.一种消息处理装置,其特征在于,应用于第二设备,包括:
第二获取模块,用于获取第一设备发送的签名的请求消息;
验证模块,用于对所述签名的请求消息的签名信息进行验证,其中,所述签名信息是所述第一设备基于所述签名公钥和随机比特数确定的;
签名模块,用于在所述签名信息验证通过的情况下,构造所述请求消息对应的交易,并对所述交易进行签名;
第二发送模块,用于将签名后的交易发送给第二区块链;
其中,
所述第一设备:
基于所述私钥计算离散函数;
基于所述离散函数计算辅助私钥;
基于所述辅助私钥和椭圆曲线的基点计算所述请求消息的签名公钥。
10.一种电子设备,其特征在于,包括:包括存储器和处理器,所述存储器上存储有计算机程序,该计算机程序被所述处理器执行时,执行如权利要求1至7任意一项所述消息处理方法。
11.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被计算机运行时执行如权利要求1至7任意一项所述消息处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211322508.4A CN115396122B (zh) | 2022-10-27 | 2022-10-27 | 消息处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211322508.4A CN115396122B (zh) | 2022-10-27 | 2022-10-27 | 消息处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115396122A CN115396122A (zh) | 2022-11-25 |
CN115396122B true CN115396122B (zh) | 2023-04-25 |
Family
ID=84127661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211322508.4A Active CN115396122B (zh) | 2022-10-27 | 2022-10-27 | 消息处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115396122B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019095936A1 (zh) * | 2017-11-15 | 2019-05-23 | 腾讯科技(深圳)有限公司 | 容器镜像的构建方法、系统、服务器、装置及存储介质 |
WO2022001375A1 (zh) * | 2020-06-28 | 2022-01-06 | 北京沃东天骏信息技术有限公司 | 基于区块链的数据存储方法、系统和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2770001C (en) * | 2011-03-07 | 2014-08-19 | Certicom Corp. | Accelerated verification of digital signatures and public keys |
CN107395659B (zh) * | 2017-03-28 | 2021-08-24 | 创新先进技术有限公司 | 一种业务受理及共识的方法及装置 |
CN112491846B (zh) * | 2020-11-18 | 2023-04-18 | 深圳前海微众银行股份有限公司 | 一种跨链的区块链通信方法及装置 |
CN113961954B (zh) * | 2021-10-25 | 2024-07-23 | 南京大学 | 一种基于时间相位编码的量子数字签名系统及方法 |
-
2022
- 2022-10-27 CN CN202211322508.4A patent/CN115396122B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019095936A1 (zh) * | 2017-11-15 | 2019-05-23 | 腾讯科技(深圳)有限公司 | 容器镜像的构建方法、系统、服务器、装置及存储介质 |
WO2022001375A1 (zh) * | 2020-06-28 | 2022-01-06 | 北京沃东天骏信息技术有限公司 | 基于区块链的数据存储方法、系统和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115396122A (zh) | 2022-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10944575B2 (en) | Implicitly certified digital signatures | |
TWI718567B (zh) | 二維碼生成方法、資料處理方法、裝置、伺服器及計算機可讀儲存媒體 | |
US8452974B2 (en) | Image processing apparatus, electronic signature generation system, electronic signature key generation method, image processing method, and program | |
US10148422B2 (en) | Implicitly certified public keys | |
CN104126284B (zh) | 生成数字签名 | |
US9882890B2 (en) | Reissue of cryptographic credentials | |
KR20140054151A (ko) | 크레덴셜 검증 | |
CN110505067B (zh) | 区块链的处理方法、装置、设备及可读存储介质 | |
CN110932865B (zh) | 一种基于sm2数字签名算法的可链接环签名生成方法 | |
CN109286490A (zh) | 支持密态数据去重和完整性验证方法及系统 | |
CN109257183A (zh) | 基于量子游走隐形传输的仲裁量子签名方法 | |
JP6780771B2 (ja) | 検証情報付与装置、検証装置、情報管理システム、方法およびプログラム | |
CN110336664B (zh) | 基于sm2密码算法的信息服务实体跨域认证方法 | |
CN116418560A (zh) | 一种基于区块链智能合约的线上快速身份认证系统及方法 | |
CN114499887B (zh) | 签名密钥生成及相关方法、系统、计算机设备和存储介质 | |
CN112364387B (zh) | 一种基于区块链网络的身份认证方法及装置、介质和设备 | |
CN116506134B (zh) | 数字证书管理方法、装置、设备、系统及可读存储介质 | |
CN108900310A (zh) | 区块链签名处理方法及区块链签名处理装置 | |
CN106533681A (zh) | 一种支持部分出示的属性证明方法与系统 | |
CN115396122B (zh) | 消息处理方法、装置、电子设备及存储介质 | |
JP2021100227A (ja) | IoT鍵管理システム,セキュアデバイス,IoTデバイス,デバイス管理装置およびセキュアエレメントの公開鍵証明書生成方法 | |
CN114362958B (zh) | 一种基于区块链的智能家居数据安全存储审计方法及系统 | |
CN111064580B (zh) | 隐式证书密钥扩展方法和装置 | |
CN114640463A (zh) | 一种数字签名方法、计算机设备及介质 | |
JP2005252702A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |