CN110545190A - 一种签名处理的方法、相关装置以及设备 - Google Patents

一种签名处理的方法、相关装置以及设备 Download PDF

Info

Publication number
CN110545190A
CN110545190A CN201910843355.XA CN201910843355A CN110545190A CN 110545190 A CN110545190 A CN 110545190A CN 201910843355 A CN201910843355 A CN 201910843355A CN 110545190 A CN110545190 A CN 110545190A
Authority
CN
China
Prior art keywords
signature
information
management server
key management
block chain
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.)
Granted
Application number
CN201910843355.XA
Other languages
English (en)
Other versions
CN110545190B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910843355.XA priority Critical patent/CN110545190B/zh
Publication of CN110545190A publication Critical patent/CN110545190A/zh
Application granted granted Critical
Publication of CN110545190B publication Critical patent/CN110545190B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • 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/3236Cryptographic 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
    • H04L9/3239Cryptographic 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 involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/3247Cryptographic 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
    • 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本申请公开了一种签名处理的方法,包括:获取第一区块链节点的第一待处理数据,第一待处理数据中包括第一目标数据;向签名服务器发送第一待处理数据中的第一目标数据,以使签名服务器采用私钥对第一目标数据进行签名处理,得到签名信息;接收签名服务器发送的签名信息;向第二区块链节点发送签名信息,以使第二区块链节点根据签名信息更新区块链账本。本申请还公开了一种签名处理的装置以及设备。整个签名处理的过程都在签名服务器中进行,将私钥保存在签名服务器侧,可以防止由于区块链节点被攻破而导致私钥泄露的隐患,将签名处理的工作从区块链节点中剥离出来,减轻区块链节点的工作负荷。

Description

一种签名处理的方法、相关装置以及设备
技术领域
本申请涉及信息安全技术领域,尤其涉及一种签名处理的方法、相关装置以及设备。
背景技术
区块链提供信任机制,具备改变金融基础架构的潜力,各类金融资产都可以被整合到 区块链账本中,成为链上的数字资产,在区块链上进行存储、转移和交易。区块链技术的 去中心化能够降低金融企业交易成本,使交易更加便捷、直观且安全。
目前,区块链节点的私钥都是存储在本地的配置文件中,区块链节点利用本地的私钥 实现签名处理,比如加签或验签处理。
然而,一旦区块链节点被攻击,就很可能造成私钥泄露,进而导致更严重的损失,比 如数字资产或隐私数据被窃取。与此同时,区块链节点往往需要处理大量数据,签名处理 的操作会给区块链节点带来较大的工作负荷。
发明内容
本申请实施例提供了一种签名处理的方法、相关装置以及设备,由于整个签名处理的 过程都在签名服务器中进行,一方面将私钥保存在签名服务器侧,可以防止由于区块链节 点被攻破而导致私钥泄露的隐患,另一方面,将签名处理的工作从区块链节点中剥离出来, 从而减轻区块链节点的工作负荷。
有鉴于此,本申请第一方面提供一种签名处理的方法,包括:
密钥管理服务器获取第一区块链节点的第一待处理数据,其中,第一待处理数据中包 括第一目标数据;
密钥管理服务器向签名服务器发送第一待处理数据中的第一目标数据,以使签名服务 器采用私钥对第一目标数据进行签名处理,得到签名信息;
密钥管理服务器接收签名服务器发送的签名信息;
密钥管理服务器向第二区块链节点发送签名信息,以使第二区块链节点根据签名信息 更新区块链账本。
本申请第二方面提供一种签名处理的方法,包括:
在密钥管理服务器获取第一区块链节点的第一待处理数据之后,第二区块链节点接收 密钥管理服务器发送的签名信息,其中,签名信息为签名服务器采用私钥对第一目标数据 进行签名处理后得到的,第一目标数据包含于第一待处理数据中;
第二区块链节点根据签名信息生成签名验证结果;
第二区块链节点将签名验证结果记录至区块链账本。
本申请第三方面提供一种签名处理装置,包括:
获取单元,用于获取第一区块链节点的第一待处理数据,其中,第一待处理数据中包 括第一目标数据;
发送单元,用于向签名服务器发送第一待处理数据中的第一目标数据,以使签名服务 器采用私钥对第一目标数据进行签名处理,得到签名信息;
接收单元,用于接收签名服务器发送的签名信息;
发送单元,还用于向第二区块链节点发送签名信息,以使第二区块链节点根据签名信 息更新区块链账本。
在一种可能的设计中,在本申请实施例的第三方面的第一种实现方式中,获取单元具 体用于:
接收第一区块链节点发送的第一待处理数据;
或,
通过第一区块链节点获取第一待处理数据。
在一种可能的设计中,在本申请实施例的第三方面的第二种实现方式中,
接收单元,还用于收第二区块链节点发送的连接请求,其中,连接请求中携带第二区 块链节点的身份验证信息;
签名处理装置还包括:验证单元,用于根据连接请求,对第二区块链节点进行身份验 证,得到身份验证结果;
发送单元,具体用于在身份验证结果为验证成功的情况下,密钥管理服务器向第二区 块链节点发送证书,其中,证书携带公钥。
在一种可能的设计中,在本申请实施例的第三方面的第三种实现方式中,
验证单元具体用于:
从连接请求中获取待验证令牌TOKEN以及待验证成员关系服务提供者标识MSPID,其 中,待验证TOKEN以及待验证MSPID属于身份验证信息;
根据信息映射关系查找待验证TOKEN所对应的目标MSPID,其中,信息映射关系用于 表示TOKEN与MSPID之间的对应关系;
若目标MSPID与待验证MSPID一致,则确定身份验证结果为验证成功;
若目标MSPID与待验证MSPID不一致,则确定身份验证结果为验证失败。
在一种可能的设计中,在本申请实施例的第三方面的第四种实现方式中,
发送单元,具体用于:
向签名服务器发送第一待处理数据中的第一目标数据,以使签名服务器根据第一目标 数据生成摘要信息,签名服务器采用私钥对摘要信息进行加密处理,得到签名信息;
向第二区块链节点发送签名信息,以使第二区块链节点根据签名信息生成签名验证结 果,将签名验证结果记录至区块链账本。
在一种可能的设计中,在本申请实施例的第三方面的第五种实现方式中,
接收单元,还用于接收第二区块链节点发送的第二待处理数据,其中,第二待处理数 据中包括第二目标数据;
发送单元,还用于向签名服务器发送第二目标数据,以使签名服务器根据第一摘要信 息以及第二摘要信息确定签名验证结果,其中,第一摘要信息为签名服务器采用第一区块 链节点的公钥对签名信息进行解密后得到的,第二摘要信息为签名服务器采用目标加密算 法对第二目标数据进行计算后得到的;
接收单元,还用于接收签名服务器发送的签名验证结果;
发送单元,还用于向第二区块链节点发送签名验证结果,以使第二区块链节点根据签 名验证结果更新区块链账本。
在一种可能的设计中,在本申请实施例的第三方面的第六种实现方式中,签名处理装 置还包括:建立单元,具体用于:
通过资源表现层状态转化RESTful接口与第一区块链节点建立通信连接;
通过RESTful接口与第二区块链节点建立通信连接。
本申请第四方面提供一种签名处理装置,包括:
接收单元,用于在密钥管理服务器获取第一区块链节点的第一待处理数据之后,接收 密钥管理服务器发送的签名信息,其中,签名信息为签名服务器采用私钥对第一目标数据 进行签名处理后得到的,第一目标数据包含于第一待处理数据中;
生成单元,用于根据签名信息生成签名验证结果;
记录单元,用于将签名验证结果记录至区块链账本。
在一种可能的设计中,在本申请实施例的第四方面的第一种实现方式中,
签名处理装置还包括:发送单元,用于向密钥管理服务器发送的连接请求,以使密钥 管理服务器根据连接请求对第二区块链节点进行身份验证,得到身份验证结果,其中,连 接请求中携带第二区块链节点的身份验证信息;
接收单元,还用于在身份验证结果为验证成功的情况下,接收密钥管理服务器发送的 证书,其中,证书携带公钥。
在一种可能的设计中,在本申请实施例的第四方面的第二种实现方式中,
生成单元,具体用于:
采用公钥对签名信息进行解密,得到第一摘要信息,其中,第一摘要信息为签名服务 器采用目标加密算法计算得到的;
获取第二待处理数据;
采用目标加密算法根据待处理数据第二待处理数据生成第二摘要信息;
若第二摘要信息与第一摘要信息一致,则确定签名验证结果为第一结果,其中,第一 结果确定第二待处理数据是由第一区块链节点发送的;
若第二摘要信息与第一摘要信息不一致,则确定签名验证结果为第二结果,其中,第 二结果表示第二待处理数据不是由第一区块链节点发送的。
在一种可能的设计中,在本申请实施例的第四方面的第三种实现方式中,签名处理装 置还包括:更新单元,用于在签名验证结果为第一结果的情况下,根据第二待处理数据更 新状态数据库,其中,状态数据库用于存储区块链账本中的交易数据,交易数据包括交易 对象、交易对象的剩余数值、交易数值以及交易时间戳。
本申请第五方面提供了一种密钥管理服务器,包括:存储器、收发器、处理器以及总 线***;
其中,存储器用于存储程序;
处理器用于执行存储器中的程序,包括如下步骤:
获取第一区块链节点的第一待处理数据,其中,第一待处理数据中包括第一目标数据;
向签名服务器发送第一待处理数据中的第一目标数据,以使签名服务器采用私钥对第 一目标数据进行签名处理,得到签名信息;
接收签名服务器发送的签名信息;
向第二区块链节点发送签名信息,以使第二区块链节点根据签名信息更新区块链账 本;
总线***用于连接存储器以及处理器,以使存储器以及处理器进行通信。
本申请第六方面提供了一种区块链节点,包括:存储器、收发器、处理器以及总线系 统;
其中,存储器用于存储程序;
处理器用于执行存储器中的程序,包括如下步骤:
在密钥管理服务器获取第一区块链节点的第一待处理数据之后,接收密钥管理服务器 发送的签名信息,其中,签名信息为签名服务器采用私钥对第一目标数据进行签名处理后 得到的,第一目标数据包含于第一待处理数据中;
根据签名信息生成签名验证结果;
将签名验证结果记录至区块链账本;
总线***用于连接存储器以及处理器,以使存储器以及处理器进行通信。
本申请的第七方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指 令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请中,密钥管理服务器获取第一区块链节点的第一待处理数据,其中,第一待处 理数据中包括第一目标数据,密钥管理服务器向签名服务器发送第一待处理数据中的第一 目标数据,以使签名服务器采用私钥对第一目标数据进行签名处理,得到签名信息,密钥 管理服务器接收签名服务器发送的签名信息,向第二区块链节点发送签名信息,以使第二 区块链节点根据签名信息更新区块链账本。通过上述方式,整个签名处理的过程都在签名 服务器中进行,一方面将私钥保存在签名服务器侧,可以防止由于区块链节点被攻破而导 致私钥泄露的隐患,另一方面,将签名处理的工作从区块链节点中剥离出来,从而减轻区 块链节点的工作负荷。
附图说明
图1为本申请实施例中去中心化的分布式数据记录一个示意图;
图2为本申请实施例中区块链的一个示意图;
图3a为本申请实施例中签名处理***的一个架构示意图;
图3b为本申请实施例中签名处理***的另一个架构示意图;
图4为本申请实施例中签名处理的方法一个实施例示意图;
图5为本申请实施例中签名处理方法的一个流程示意图;
图6为本申请实施例中签名处理方法的另一个流程示意图;
图7为本申请实施例中签名处理的方法的另一个实施例示意图;
图8为本申请实施例中签名处理***的又一个架构示意图;
图9为本申请实施例中签名处理装置一个实施例示意图;
图10为本申请实施例中签名处理装置另一个实施例示意图;
图11为本申请实施例中签名处理装置又一个实施例示意图;
图12为本申请实施例中签名处理装置再一个实施例示意图;
图13为本申请实施例中提供的服务器的一个结构示意图;
图14为本申请实施例中提供的终端设备的一个结构示意图。
具体实施方式
本申请实施例提供了一种签名处理的方法、相关装置以及设备,由于整个签名处理的 过程都在签名服务器中进行,一方面将私钥保存在签名服务器侧,可以防止由于区块链节 点被攻破而导致私钥泄露的隐患,另一方面,将签名处理的工作从区块链节点中剥离出来, 从而减轻区块链节点的工作负荷。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四” 等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理 解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除 了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应理解,本申请提供的签名处理方法可以应用于需要使用到私钥进行加密的场景中, 作为示例,例如用户甲通过A银行向B银行的用户乙发起一笔金额为1万元的转账,则A银行需要告知B银行,本银行的用户甲向乙银行的用户乙转账1万元,由于前述金融信息 具有私密性,则在A银行向B银行发送转账信息之前,需要利用私钥对根据前述信息生成 的摘要进行加密;作为另一示例,例如A银行是区块链上的一个节点,用户并通过A银行 购买了一笔价值2万元的理财产品,A银行需要将这笔交易的相关信息发送到区块链的其 他节点上,则在发送之前,需要对根据交易数据生成的摘要进行加密等;作为再一示例, 例如用户通过官网下载的文本(例如word,txt等)应用程序的文件包之后,需要通过秘 钥对下载的文件包进行解密,则例如word的官网在将前述文件包发送出来之前,可以利 用私钥对文件包进行加密;当然,在发送其他具有加密需求的信息之前,也可以通过私钥 对相关信息进行加密,此处不再对其他场景进行穷举。基于上述场景,本申请利用区块链 的机制来实现一个可信且可靠的数据处理***。
为了便于理解,本申请实施例中先对区块链机制进行介绍,请参阅图1,图1为本申请实施例中去中心化的分布式数据记录一个示意图,如图所示,区块链(BlockChain)可 以认为是一个分布式的数据记录账,具有去中心化的分布式数据记录方式,通过维护数据 块的链式结构,可以维持持续增长的、可共享的及不可篡改的数据记录。无论是终端设备、 服务器还是云服务器,都可以参与数据的记录,且记录在区块链上的数据不能被删除和篡改。区块链技术主要让参与***中的任意多个节点,通过一串使用密码学方法相关联产生的数据块(block),每个数据块中包含了一定时间内的***全部信息交流数据,并且生成数据指纹用于验证其信息的有效性和链接(chain)下一个数据块。虽然图1示出的区块 链上包括了5个节点,但应当理解,实际应用中的节点数量可以为大于5个或小于5个。
基于上述介绍,请参阅图2,图2为本申请实施例中区块链的一个示意图,如图所示, 区块T、区块T+1和区块T+2在同一条链(Chian)上,并按照发生顺序串联而成,是整个账本状态变化的日志记录。区块记录一段时间内所有交易和状态结果,是对当前账本状态的一次共识。区块中的前导区块哈希值用于关联前一个区块,比如区块T+1的前导区块哈希值用于关联区块T。区块中的交易表示一次对账本的操作,导致账本状态的一次改变, 比如添加一条转账记录。元数据用于记录具体的交易内容,比如交易时间戳、交易的密文 信息以及区块长度等。
在实现上,首先假设存在一个分布式的数据记录账本,这个账本只允许添加、不允许 删除。账本底层的基本结构是一个线性的链表,链表由一个个区块串联组成,如图2所示, 后继区块记录前导区块的哈希值。新的数据要加入,必须放到一个新的区块中。而这个块 (以及块里的交易)是否合法,可以通过计算哈希值的方式快速检验出来。任意维护节点都拥有全部区块的记录,且可以提议一个新的合法区块,然而必须经过一定的共识机制来对最终选择的区块达成一致。
本申请中,可以在区块的交易中记录金融交易数据,并且利用区块链的机制来实现一 个可信且可靠的金融数据***。
结合上述描述,本申请提出了一种签名处理的方法,用于降低私钥泄露的可能性,且 可以减轻区块链节点的工作负荷,由于后续会对私钥等密码学用语进行介绍,此处先不展 开描述。该方法应用于图3a和图3b所示的签名处理***,请参阅图3a和图3b,图3a和 图3b为本申请实施例中签名处理***的两个架构示意图,签名处理***中包括第一区块 链节点、密钥管理服务器、签名服务器以及第二区块链节点,图3a中密钥管理服务器为 区块链节点设备之外的独立服务器;图3b中密钥管理服务器是集成于区块链节点设备中 的。在图3a和图3b中,密钥管理服务器用于获取第一区块链节点的第一待处理数据,从 中提取出第一目标数据,之后将第一目标数据发送给签名服务器;签名服务器用于采用第 一区块链节点的私钥对第一目标数据进行签名处理,得到签名信息后发送给密钥管理服务 器;密钥管理服务器还用于向第二区块链节点发送签名信息;第二区块链节点用于根据签 名信息更新区块链节点,从而由签名服务器负责利用私钥执行加签操作,防止由于区块链 节点被攻破而导致私钥泄露的隐患,也减轻区块链节点的工作负荷。
其中,第一区块链节点和第二区块链节点均可以表现为终端设备或服务器,终端设备 包含但不仅限于平板电脑、笔记本电脑、掌上电脑、手机、语音交互设备及个人电脑(personal computer,PC),此处不做限定。服务器可以用独立的服务器或者是多个服务 器组成的服务器集群来实现。
下面将对本申请中签名处理的方法进行详细介绍,请参阅图4,本申请实施例中签名 处理的方法一个实施例包括:
101、密钥管理服务器获取第一区块链节点的第一待处理数据,其中,第一待处理数 据中包括第一目标数据。
本实施例中,第一区块链节点在将第一待处理数据记录至区块链账本之后,密钥管理 服务器可以获取到第一区块链节点的第一待处理数据,其中,第一待处理数据中包括第一 目标数据。具体的,第一待处理数据指的是第一区块链节点发送的数据,具体可以表现为 交易数据,第一目标数据具体可以表现为交易数据中的部分信息,前述部分信息可以为第 一待处理数据中的重要数据,第一目标数据用于供签名服务器根据第一目标数据生成第一 摘要(digest)信息。进一步的,与第一区块链节点对应的实体可以为银行、银行的商户、 银行的商户的交易对象等,银行中又可以分为具有普通交易功能的银行、具有监督功能的 银行等等。作为示例,例如商户甲通过A银行XX分行向商户乙支付货款10万元,A银行 的总行具有监督功能,则A银行可以为与第一区块链节点对应的实体,第一待处理数据中 的交易数据可以对应于商户甲向商户乙支付货款10万元这一交易事件,具体的,第一待处理数据中可以包括商户甲的银行账号、商户乙的银行账号、商户甲给商户乙的转账金额、A银行XX分行的名称、A银行XX分行的注册地点、接收商户甲录入的转账请求的终端设 备的设备标识、商户甲发起转账请求的时间、A银行XX分行开始处理转账交易的处理时间 与本次交易时间相关的数据等等,而第一目标数据可以为第一待处理数据中的部分重要数 据,作为示例,例如第一目标数据中可以只包括商户甲的银行账号、商户乙的银行账号、 商户甲给商户乙的转账金额,从而签名服务器可以利用Hash函数对第一目标数据进行处 理得到固定长度的摘要,应理解,上述举例均仅为方便理解本方案,第一区块链节点、第 一待处理数据、第一目标数据的具体展现形式可以参考实际场景中的需要,此处不做限定。
102、密钥管理服务器向签名服务器发送第一待处理数据中的第一目标数据,以使签 名服务器采用私钥对第一目标数据进行签名处理,得到签名信息。
本实施例中,密钥管理服务器在获取到第一待处理数据之后,可以从第一待处理数据 中提取出第一目标数据,之后向签名服务器发送第一待处理数据中的第一目标数据,由于 签名服务器上可以存储有不止一个区块链节点的私钥,则密钥管理服务器在向签名服务器 发送第一目标数据时可以加入第一区块链节点的标识,以使签名服务器采用第一区块链节 点的私钥对第一目标数据进行签名处理,得到签名信息(signature),其中,签名服务器 也可以称为加密机,签名信息具体可以表现为签名服务器采用第一区块链节点私钥对第一 目标数据进行加密处理后得到的密文,区块链节点的标识具体可以表现为成员关系服务提 供者标识(membership service provider identity,MSPID)、令牌(TOKEN)或其他类 型的标识等等。进一步的,与私钥对应的是公钥,第一区块链节点的私钥和第一区块链节 点的公钥可以组成一个密钥对,是一种非对称加密技术。其中,私钥是与密钥对所有者(也 即第一区块链节点)对应的签名服务器持有的,私钥具有不可公布的性质,只可以有签名 服务器持有且保存;公钥具有可公布性质,也即至少一个区块链节点上存储有第一区块链 节点的公钥。进一步的,私钥用于对第一目标数据进行加密,得到签名信息;公钥用于对 加密后的签名信息进行解密。
103、密钥管理服务器接收签名服务器发送的签名信息。
本实施例中,在签名服务器生成签名信息之后,会将生成的签名信息发送给密钥管理 服务器,则密钥管理服务器可以接收签名服务器发送的签名信息。
104、密钥管理服务器向第二区块链节点发送签名信息,以使第二区块链节点根据签 名信息更新区块链账本。
本实施例中,密钥管理服务器在接收到签名服务器发送的签名信息之后,可以向第二 区块链节点发送签名信息,从而第二区块链节点根据签名信息更新区块链账本。具体的, 第二区块链节点需要将签名信息记录至区块链账本中,进一步的,第二区块链节点需要将 签名信息以及签名验证结果记录区块链账本中,签名验证结果为签名服务器或第二区块链 节点对第二待处理数据进行验证后得到的验证结果,其中,第二待处理数据指的是第二区 块链节点从区块链账本中获取到的数据,具体可以为交易数据。由于区块链具有共享性, 则第二区块链节点可以通过区块链账本获取到第一区块链节点记录至区块链账本中的第 一待处理数据,但第二区块链节点获取的第二待处理数据不一定是第一区块链节点发送 的,因此需要签名服务器或第二区块链节点对第二区块链节点获取的第二待处理数据进行 验证。若确定第二区块链节点获取的第二待处理数据是第一区块链节点发送的,则第二待 处理数据和第一待处理数据对应的可以为相同的数据;若确定第二区块链节点获取的第二 待处理数据不是第一区块链节点发送的,则第二待处理数据和第一待处理数据对应的可以 为不同的数据。
在一种实现方式中,由签名服务器执行对第二待处理数据的验证操作,则第二区块链 节点是与第一区块链节点不同的区块链节点,可以具体表现为第一区块链节点的交易相对 方,也可以为表现为对第一区块链节点具有监督功能的区块链节点等等,作为示例,例如 某一条区块链上有9个节点,分别为商户甲、A银行XX支行、A银行YY支行、A银行ZZ支行、A银行总行、A银行的合作银行B银行的TT支行、B银行UU支行、B银行总行以及 商户甲的交易对象乙,商户甲通过A银行XX支行向交易对象乙在B银行UU支行进行了一 次转账,则可以只将交易对象乙所对应的节点设备视为第二区块链节点设备,也可以将A 银行总行以及B银行总行均视为第二区块链节点设备等。
在另一种实现方式中,由第二区块链节点执行对第二待处理数据的验证操作,则第二 区块链节点可以理解为区块链上的任意节点,第二区块链节点中可以包括一个区块链节点 或至少两个区块链节点,部分第二区块链节点具有利用签名信息对第一区块链节点发出的 第一待处理数据进行验证的功能,至少一个第二区块链节点中可以包括第一区块链节点, 也可以为不包括第一区块链节点,具体第二区块链节点中包括哪些区块链节点要根据区块 链中采用的共识规则来决定。作为示例,例如某一条区块链上有9个节点,分别为商户甲、 A银行XX支行、A银行YY支行、A银行ZZ支行、A银行总行、A银行的合作银行B银行的 TT支行、B银行UU支行、B银行总行以及商户甲的交易对象乙,商户甲通过A银行XX支 行向交易对象乙在B银行UU支行进行了一次转账(也即交易数据),商户甲所对应的节点 设备为第一区块链节点,可以将商户甲、A银行XX支行、A银行总行、B银行UU支行、B 银行总行以及商户甲的交易对象乙所对应的节点设备视为第二区块链节点,用于根据签名 信息对第二区块链节点获取的交易数据进行验证,上述举例均仅用于方便理解本方案。
进一步的,在一种实现方式中,可以将区块链中的所有区块链节点均确定为第二区块 链节点,也即需要区块链中所有的区块链节点对第二待处理数据进行验证。在另一种实现 方式中,可以为将区块链中过半数的区块链节点确定为第二区块链节点,所述过半数的区 块链节点可以为从所有区块链节点中任意选取的,也可以为按照一定规律选取的,例如沿 着区块链从前往后的顺序,选取过半数的区块链节点,再例如沿着区块链从后往前的顺序, 选取过半数的区块链节点。在再一种实现方式中,还可以从所有区块链节点中选取可信度 较高或者权重较大的的N个区块链节点作为第二区块链节点,其中N的取值为正整数,作 为示例,例如某一条区块链上有9个节点,分别为商户甲、A银行XX支行、A银行YY支行、A银行ZZ支行、A银行总行、A银行的合作银行B银行的TT支行、B银行UU支行、B 银行总行以及商户甲的交易对象乙,则可以将A银行总行和B银行总行视为可信度较高或 者权重较大的第二区块链节点。应当理解,上述示例均仅为方便理解本方案,不用于限定 本方案。
更具体的,在一种实现方式中,若密钥管理服务器与第一区块链节点设置在一起,则 密钥管理服务器可以通过第一区块链节点直接将签名信息记录至区块链账本上,由于区块 链账本中的数据具有共享性,从而区块链上的至少一个第二区块链节点中所有第二区块链 节点可以获取到签名信息;在另一种实现方式中,若密钥管理服务器与第一区块链节点分 别为两个独立的设备,则密钥管理服务器可以向至少一个第二区块链节点中任一第二区块 链节点发送签名信息,从而通过第二区块链节点将签名信息记录至区块链账本上,从而区 块链上的至少一个第二区块链节点中所有第二区块链节点可以获取到签名信息;在另一种 实现方式中,密钥管理服务器可以从第一区块链节点所在的区块链包括的所有区块链节点 中确定需要发送签名信息的第二区块链节点,进而分别将签名信息发送给确定出来的至少 一个第二区块链节点。进而第二区块链节点可以根据签名信息验证对第二待处理数据进行 验证,以确定第二待处理数据是否为第一区块链节点发送出来的,具体的,可以为至少一 个第二区块链节点利用第一区块链节点的公钥对第一区块链节点的签名信息进行解密,进 而根据解密后的信息对第二待处理数据进行验证,在第二待处理数据经过至少一个第二区 块链节点中的所有第二区块链节点的验证之后,也即至少一个第二区块链节点达成共识之 后,可以将通过至少一个第二区块链节点得到的验证结果记录至区块链账本中。
本申请实施例中,密钥管理服务器获取第一区块链节点的第一待处理数据,其中,第 一待处理数据中包括第一目标数据,密钥管理服务器向签名服务器发送第一待处理数据中 的第一目标数据,以使签名服务器采用私钥对第一目标数据进行签名处理,得到签名信息, 密钥管理服务器接收签名服务器发送的签名信息,向第二区块链节点发送签名信息,以使 第二区块链节点根据签名信息更新区块链账本。通过上述方式,整个签名处理的过程都在 签名服务器中进行,一方面将私钥保存在签名服务器侧,可以防止由于区块链节点被攻破 而导致私钥泄露的隐患,另一方面,将签名处理的工作从区块链节点中剥离出来,从而减 轻区块链节点的工作负荷。
可选地,在上述图4对应的实施例的基础上,本申请实施例提供的签名处理的方法一 个可选实施例中,密钥管理服务器获取第一区块链节点的第一待处理数据,包括:
密钥管理服务器接收第一区块链节点发送的第一待处理数据;
或,
密钥管理服务器通过第一区块链节点获取第一待处理数据。
本实施例中,由于密钥管理服务器可以为与第一区块链节点设置在一起的服务器,也 可以为和第一区块链节点相互独立设置的服务器,也即密钥管理服务器和第一区块链节点 为物理位置上相互隔离的两个服务器。若密钥管理服务器与第一区块链节点为互相独立设 置的服务器,则密钥管理服务器获取第一区块链节点的第一待处理数据的方式可以为密钥 管理服务器通过外部通讯接口接收第一区块链节点发送的第一待处理数据;若密钥管理服 务器与第一区块链节点设置在一起,则密钥管理服务器获取第一区块链节点的第一待处理 数据的方式可以为密钥管理服务器通过第一区块链节点获取第一待处理数据,具体的,可 以为密钥管理服务器通过内部接口获取第一区块链节点生成的第一待处理数据。
本申请实施例中,密钥管理服务器可以接收第一区块链节点发送的第一待处理数据, 或者通过第一区块链节点获取第一待处理数据,也即提供了密钥管理服务器和第一区块链 节点的两种不同的配置方式,扩展了本方案的应用场景,提高了本方案的全面性。
可选地,在上述图4对应的实施例的基础上,本申请实施例提供的签名处理的方法一 个可选实施例中,密钥管理服务器获取第一区块链节点的第一待处理数据之前,方法还包 括:
密钥管理服务器接收第二区块链节点发送的连接请求,其中,连接请求中携带第二区 块链节点的身份验证信息;
密钥管理服务器根据连接请求,对第二区块链节点进行身份验证,得到身份验证结果;
若身份验证结果为验证成功,则密钥管理服务器向第二区块链节点发送证书,其中, 证书携带公钥。
本实施例中,密钥管理服务器在获取第一区块链节点的第一待处理数据之前,还可以 接收第二区块链节点发送的连接请求,其中,连接请求可以为第二区块链节点初次与密钥 管理服务器建立通信连接时发送的连接请求,或者说,连接请求可以为在对第二区块链节 点进行初始化的过程中发送的连接请求;连接请求中携带第二区块链节点的身份验证信 息,身份验证信息中可以包括第二区块链节点的MSPID与第二区块链节点的令牌(TOKEN)。 密钥管理服务器在接收到连接请求之后,可以根据其中携带的第二区块链节点的身份验证 信息对第二区块链节点进行身份验证,具体的,由于密钥管理服务器上会预先存储有多个 区块链节点的身份验证信息,则密钥管理服务器可以将第二区块链节点发送的身份验证信 息和预先存储的多个区块链节点的身份验证信息进行对比,以对第二区块链节点进行身份 验证,进而得到身份验证结果。
若身份验证结果为验证成功,则密钥管理服务器向第二区块链节点发送证书,其中, 证书中携带有公钥,所述公钥中可以包括至少一个公钥,至少一个公钥中包括第一区块链 节点的公钥,参阅上述实施例中描述,第一区块链节点的公钥用于供第二区块链节点利用 第一区块链节点的公钥对获取到的签名信息进行解密。进一步的,证书具体可以表现为安 全传输层协议(transport layer security,TLS)证书、安全套接字层(securesocket layer,SSL)证书或其他类型的证书等等。
本申请实施例中,密钥管理服务器接收第二区块链节点发送的连接请求,根据连接请 求中携带第二区块链节点的身份验证信息,对第二区块链节点进行身份验证,若身份验证 结果为验证成功,则密钥管理服务器向第二区块链节点发送证书,其中,证书携带公钥。 通过上述方式,提供了第二区块链节点获取公钥的具体实现方式,提高了本方案的完整性, 且第二区块链节点只有在通过密钥管理服务器的身份验证之后,才可以接收到密钥管理服 务器发送的公钥,从而保证能够接收到公钥的节点都是安全系数较高的节点,从而保证本 方案的安全性和可靠性。
可选地,在上述图4对应的实施例的基础上,本申请实施例提供的签名处理的方法一 个可选实施例中,密钥管理服务器根据连接请求,对第二区块链节点进行身份验证,得到 身份验证结果,包括:
密钥管理服务器从连接请求中获取待验证令牌TOKEN以及待验证成员关系服务提供者 标识MSPID,其中,待验证TOKEN以及待验证MSPID属于身份验证信息;
密钥管理服务器根据信息映射关系查找待验证TOKEN所对应的目标MSPID,其中,信 息映射关系用于表示TOKEN与MSPID之间的对应关系;
若目标MSPID与待验证MSPID一致,则密钥管理服务器确定身份验证结果为验证成功;
若目标MSPID与待验证MSPID不一致,则密钥管理服务器确定身份验证结果为验证失 败。
本实施例中,密钥管理服务器上可以预先存储有多个TOKEN和多个MSPID,以及多个 TOKEN和多个MSPID之间的信息映射关系,其中,TOKEN和MSPID具有一对一的映射关系。密钥管理服务器在接收到连接请求之后,可以从其中携带的第二区块链节点的身份验证信息中获取第二区块链节点的验证TOKEN和待验证MSPID,其中,TOKEN可以视为一种通行 证,或者理解为一种暗号,密钥管理服务器在获取到身份验证信息中的待验证TOKEN之后, 可以先对待验证TOKEN进行核对,也即在预先存储的多个TOKEN中查找是否有与待验证 TOKEN匹配的目标TOKEN,若存在与待验证TOKEN匹配的目标TOKEN,则根据多个TOKEN和 多个MSPID之间的一一对应关系获取与目标TOKEN所对应的目标MSPID,也即获取到了与 待验证TOKEN所对应的目标MSPID。进而密钥管理服务器可以判断目标MSPID与待验证 MSPID是否一致,若目标MSPID与待验证MSPID一致,则密钥管理服务器确定针对第二区 块链节点的身份验证结果为验证成功,进而可以向第二区块链节点发送携带有至少一个公 钥的证书;若目标MSPID与待验证MSPID不一致,则密钥管理服务器确定针对第二区块链 节点的身份验证结果为验证失败,进一步的,密钥管理服务器可以向验证失败的第二区块 链节点发送验证失败的验证结果信息,以指示验证失败的第二区块链节点重新发起连接请 求,重新发起的连接请求中包括新的身份验证信息,以利用新的身份验证信息对第二区块 链节点进行二次验证;密钥管理服务器也可以将验证失败的第二区块链节点确定为不具有 验证功能的区块链节点。
进一步的,TOKEN具体可以表现为数字串、字符串或其他形式,TOKEN的生成过程可以具有一定的随机性,作为示例,例如TOKEN具体可以为XYERTU342ZA、TYYERGH21NL9等 等;MSPID可以作为一个成员关系服务提供者(membership service provider,MSP)的 唯一标识,具体也可以表现为数字串、字符串或其他形式,MSPID的生成过程可以具有一 定的规律性,作为示例,例如MSPID具体可以表现为BK000000001、BK000000002、 BK000000003、SH000000538等等,此处举例仅为方便理解本方案,不用于限定本方案。
为了进一步理解本方案,以下以通过映射关系表的形式存储多个TOKEN和多个MSPID 之间的信息映射关系,请参阅如下表1。
表1
参阅如上表1,表1中示出了映射关系表中的五个TOKEN与五个MSPID之间的信息映射关系,应理解,一个映射关系表中包括不限于五个TOKEN与五个MSPID之间信息映射关系,上述表1中的举例仅为方便理解本方案,不用于限定本方案。
本申请实施例中,密钥管理服务器从连接请求中的身份验证信息中获取待验证TOKEN 以及待验证MSPID,根据预存的多个TOKEN与多个MSPID之间的对应关系信息映射关系查 找待验证TOKEN所对应的目标MSPID,若目标MSPID与待验证MSPID一致,则确定身份验证结果为验证成功;若目标MSPID与待验证MSPID不一致,则确定身份验证结果为验证失败。通过上述方式,提供了对第二区块链节点进行身份信息验证的具体实现方式,提高了本方案的可实现性。
可选地,在上述图4对应的实施例的基础上,本申请实施例提供的签名处理的方法一 个可选实施例中,密钥管理服务器向签名服务器发送第一待处理数据中的第一目标数据, 以使签名服务器采用私钥对第一目标数据进行签名处理,得到签名信息,包括:
密钥管理服务器向签名服务器发送第一待处理数据中的第一目标数据,以使签名服务 器根据第一目标数据生成摘要信息,签名服务器采用私钥对摘要信息进行加密处理,得到 签名信息;
密钥管理服务器向第二区块链节点发送签名信息,以使第二区块链节点根据签名信息 更新区块链账本,包括:
密钥管理服务器向第二区块链节点发送签名信息,以使第二区块链节点根据签名信息 生成签名验证结果,将签名验证结果记录至区块链账本。
本实施例中,密钥管理服务器在获取到第一区块链节点的第一待处理数据之后,可以 对第一待处理数据进行一定的处理,以从第一待处理数据中获取第一目标数据,进而可以 向签名服务器发送第一待处理数据中的第一目标数据,以使签名服务器根据第一目标数据 生成第一摘要信息(digest),进而签名服务器可以采用私钥对第一摘要信息进行加密处 理,从而得到签名信息,由于上述实施例中已经对第一待处理数据和第一目标数据作了详 细介绍,此处不再赘述。其中,第一摘要信息可以为签名服务器根据第一目标数据利用目 标加密算法生成的,具体的,可以为签名服务器利用哈希函数对第一目标数据进行处理得 到固定长度的第一摘要信息,哈希函数具体可以表现为安全散列算法(securehash algorithm,SHA)或其他哈希函数等。
密钥管理服务器向第二区块链节点发送签名信息之后,第二区块链节点可以利用第一 区块链节点的公钥对签名信息进行解密,由于区块链账本中的数据具有共享性,则第二区 块链节点可以从区块链账本中获取第一区块链节点的第二待处理数据,对第二待处理数据 做一定的处理,以从第二待处理数据中获取到第二目标数据,进而利用哈希(Hash)函数 对第二目标数据进行处理得到固定长度的第二摘要信息,第二区块链节点将第一摘要信息 和第二摘要信息进行对比,以生成验证结果。具体的,若第一摘要信息和第二摘要信息一 致,则可以证明第二区块链节点获取到的第二待处理数据是第一区块链节点发送的(也即 签名验证结果的一种示例);若第一摘要信息和第二摘要信息不一致,则可以证明区块链 上的第一待处理数据不是第一区块链节点发送的(也即签名验证结果的另一种示例)。进 而第二区块链节点可以将签名验证结果记录至区块链账本。
更具体的,在密钥管理服务器将签名信息记录至区块链账本之后,可以向至少一个第 二区块链节点发送验证请求,在一种实现方式中,若将区块链中的所有区块链节点均确定 为第二区块链节点,则密钥管理服务器需要向所有区块链节点发送验证请求,验证请求中 可以携带第一区块链节点的标识,从而告知每个第二区块链节点利用第一区块链节点的签 名信息对第二待处理数据进行验证,进而根据每个第二区块链节点生成的签名验证结果得 到第二待处理数据的签名验证结果;在另一种实现方式中,对应的,若将区块链中过半数 的区块链节点确定为第二区块链节点,则需要向过半数的第二区块链节点发送验证请求; 在再一种实现方式中,若从所有区块链节点中选取可信度较高或者权重较大的的N个区块 链节点作为第二区块链节点,则需要向N个第二区块链节点发送验证请求。
进一步的,在一种情况下,可以在所有的第二区块链节点的签名验证结果均为获取的 第二待处理数据是第一区块链节点发送的情况下,才将签名验证结果确定为第二待处理数 据是第一区块链节点发送的只要有一个第二区块链节点的签名验证结果为第二待处理数 据不是第一区块链节点发送的,均将签名验证结果确定为第二待处理数据不是第一区块链 节点发送的。在另一种情况下,可以预先设定好第一概率值,只要签名验证结果为第二待 处理数据是第一区块链节点发送的且未被篡改过的第二区块链节点在所有执行验证操作 的第二区块链节点中的概率值大于或者等于第一概率值,就可以将签名验证结果确定为第 二待处理数据是第一区块链节点发送的,其中,第一概率值的取值可以为百分之九十八、 百分之九十五或者其他取值等等。在另一种情况下,可以预先设定好第一阈值,只要签名 验证结果为第二待处理数据是第一区块链节点发送的且未被篡改过的第二区块链节点的 个数大于或等于第一阈值,就可以将签名验证结果确定为第二待处理数据是第一区块链节 点发送的,其中,第一阈值的取值可以为结合执行验证操作的第二区块链节点的数量确定, 或者,也可以结合区块链上所有的区块链节点的数量决定等等,具体此处均不做限定。
为进一步理解本方案,请参阅图5,图5为本申请实施例中签名处理方法的一个流程 示意图,如图所示,在步骤A1中,密钥管理服务器接收第二区块链节点发送的初始化连接请求(也即连接请求的一个示例);在步骤A2中,密钥管理服务器根据连接请求中的身 份验证信息对第二区块链节点进行身份验证;在步骤A3中,在验证结果为验证成功的情 况下,密钥管理服务器向第二区块链节点发送安全传输层协议TLS证书;在步骤A4中, 密钥管理服务器接收第一区块链节点发送的第一待处理数据;在步骤A5中,密钥管理服 务器从第一待处理数据中获取第一目标数据;在步骤A6中,密钥管理服务器将第一目标 数据发送给签名服务器;在步骤A7中,签名服务器利用第一区块链节点的私钥,对第一 目标数据进行加签操作,得到与第一目标数据对应的签名信息;在步骤A8中,密钥管理 服务器接收签名服务器发送的签名信息;在步骤A9中,密钥管理服务器将签名信息发送 给第二区块链节点;在步骤A10中,第二区块链节点根据签名信息对第二待处理数据进行 验证,生成签名验证结果,将签名验证结果记录至区块链账本。应当理解,图5中仅以密 钥管理服务器和第一区块链节点与一个第二区块链节点之间的交互过程为例进行说明,不 代表实际情况中第二区块链节点的个数只有一个,图5中的举例仅为方便理解本方案,不 用于限定本方案。
本申请实施例中,密钥管理服务器在获取到第一区块链节点的第一待处理数据之后, 向签名服务器发送第一待处理数据中的第一目标数据,以使签名服务器根据第一目标数据 生成摘要信息,签名服务器采用私钥对摘要信息进行加密处理,得到签名信息,密钥管理 服务器向第二区块链节点发送签名信息,以使第二区块链节点根据签名信息生成签名验证 结果,将签名验证结果记录至区块链账本。通过上述方式,提供了通过密钥管理服务器和 签名服务器实现对第一目标数据进行签名处理的具体实现方式,以及,确定由第二区块链 节点根据签名信息生成签名验证结果,提高了本方案的可实现性。
可选地,在上述图4对应的实施例的基础上,本申请实施例提供的签名处理的方法一 个可选实施例中,密钥管理服务器向第二区块链节点发送签名信息之后,方法还包括:
密钥管理服务器接收第二区块链节点发送的第二待处理数据,其中,第二待处理数据 中包括第二目标数据;
密钥管理服务器向签名服务器发送第二目标数据,以使签名服务器根据第一摘要信息 以及第二摘要信息确定签名验证结果,其中,第一摘要信息为签名服务器采用第一区块链 节点的公钥对签名信息进行解密后得到的,第二摘要信息为签名服务器采用目标加密算法 对第二目标数据进行计算后得到的;
密钥管理服务器接收签名服务器发送的签名验证结果;
密钥管理服务器向第二区块链节点发送签名验证结果,以使第二区块链节点根据签名 验证结果更新区块链账本。
本实施例中,至少一个第二区块链节点从区块链账本中获取到第二待处理数据之后, 密钥管理服务器还可以接收到至少一个第二区块链节点发送的第二待处理数据,其中,第 二待处理数据中包括第二目标数据,第二目标数据是第二待处理数据中的部分信息,具体 可以表现为第二待处理数据中的重要数据,第二目标数据用于供签名服务器根据第二目标 数据生成第二摘要信息。密钥管理服务器获取到第二待处理数据之后,可以从第二待处理 数据中提取出第二目标数据,之后向签名服务器发送第二待处理数据中的第二目标数据, 由于签名服务器上可以存储有不止一个区块链节点的签名信息,则密钥管理服务器在向签 名服务器发送第二目标数据时可以加入第一区块链节点的标识,以使签名服务器采用第一 区块链节点的公钥对第一区块链节点的签名信息进行解密后得到第一摘要信息,签名服务 器采用目标加密算法对第二目标数据进行计算后得到第二摘要信息,进而可以将第一摘要 信息与第二摘要信息进行对比,以生成针对第二待处理数据的签名验证结果,其中,目标 加密算法的具体表现形式以及将第一摘要信息与第二摘要信息进行对比,以生成针对第二 待处理数据的签名验证结果的具体实现方式均可以参阅图5对应实施例中的描述,区别在 于图5中的执行主体是第二区块链节点,本实施例中的执行主体是前面服务器。
在签名服务器生成签名验证结果之后,密钥管理服务器接收签名服务器发送的签名验 证结果,则密钥管理服务器可以向至少一个第二区块链节点发送签名验证结果,以使第二 区块链节点根据签名验证结果更新区块链账本。具体的,可以为向所有第二区块链节点发 送签名验证结果,也可以向至少一个第二区块链节点中任意一个第二区块链节点发送签名 验证结果。为进一步理解本方案,请参阅图6,图6为本申请实施例中签名处理方法的一 个流程示意图,如图所示,在步骤B1中,密钥管理服务器接收第二区块链节点发送的初 始化连接请求(也即连接请求的一个示例);在步骤B2中,密钥管理服务器根据连接请求中的身份验证信息对第二区块链节点进行身份验证;在步骤B3中,在验证结果为验证成 功的情况下,密钥管理服务器向第二区块链节点发送安全传输层协议TLS证书;在步骤B4 中,密钥管理服务器接收第一区块链节点发送的第一待处理数据;在步骤B5中,密钥管 理服务器从第一待处理数据中获取第一目标数据;在步骤B6中,密钥管理服务器将第一 目标数据发送给签名服务器;在步骤B7中,签名服务器利用第一区块链节点的私钥,对 第一目标数据进行加签操作,得到与第一目标数据对应的签名信息;在步骤B8中,密钥 管理服务器接收签名服务器发送的签名信息;在步骤B9中,密钥管理服务器将签名信息 发送给第二区块链节点;在步骤B10中,密钥管理服务器接收第二区块链节点发送的第二 待处理数据,其中,第二待处理数据中包括第二目标数据;在步骤B11中,密钥管理服务 器向签名服务器发送第二待处理数据中的第二目标数据;在步骤B12中,签名服务器根据 第一摘要信息以及第二摘要信息确定签名验证结果,其中,第一摘要信息为签名服务器采 用第一区块链节点的公钥对签名信息进行解密后得到的,第二摘要信息为签名服务器采用 目标加密算法对第二目标数据进行计算后得到的;在步骤B13中,密钥管理服务器接收签 名服务器发送的签名验证结果;在步骤B14中,密钥管理服务器向第二区块链节点发送签 名验证结果;在步骤B15中,第二区块链节点根据签名验证结果更新区块链账本。应当理 解,图6中仅以密钥管理服务器和第一区块链节点与一个第二区块链节点之间的交互过程 为例进行说明,不代表实际情况中第二区块链节点的个数只有一个,图6中的举例仅为方 便理解本方案,不用于限定本方案。
本申请实施例中,密钥管理服务器还会接收到第二区块链节点发送的第二待处理数 据,向签名服务器发送第二目标数据,以使签名服务器生成针对第二待处理数据的签名验 证结果,进而接收签名服务器发送的签名验证结果,向第二区块链节点发送签名验证结果, 以使第二区块链节点根据签名验证结果更新区块链账本。通过上述方式,提供了签名服务 器生成签名验证结果的具体实现方式,扩展了本方案的实现场景,且将验签操作也从区块 链节点中分离出来,进一步减轻了区块链节点的工作负荷。
可选地,在上述图4对应的实施例的基础上,本申请实施例提供的签名处理的方法一 个可选实施例中,密钥管理服务器获取第一区块链节点的第一待处理数据之前,方法还包 括:
密钥管理服务器通过资源表现层状态转化RESTful接口与第一区块链节点建立通信连 接;
密钥管理服务器通过RESTful接口与第二区块链节点建立通信连接。
本实施例中,密钥管理服务器还会通过资源表现层状态转化(representationalstate transfer,RESTful)接口与第一区块链节点建立通信连接,通过RESTful接口与第二区 块链节点建立通信连接,从而在上述各个实施例中,密钥管理服务器与第一区块链节点之 间进行通信的各个步骤均通过RESTful接口实现,密钥管理服务器与第二区块链节点之间 进行通信的各个步骤也是均通过RESTful接口实现的,其中,RESTful是一种软件架构的设计风格,指示提供了一组设计原则和约束条件,而不是标准。可选地,密钥管理服务器 与第一区块链节点以及密钥管理服务器与第二区块链节点之间进行通信所采用的通信协 议可以为GRPC,其中,GRPC是一种开源的高性能的远程过程调用(remote procedure call,RPC)框架,RPC框架提供了一套机制,使得应用程序之间可以进行通信,而且也遵从服 务器/客户端模型,客户端调用服务器提供的接口就想是调用本地函数一样,通过上述方 式,有利于提高本方案的运行速率。
本申请实施例中,密钥管理服务器通过RESTful接口与第一区块链节点建立通信连接, 密钥管理服务器通过RESTful接口与第二区块链节点建立通信连接,也即密钥管理服务器 与第一区块链节点以及第二区块链节点之间进行通信的过程,均为通过RESTful接口实现 的,从而方便新的区块链接口通过RESTful接口快速接入密钥管理服务器,有利于提高本 方案的可扩展性。
基于上述各个实施例中的描述,本申请实施例还提供一种签名处理的方法,请参阅图 7,图7为本申请实施例中签名处理的方法的一个实施例示意图,本申请实施例中签名处 理的方法一个实施例包括:
201、在密钥管理服务器获取第一区块链节点的第一待处理数据之后,第二区块链节 点接收密钥管理服务器发送的签名信息,其中,签名信息为签名服务器采用私钥对第一目 标数据进行签名处理后得到的,第一目标数据包含于第一待处理数据中。
本实施例中,由于在密钥管理服务器获取第一区块链节点的第一待处理数据之后,可 以从第一待处理数据中获取到第一目标数据,将第一目标数据发送给签名服务器,由签名 服务器利用第一区块链节点的私钥生成与第一目标数据对应的签名信息,进而签名服务器 会将签名信息发送给密钥管理服务器,之后密钥管理服务器会将向至少一个第二区块链节 点发送签名信息,对应的,至少一个第二区块链节点可以接收密钥管理服务器发送的签名 信息,其中,签名信息为签名服务器采用私钥对第一目标数据进行签名处理后得到的,第 一目标数据包含于第一待处理数据中,由于在上述实施例中已经存在对第二区块链节点的 详细介绍,此处不再赘述。具体的,第二区块链节点可以直接接收密钥管理服务器发送的 签名信息;也可以为从区块链账本中获取签名信息,其中,签名信息是由密钥管理服务器 记录至区块链账本中的;还可以为至少一个第二区块链节点中的任一个目标第二区块链节 点接收密钥管理服务器发送的签名信息,由目标第二区块链节点将签名信息记录至区块链 账本中,进而至少一个第二区块链节点中除目标第二区块链节点的其他第二区块链节点从 区块链账本中获取签名信息等等,具体此处不做限定。
202、第二区块链节点根据签名信息生成签名验证结果。
本实施例中,第二区块链节点在获取到签名信息之后,可以根据签名信息执行对第二 待处理数据的验签过程,以生成针对第二待处理数据的签名验证结果,也即第二区块链节 点根据第一摘要信息以及第二摘要信息确定签名验证结果,其中,第一摘要信息为第二区 块链节点采用第一区块链节点的公钥对签名信息进行解密后得到的,第二摘要信息为第二 区块链节点采用目标加密算法对第二目标数据进行计算后得到的,第二目标数据包含于第 二待处理数据中;由于上述实施例中已经对第二待处理数据以及第二目标数据做了详细介 绍,此处不再赘述。
203、第二区块链节点将签名验证结果记录至区块链账本。
本实施例中,第二区块链节点在获取到签名验证结果之后,可以将签名验证结果记录 至区块链账本中。具体的,由于第二区块链节点可以为至少两个,则需要将每个第二区块 链节点生成的初级签名验证结果进行二次处理之后,得到针对第二待处理数据的最终签名 验证结果,再将最终签名验证结果记录至区块链账本中,生成签名验证结果的规则可以参 考上述图4对应实施例中“由第二区块链节点执行对第二待处理数据的验证操作”这一部 分的描述,此处不再进行赘述。其中,区块链账本中还存储有第二待处理数据,第二待处 理数据与签名验证结果之间可以具有一一对应的关系,签名验证结果具体可以表现为第一 结果和第二结果,第一结果确定第二待处理数据为第一区块链节点发送的,或者,第二结 果确定第二待处理数据不是第一区块链节点生成的。
为进一步理解本方案,本申请实施例还公开了签名验证结果和第二待处理数据在区块 链账本中的具体表现形式,以下通过表格的形式进行展示,请参阅如下表2。
表2
第二待处理数据 签名信息 签名验证结果
交易A 签名A 第一结果
交易B 签名B 第一结果
交易C 签名C 第一结果
交易D 签名D 第二结果
交易F 签名F 第一结果
参阅上述表2,表2中展示了5个第二待处理数据和对应的签名验证结果之间的对应 关系,其中,在实际产品中,表2中的交易A至交易F均可以表现为具体的交易数据,例 如交易A具体可以表现为商户甲的XXXXX账户通过A银行XX分行的2号自动取款机 (automaticteller machine,ATM)机器在2019年8月20日向商户乙的YYYYY账户支 付货款10万元,其中,XXXXX账户和YYYYY账户均为A银行中的账户,商户甲选择的是2 小时到账业务;表2中的签名A至签名F均可以表现为密文信息,上述表1中的举例仅为 方便理解本方案,不用于限定本方案。进一步的,在实际产品中,可以为通过不同的编码 或字符串来分别指代第一结果和第二结果,作为示例,例如通过编码“1”指代第一结果, 通过编码“0”指代第二结果等等,此处不做穷举。
本申请实施例中,在密钥管理服务器获取第一区块链节点的第一待处理数据之后,第 二区块链节点能够接收到密钥管理服务器发送的签名信息,其中,签名信息为签名采用私 钥对包含于第一待处理数据中的第一目标数据进行签名处理后得到的,第二区块链节点根 据签名信息生成签名验证结果,进而将签名验证结果记录至区块链账本中。通过上述方式, 将私钥保存在签名服务器侧,可以防止由于区块链节点被攻破而导致私钥泄露的隐患;由 签名服务器实现对第一目标数据的签名处理,也即将签名处理的工作从区块链节点中剥离 出来,从而减轻区块链节点的工作负荷。
可选地,在上述图7对应的实施例的基础上,本申请实施例提供的签名处理的方法一 个可选实施例中,第二区块链节点接收密钥管理服务器发送的签名信息之前,方法还包括:
第二区块链节点向密钥管理服务器发送连接请求,以使密钥管理服务器根据连接请求 对第二区块链节点进行身份验证,得到身份验证结果,其中,连接请求中携带第二区块链 节点的身份验证信息;
若身份验证结果为验证成功,则第二区块链节点接收密钥管理服务器发送的证书,其 中,证书携带公钥。
本实施例中,第二区块链节点接收密钥管理服务器发送的签名信息之前,还需要向密 钥管理服务器发送连接请求,连接请求中携带有第二区块链节点的身份验证信息,从而密 钥管理服务器根据身份验证信息对第二区块链节点进行身份验证,得到身份验证结果;在 身份验证结果为验证成功的情况下,第二区块链节点会接收密钥管理服务器发送的证书, 其中,证书携带公钥,对于证书和公钥的描述可以参阅上述实施例。
本申请实施例中,第二区块链节点向密钥管理服务器发送连接请求,以使密钥管理服 务器根据连接请求中的身份验证信息对第二区块链节点进行身份验证,得到身份验证结 果,若身份验证结果为验证成功,则第二区块链节点接收密钥管理服务器发送的证书,其 中,证书携带公钥。第二区块链节点只有在通过密钥管理服务器的身份验证之后,才可以 接收到密钥管理服务器发送的公钥,从而保证能够接收到公钥的节点都是安全系数较高的 节点,从而保证本方案的安全性和可靠性。
可选地,在上述图7对应的实施例的基础上,本申请实施例提供的签名处理的方法一 个可选实施例中,第二区块链节点根据签名信息生成签名验证结果,包括:
第二区块链节点采用公钥对签名信息进行解密,得到第一摘要信息,其中,第一摘要 信息为签名服务器采用目标加密算法计算得到的;
第二区块链节点获取第二待处理数据;
第二区块链节点采用目标加密算法根据第二待处理数据生成第二摘要信息;
若第二摘要信息与第一摘要信息一致,则第二区块链节点确定签名验证结果为第一结 果,其中,第一结果确定第二待处理数据是由第一区块链节点发送的;
若第二摘要信息与第一摘要信息不一致,则第二区块链节点确定签名验证结果为第二 结果,其中,第二结果表示第二待处理数据不是由第一区块链节点发送的。
本实施例中,第二区块链节点在获取到签名信息之后,可以采用第一区块链节点的公 钥对签名信息进行解密,得到第一摘要信息,其中,第一摘要信息为签名服务器采用目标 加密算法对第一目标数据进行计算得到的。由于区块链账本具有共享性,则第二区块链节 点可以从区块链账本中获取到第二待处理数据,其中,第二待处理数据和第一待处理数据 具有对应性,第二待处理数据和第一待处理数据均指向第一区块链节点,其中可以携带有 第一区块链节点的标识等信息,但第二待处理数据可能是其他设备冒充第一区块链节点记 录到区块链账本中的,因此需要验证第二待处理数据是不是由第一区块链节点发送的。
第二区块链节点在获取到第二待处理数据之后,可以从第二待处理数据中提取出第二 目标数据,进而采用目标加密算法对第二待处理数据中的第二目标数据进行计算,以生成 第二摘要信息。若第二摘要信息与第一摘要信息一致,则第二区块链节点确定签名验证结 果为第一结果,其中,第一结果确定第二待处理数据是由第一区块链节点发送的;若第二 摘要信息与第一摘要信息不一致,则第二区块链节点确定签名验证结果为第二结果,其中, 第二结果表示第二待处理数据不是由第一区块链节点发送的。
为进一步理解本方案,请参阅图8,图8为本申请实施例中签名处理***的一个架构 示意图,图8中以密钥管理服务器和第一区块链节点分别为两个独立的设备,且第二区块 链节点中不包括第一区块链节点为例进行说明,其中,在步骤C1中,第二区块链节点向密钥管理服务器发送连接请求;在步骤C2中,密钥管理服务器从连接请求中提取第二区 块链节点的身份验证信息,对第二区块链节点进行身份验证,得到验证成功的验证结果; 在步骤C3中,密钥管理服务器向第二区块链节点发送携带有公钥的证书;在步骤C4中, 密钥管理服务器接收第一区块链节点发送的第一待处理数据,之后从第一待处理数据中提 取第一目标数据;在步骤C5中,密钥管理服务器向签名服务器发送第一待处理数据中的 第一目标数据,发送第一目标数据的数据包中携带有第一区块链节点的标识;在步骤C6 中,签名服务器采用第一区块链节点的私钥对第一目标数据进行签名处理,得到签名信息; 在步骤C7中,密钥管理服务器接收签名服务器发送的签名信息;在步骤C8中,密钥管理 服务器向第二区块链节点发送签名信息;在步骤C9中,第二区块链节点利用第一区块链 节点的公钥对签名信息进行解密,得到第一摘要信息,第二区块链节点从区块链账本中获 取第二待处理数据,采用哈希算法对第二待处理数据中的第二目标数据进行处理,得到第 二摘要信息,由于第一摘要信息和第二摘要信息一致,第二区块链节点确定验证结果为第 一结果,也即第二待处理数据是第一区块链节点发送的,则第二区块链节点将第一结果记 录至区块链账本中,应当理解,图8中仅以一个第二区块链节点与密钥管理服务器和第一 区块链节点之间的交互过程为例进行说明,不代表实际情况中第二区块链节点的个数只有 一个,图8中的示例仅为方便理解本方案,不用于限定本方案。
本申请实施例中,第二区块链节点采用公钥对签名信息进行解密,得到第一摘要信息, 第二区块链节点获取第二待处理数据,采用目标加密算法根据第二待处理数据生成第二摘 要信息;若第二摘要信息与第一摘要信息一致,则确定第二待处理数据是由第一区块链节 点发送的,若第二摘要信息与第一摘要信息不一致,则确定第二待处理数据不是由第一区 块链节点发送的。通过上述方式,公开了第二区块链节点对第二待处理数据进行验证的具 体实现方式,由于只有安全系数较高的节点才能够接收到公钥,也即只有安全系数较高的 节点才有对第二待处理数据验证的功能,从而保证了验证结果的可靠性。
可选地,在上述图7对应的实施例的基础上,本申请实施例提供的签名处理的方法一 个可选实施例中,第二区块链节点根据签名信息生成签名验证结果之后,方法还包括:
若签名验证结果为第一结果,则第二区块链节点根据第二待处理数据更新状态数据 库,其中,状态数据库用于存储区块链账本中的交易数据,交易数据包括交易对象、交易对象的剩余数值、交易数值以及交易时间戳。
本实施例中,若签名验证结果为第一结果,也即第二待处理数据确定为第一区块链节 点发送的,则第二区块链节点可以根据第二待处理数据更新状态数据库,其中,状态数据 库可以为位于区块链节点处的本地数据库,用于存储区块链账本中的交易数据,交易数据 包括交易对象、交易对象的剩余数值、交易数值以及交易时间戳(timestamp)。进一步的, 交易对象指的可以为交易发起方和/或交易接收方,具体可以表现为交易发起方和/或交易 接收方的唯一标识,作为示例,例如交易发起方和/或交易接收方的交易账号,交易发起 方和/或交易接收方的身份证号等等。交易对象的剩余数值可以具体表现为交易发起方的 剩余数值和/或交易接收方的剩余数值,作为示例,例如交易发起方和/或交易接收方交易 账户中的剩余金额等。时间戳通常具体表现为一个字符序列,用于唯一标识一个时间点, 交易时间戳用于唯一标识一个交易时间,具体可以用于标识交易接收方的剩余数值更新的 时间,也可以用于标识交易发起方发起交易的时间等等,具体此处均不做限定。
本申请实施例中,若签名验证结果为第一结果,则根据第二待处理数据更新状态数据 库,也即在确定第二待处理数据为第一区块链节点发送的之后,才会更新状态数据库,从 而保证了状态数据库中的数据的可靠性。
下面对本申请中的签名处理装置进行详细描述,请参阅图9,图9为本申请实施例中 签名处理装置一个实施例示意图,签名处理装置30包括:
获取单元301,用于获取第一区块链节点的第一待处理数据,其中,第一待处理数据 中包括第一目标数据;
发送单元302,用于向签名服务器发送获取单元301获取的第一待处理数据中的第一 目标数据,以使签名服务器采用私钥对第一目标数据进行签名处理,得到签名信息;
接收单元303,用于接收签名服务器发送的签名信息;
发送单元302,还用于向第二区块链节点发送接收单元303接收的签名信息,以使第 二区块链节点根据签名信息更新区块链账本。
可选地,在上述图9所对应的实施例的基础上,本申请实施例提供的签名处理装置30 的另一实施例中,获取单元301具体用于:
接收第一区块链节点发送的第一待处理数据;
或,
通过第一区块链节点获取第一待处理数据。
可选地,在上述图9所对应的实施例的基础上,请参阅图10,图10为本申请实施例中签名处理装置一个实施例示意图,本申请实施例提供的签名处理装置30的另一实施例中,接收单元303,还用于收第二区块链节点发送的连接请求,其中,连接请求中携带第 二区块链节点的身份验证信息;
签名处理装置30还包括:验证单元304,用于根据接收单元303接收的连接请求,对第二区块链节点进行身份验证,得到身份验证结果;
发送单元302,具体用于在身份验证结果为验证成功的情况下,向第二区块链节点发 送证书,其中,证书携带公钥。
可选地,在上述图9以及图10所对应的实施例的基础上,本申请实施例提供的签名处理装置30的另一实施例中,验证单元304具体用于:
从连接请求中获取待验证令牌TOKEN以及待验证成员关系服务提供者标识MSPID,其 中,待验证TOKEN以及待验证MSPID属于身份验证信息;
根据信息映射关系查找待验证TOKEN所对应的目标MSPID,其中,信息映射关系用于 表示TOKEN与MSPID之间的对应关系;
若目标MSPID与待验证MSPID一致,则确定身份验证结果为验证成功;
若目标MSPID与待验证MSPID不一致,则确定身份验证结果为验证失败。
可选地,在上述图9所对应的实施例的基础上,本申请实施例提供的签名处理装置30 的另一实施例中,发送单元302,具体用于:
向签名服务器发送第一待处理数据中的第一目标数据,以使签名服务器根据第一目标 数据生成摘要信息,签名服务器采用私钥对摘要信息进行加密处理,得到签名信息;
向第二区块链节点发送签名信息,以使第二区块链节点根据签名信息生成签名验证结 果,将签名验证结果记录至区块链账本。
可选地,在上述图9所对应的实施例的基础上,本申请实施例提供的签名处理装置30 的另一实施例中,接收单元303,还用于接收第二区块链节点发送的第二待处理数据,其中,第二待处理数据中包括第二目标数据;
发送单元302,还用于向签名服务器发送第二目标数据,以使签名服务器根据第一摘 要信息以及第二摘要信息确定签名验证结果,其中,第一摘要信息为签名服务器采用第一 区块链节点的公钥对签名信息进行解密后得到的,第二摘要信息为签名服务器采用目标加 密算法对第二目标数据进行计算后得到的;
接收单元303,还用于接收签名服务器发送的签名验证结果;
发送单元302,还用于向第二区块链节点发送签名验证结果,以使第二区块链节点根 据签名验证结果更新区块链账本。
可选地,在上述图9以及图10所对应的实施例的基础上,本申请实施例提供的签名处理装置30的另一实施例中,签名处理装置30还包括:建立单元305,具体用于:
通过资源表现层状态转化RESTful接口与第一区块链节点建立通信连接;
通过RESTful接口与第二区块链节点建立通信连接。
本申请实施例还提供了一种签名处理装置,请参阅图11,图11为本申请实施例中签 名处理装置一个实施例示意图,签名处理装置40包括:
接收单元401,用于在密钥管理服务器获取第一区块链节点的第一待处理数据之后, 接收密钥管理服务器发送的签名信息,其中,签名信息为签名服务器采用私钥对第一目标 数据进行签名处理后得到的,第一目标数据包含于第一待处理数据中;
生成单元402,用于根据接收单元401接收的签名信息生成签名验证结果;
记录单元403,用于将生成单元402生成的签名验证结果记录至区块链账本。
可选地,在上述图11所对应的实施例的基础上,请参阅图12,图12为本申请实施例中签名处理装置一个实施例示意图,本申请实施例提供的签名处理装置40的另一实施例中,签名处理装置40还包括:发送单元404,用于向密钥管理服务器发送的连接请求,以 使密钥管理服务器根据连接请求对第二区块链节点进行身份验证,得到身份验证结果,其中,连接请求中携带第二区块链节点的身份验证信息;
接收单元401,还用于在身份验证结果为验证成功的情况下,接收密钥管理服务器发 送的证书,其中,证书携带公钥。
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的签名处理装置 40的另一实施例中,生成单元402,具体用于:
采用公钥对签名信息进行解密,得到第一摘要信息,其中,第一摘要信息为签名服务 器采用目标加密算法计算得到的;
获取第二待处理数据;
采用目标加密算法第二待处理数据生成第二摘要信息;
若第二摘要信息与第一摘要信息一致,则确定签名验证结果为第一结果,其中,第一 结果确定第二待处理数据是由第一区块链节点发送的;
若第二摘要信息与第一摘要信息不一致,则确定签名验证结果为第二结果,其中,第 二结果表示第二待处理数据不是由第一区块链节点发送的。
可选地,在上述图11以及图12所对应的实施例的基础上,本申请实施例提供的签名 处理装置40的另一实施例中,签名处理装置40还包括:更新单元405,用于在生成单元402生成的签名验证结果为第一结果的情况下,根据第二待处理数据更新状态数据库,其中,状态数据库用于存储区块链账本中的交易数据,交易数据包括交易对象、交易对象的剩余数值、交易数值以及交易时间戳。
本申请实施例还提供了一种服务器,请参阅图13,图13为本申请实施例中提供的服 务器的一个结构示意图。所述服务器500上可以部署有上述图9或图10对应的实施例中提供的签名处理装置,用于执行图4至图6对应的实施例中密钥管理服务器执行的步骤; 或者,所述服务器上可以部署有上述图11或图12对应的实施例中提供的签名处理装置, 用于执行图7至图8对应的实施例中第二区块链节点执行的步骤;该服务器500可因配置 或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(central processingunits,CPU)522(例如,一个或一个以上处理器)和存储器532,一个或一 个以上存储应用程序542或数据544的存储介质530(例如一个或一个以上海量存储设备)。 其中,存储器532和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程 序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列 指令操作。更进一步地,中央处理器522可以设置为与存储介质530通信,在服务器500 上执行存储介质530中的一系列指令操作。
服务器500还可以包括一个或一个以上电源526,一个或一个以上有线或无线网络接 口550,一个或一个以上输入输出接口558,和/或,一个或一个以上操作***541,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图13所示的服务器结构。
在本申请实施例中,在服务器用于执行图4至图6对应的实施例中密钥管理服务器执 行的步骤的情况下,该服务器所包括的CPU 522还具有以下功能:
获取第一区块链节点的第一待处理数据,其中,所述第一待处理数据中包括第一目标 数据;
向签名服务器发送所述第一待处理数据中的第一目标数据,以使所述签名服务器采用 私钥对所述第一目标数据进行签名处理,得到签名信息;
接收所述签名服务器发送的所述签名信息;
向第二区块链节点发送所述签名信息,以使所述第二区块链节点根据所述签名信息更 新区块链账本。
可选地,CPU 522具体用于:
接收所述第一区块链节点发送的所述第一待处理数据;
或,
通过所述第一区块链节点获取所述第一待处理数据。
可选地,CPU 522还用于:
接收所述第二区块链节点发送的连接请求,其中,所述连接请求中携带所述第二区块 链节点的身份验证信息;
根据所述连接请求,对所述第二区块链节点进行身份验证,得到身份验证结果;
若所述身份验证结果为验证成功,则向所述第二区块链节点发送证书,其中,所述证 书携带公钥。
可选地,CPU 522具体用于:
从所述连接请求中获取待验证令牌TOKEN以及待验证成员关系服务提供者标识MSPID, 其中,所述待验证TOKEN以及所述待验证MSPID属于所述身份验证信息;
根据信息映射关系查找所述待验证TOKEN所对应的目标MSPID,其中,所述信息映射 关系用于表示TOKEN与MSPID之间的对应关系;
若所述目标MSPID与所述待验证MSPID一致,则确定所述身份验证结果为验证成功;
若所述目标MSPID与所述待验证MSPID不一致,则确定所述身份验证结果为验证失败。
可选地,CPU 522具体用于:
向所述签名服务器发送所述第一待处理数据中的所述第一目标数据,以使所述签名服 务器根据所述第一目标数据生成摘要信息,所述签名服务器采用所述私钥对所述摘要信息 进行加密处理,得到所述签名信息;
向第二区块链节点发送所述签名信息,以使所述第二区块链节点根据所述签名信息更 新区块链账本,包括:
向所述第二区块链节点发送所述签名信息,以使所述第二区块链节点根据所述签名信 息生成签名验证结果,将所述签名验证结果记录至所述区块链账本。
可选地,CPU 522还用于:
接收所述第二区块链节点发送的第二待处理数据,其中,所述第二待处理数据中包括 第二目标数据;
向签名服务器发送所述第二目标数据,以使所述签名服务器根据第一摘要信息以及第 二摘要信息确定签名验证结果,其中,所述第一摘要信息为所述签名服务器采用所述第一 区块链节点的公钥对所述签名信息进行解密后得到的,所述第二摘要信息所述签名服务器 为采用目标加密算法对所述第二目标数据进行计算后得到的;
接收所述签名服务器发送的所述签名验证结果;
向所述第二区块链节点发送所述签名验证结果,以使所述第二区块链节点根据所述签 名验证结果更新区块链账本。
可选地,CPU 522还用于:
所述密钥管理服务器通过资源表现层状态转化RESTful接口与所述第一区块链节点建 立通信连接;
所述密钥管理服务器通过所述RESTful接口与所述第二区块链节点建立通信连接。
在本申请实施例中,在服务器用于执行图7至图8对应的实施例中第二区块链节点执 行的步骤的情况下,该服务器所包括的CPU 522还具有以下功能:
在密钥管理服务器获取第一区块链节点的第一待处理数据之后,接收所述密钥管理服 务器发送的签名信息,其中,所述签名信息为所述签名服务器采用私钥对第一目标数据进 行签名处理后得到的,所述第一目标数据包含于第一待处理数据中;
根据所述签名信息生成签名验证结果;
将所述签名验证结果记录至所述区块链账本。
可选地,CPU 522还用于:
向所述密钥管理服务器发送的连接请求,以使所述密钥管理服务器根据所述连接请求 对所述第二区块链节点进行身份验证,得到身份验证结果,其中,所述连接请求中携带所 述第二区块链节点的身份验证信息;
若所述身份验证结果为验证成功,则接收所述密钥管理服务器发送的证书,其中,所 述证书携带公钥。
可选地,CPU 522具体用于:
采用公钥对所述签名信息进行解密,得到第一摘要信息,其中,所述第一摘要信息为 所述签名服务器采用目标加密算法计算得到的;
获取所述第二待处理数据;
采用所述目标加密算法所述第二待处理数据生成第二摘要信息;
若所述第二摘要信息与所述第一摘要信息一致,则确定所述签名验证结果为第一结 果,其中,所述第一结果确定所述第二待处理数据是由所述第一区块链节点发送的;
若所述第二摘要信息与所述第一摘要信息不一致,则确定所述签名验证结果为第二结 果,其中,所述第二结果表示所述第二待处理数据不是由所述第一区块链节点发送的。
可选地,CPU 522还用于:若所述签名验证结果为所述第一结果,则根据所述第二待 处理数据更新状态数据库,其中,所述状态数据库用于存储所述区块链账本中的交易数据, 所述交易数据包括交易对象、所述交易对象的剩余数值、交易数值以及交易时间戳。
需要说明的是,在部分实现方式中,第二区块链节点还可以表现为终端设备,也即终 端设备上也可以部署有上述图11或图12对应的实施例中提供的签名处理装置,用于执行 图7至图8对应的实施例中第二区块链节点执行的步骤。请参阅图14,图14为本申请实施例中提供的终端设备的一个结构示意图。为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端设备可以为包括手机、平板电脑、个人数字助理(personal digital assistant,PDA)、销售终端设备(pointof sales,POS)、车载电脑等任意终端设备,以终端设备为手机为例:
图14示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考 图14,手机包括:射频(radio frequency,RF)电路610、存储器620、输入单元630、 显示单元640、传感器650、音频电路660、无线保真(wireless fidelity,WiFi)模块 660、处理器680、以及电源690等部件。本领域技术人员可以理解,图14中示出的手机 结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或 者不同的部件布置。
下面结合图14对手机的各个构成部件进行具体的介绍:
RF电路610可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下 行信息接收后,给处理器680处理;另外,将设计上行的数据发送给基站。通常,RF电路610包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noiseamplifier,LNA)、双工器等。此外,RF电路610还可以通过无线通信与网络和其他设备 通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(global system of mobile communication,GSM)、通用分组无线服务(general packetradio service,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分 多址(wideband code division multiple access,WCDMA)、长期演进(long termevolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620的 软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器620可主要包括 存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用 程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器620可以包括高速随机存取存储 器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性 固态存储器件。
输入单元630可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功 能控制有关的键信号输入。具体地,输入单元630可包括触控面板631以及其他输入设备 632。触控面板631,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板631上或在触控面板631附近的操作), 并根据预先设定的程式驱动相应的连接装置。可选的,触控面板631可包括触摸检测装置 和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来 的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它 转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。此外, 可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板631。除了触控 面板631,输入单元630还可以包括其他输入设备632。具体地,其他输入设备632可以 包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操 作杆等中的一种或多种。
显示单元640可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜 单。显示单元640可包括显示面板641,可选的,可以采用液晶显示器(liquid crystaldisplay,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配 置显示面板641。进一步的,触控面板631可覆盖显示面板641,当触控面板631检测到 在其上或附近的触摸操作后,传送给处理器680以确定触摸事件的类型,随后处理器680 根据触摸事件的类型在显示面板641上提供相应的视觉输出。虽然在图14中,触控面板 631与显示面板641是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实 施例中,可以将触控面板631与显示面板641集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器650,比如光传感器、运动传感器以及其他传感器。具 体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线 的明暗来调节显示面板641的亮度,接近传感器可在手机移动到耳边时,关闭显示面板641 和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至 于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此 不再赘述。
音频电路660、扬声器661,传声器662可提供用户与手机之间的音频接口。音频电路660可将接收到的音频数据转换后的电信号,传输到扬声器661,由扬声器661转换为 声音信号输出;另一方面,传声器662将收集的声音信号转换为电信号,由音频电路660 接收后转换为音频数据,再将音频数据输出处理器680处理后,经RF电路610以发送给 比如另一手机,或者将音频数据输出至存储器620以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块660可以帮助用户收发电子邮件、 浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图14示出了 WiFi模块660,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器680是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过 运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器680 可包括一个或多个处理单元;可选的,处理器680可集成应用处理器和调制解调处理器, 其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理 无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。
手机还包括给各个部件供电的电源690(比如电池),可选的,电源可以通过电源管理 ***与处理器680逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该终端设备所包括的处理器680还具有以下功能:
在密钥管理服务器获取第一区块链节点的第一待处理数据之后,第二区块链节点接 收所述密钥管理服务器发送的签名信息,其中,所述签名信息为所述签名服务器采用私钥对第一目标数据进行签名处理后得到的,所述第一目标数据包含于第一待处理数据 中;
所述第二区块链节点根据所述签名信息生成签名验证结果;
所述第二区块链节点将所述签名验证结果记录至所述区块链账本。
可选地,处理器680还用于执行图7至图8对应的实施例中第二区块链节点执行的其 他步骤,此处不再一一赘述。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计 算机程序,当其在计算机上运行时,使得计算机执行如前述图4至图6所示实施例描述的 方法中密钥管理服务器所执行的步骤。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计 算机程序,当其在计算机上运行时,使得计算机执行如前述图7至图8所示实施例描述的 方法中第二区块链节点所执行的步骤。
本申请实施例中还提供一种包括程序的计算机程序产品,当其在计算机上运行时,使 得计算机执行如前述图4至图6所示实施例描述的方法中密钥管理服务器所执行的步骤。
本申请实施例中还提供一种包括程序的计算机程序产品,当其在计算机上运行时,使 得计算机执行如前述图7至图8所示实施例描述的方法中第二区块链节点所执行的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装 置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通 过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显 示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的 部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络 单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各 个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既 可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可 以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者 说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现 出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备 (可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部 或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-onlymemory, ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程 序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述 实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述 各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修 改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (15)

1.一种签名处理的方法,其特征在于,包括:
密钥管理服务器获取第一区块链节点的第一待处理数据,其中,所述第一待处理数据中包括第一目标数据;
所述密钥管理服务器向签名服务器发送所述第一待处理数据中的所述第一目标数据,以使所述签名服务器采用私钥对所述第一目标数据进行签名处理,得到签名信息;
所述密钥管理服务器接收所述签名服务器发送的所述签名信息;
所述密钥管理服务器向第二区块链节点发送所述签名信息,以使所述第二区块链节点根据所述签名信息更新区块链账本。
2.根据权利要求1所述的方法,其特征在于,所述密钥管理服务器获取第一区块链节点的第一待处理数据,包括:
所述密钥管理服务器接收所述第一区块链节点发送的所述第一待处理数据;
或,
所述密钥管理服务器通过所述第一区块链节点获取所述第一待处理数据。
3.根据权利要求1所述的方法,其特征在于,所述密钥管理服务器获取第一区块链节点的第一待处理数据之前,所述方法还包括:
所述密钥管理服务器接收所述第二区块链节点发送的连接请求,其中,所述连接请求中携带所述第二区块链节点的身份验证信息;
所述密钥管理服务器根据所述连接请求,对所述第二区块链节点进行身份验证,得到身份验证结果;
若所述身份验证结果为验证成功,则所述密钥管理服务器向所述第二区块链节点发送证书,其中,所述证书携带公钥。
4.根据权利要求3所述的方法,其特征在于,所述密钥管理服务器根据所述连接请求,对所述第二区块链节点进行身份验证,得到身份验证结果,包括:
所述密钥管理服务器从所述连接请求中获取待验证令牌TOKEN以及待验证成员关系服务提供者标识MSPID,其中,所述待验证TOKEN以及所述待验证MSPID属于所述身份验证信息;
所述密钥管理服务器根据信息映射关系查找所述待验证TOKEN所对应的目标MSPID,其中,所述信息映射关系用于表示TOKEN与MSPID之间的对应关系;
若所述目标MSPID与所述待验证MSPID一致,则所述密钥管理服务器确定所述身份验证结果为验证成功;
若所述目标MSPID与所述待验证MSPID不一致,则所述密钥管理服务器确定所述身份验证结果为验证失败。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述密钥管理服务器向签名服务器发送所述第一待处理数据中的第一目标数据,以使所述签名服务器采用私钥对所述第一目标数据进行签名处理,得到签名信息,包括:
所述密钥管理服务器向所述签名服务器发送所述第一待处理数据中的所述第一目标数据,以使所述签名服务器根据所述第一目标数据生成摘要信息,所述签名服务器采用所述私钥对所述摘要信息进行加密处理,得到所述签名信息;
所述密钥管理服务器向第二区块链节点发送所述签名信息,以使所述第二区块链节点根据所述签名信息更新区块链账本,包括:
所述密钥管理服务器向所述第二区块链节点发送所述签名信息,以使所述第二区块链节点根据所述签名信息生成签名验证结果,将所述签名验证结果记录至所述区块链账本。
6.根据权利要求1所述的方法,其特征在于,所述密钥管理服务器向第二区块链节点发送所述签名信息之后,所述方法还包括:
所述密钥管理服务器接收所述第二区块链节点发送的第二待处理数据,其中,所述第二待处理数据中包括第二目标数据;
所述密钥管理服务器向签名服务器发送所述第二目标数据,以使所述签名服务器根据第一摘要信息以及第二摘要信息确定签名验证结果,其中,所述第一摘要信息为所述签名服务器采用所述第一区块链节点的公钥对所述签名信息进行解密后得到的,所述第二摘要信息所述签名服务器为采用目标加密算法对所述第二目标数据进行计算后得到的;
所述密钥管理服务器接收所述签名服务器发送的所述签名验证结果;
所述密钥管理服务器向所述第二区块链节点发送所述签名验证结果,以使所述第二区块链节点根据所述签名验证结果更新区块链账本。
7.根据权利要求1所述的方法,其特征在于,所述密钥管理服务器获取第一区块链节点的第一待处理数据之前,所述方法还包括:
所述密钥管理服务器通过资源表现层状态转化RESTful接口与所述第一区块链节点建立通信连接;
所述密钥管理服务器通过所述RESTful接口与所述第二区块链节点建立通信连接。
8.一种签名处理的方法,其特征在于,包括:
在密钥管理服务器获取第一区块链节点的第一待处理数据之后,第二区块链节点接收所述密钥管理服务器发送的签名信息,其中,所述签名信息为所述签名服务器采用私钥对第一目标数据进行签名处理后得到的,所述第一目标数据包含于所述第一待处理数据中;
所述第二区块链节点根据所述签名信息生成签名验证结果;
所述第二区块链节点将所述签名验证结果记录至所述区块链账本。
9.根据权利要求8所述的方法,其特征在于,所述第二区块链节点接收所述密钥管理服务器发送的签名信息之前,所述方法还包括:
所述第二区块链节点向所述密钥管理服务器发送连接请求,以使所述密钥管理服务器根据所述连接请求对所述第二区块链节点进行身份验证,得到身份验证结果,其中,所述连接请求中携带所述第二区块链节点的身份验证信息;
若所述身份验证结果为验证成功,则所述第二区块链节点接收所述密钥管理服务器发送的证书,其中,所述证书携带公钥。
10.根据权利要求8所述的方法,其特征在于,所述第二区块链节点根据所述签名信息生成签名验证结果,包括:
所述第二区块链节点采用公钥对所述签名信息进行解密,得到第一摘要信息,其中,所述第一摘要信息为所述签名服务器采用目标加密算法计算得到的;
所述第二区块链节点获取第二待处理数据;
所述第二区块链节点采用所述目标加密算法根据所述第二待处理数据生成第二摘要信息;
若所述第二摘要信息与所述第一摘要信息一致,则所述第二区块链节点确定所述签名验证结果为第一结果,其中,所述第一结果确定所述第二待处理数据是由所述第一区块链节点发送的;
若所述第二摘要信息与所述第一摘要信息不一致,则所述第二区块链节点确定所述签名验证结果为第二结果,其中,所述第二结果表示所述第二待处理数据不是由所述第一区块链节点发送的。
11.根据权利要求10所述的方法,其特征在于,所述第二区块链节点根据所述签名信息生成签名验证结果之后,所述方法还包括:
若所述签名验证结果为所述第一结果,则所述第二区块链节点根据所述第二待处理数据更新状态数据库,其中,所述状态数据库用于存储所述区块链账本中的交易数据,所述交易数据包括交易对象、所述交易对象的剩余数值、交易数值以及交易时间戳。
12.一种签名处理装置,其特征在于,包括:
获取单元,用于获取第一区块链节点的第一待处理数据,其中,所述第一待处理数据中包括第一目标数据;
发送单元,用于向签名服务器发送所述第一待处理数据中的第一目标数据,以使所述签名服务器采用私钥对所述第一目标数据进行签名处理,得到签名信息;
接收单元,用于接收所述签名服务器发送的所述签名信息;
所述发送单元,还用于向第二区块链节点发送所述签名信息,以使所述第二区块链节点根据所述签名信息更新区块链账本。
13.一种签名处理装置,其特征在于,包括:
接收单元,用于在密钥管理服务器获取第一区块链节点的第一待处理数据之后,接收所述密钥管理服务器发送的签名信息,其中,所述签名信息为所述签名服务器采用私钥对第一目标数据进行签名处理后得到的,所述第一目标数据包含于第一待处理数据中;
生成单元,用于根据所述签名信息生成签名验证结果;
记录单元,用于将所述签名验证结果记录至所述区块链账本。
14.一种密钥管理服务器,其特征在于,包括:存储器、收发器、处理器以及总线***;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
获取第一区块链节点的第一待处理数据,其中,所述第一待处理数据中包括第一目标数据;
向签名服务器发送所述第一待处理数据中的第一目标数据,以使所述签名服务器采用私钥对所述第一目标数据进行签名处理,得到签名信息;
接收所述签名服务器发送的所述签名信息;
向第二区块链节点发送所述签名信息,以使所述第二区块链节点根据所述签名信息更新区块链账本;
所述总线***用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
15.一种区块链节点,其特征在于,包括:存储器、收发器、处理器以及总线***;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
在密钥管理服务器获取第一区块链节点的第一待处理数据之后,接收所述密钥管理服务器发送的签名信息,其中,所述签名信息为所述签名服务器采用私钥对第一目标数据进行签名处理后得到的,所述第一目标数据包含于第一待处理数据中;
根据所述签名信息生成签名验证结果;
将所述签名验证结果记录至所述区块链账本;
所述总线***用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
CN201910843355.XA 2019-09-06 2019-09-06 一种签名处理的方法、相关装置以及设备 Active CN110545190B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910843355.XA CN110545190B (zh) 2019-09-06 2019-09-06 一种签名处理的方法、相关装置以及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910843355.XA CN110545190B (zh) 2019-09-06 2019-09-06 一种签名处理的方法、相关装置以及设备

Publications (2)

Publication Number Publication Date
CN110545190A true CN110545190A (zh) 2019-12-06
CN110545190B CN110545190B (zh) 2021-08-13

Family

ID=68713056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910843355.XA Active CN110545190B (zh) 2019-09-06 2019-09-06 一种签名处理的方法、相关装置以及设备

Country Status (1)

Country Link
CN (1) CN110545190B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111083164A (zh) * 2019-12-30 2020-04-28 宁波和利时信息安全研究院有限公司 工业控制***的安全防护方法和相关设备
CN111510306A (zh) * 2020-06-30 2020-08-07 杭州智块网络科技有限公司 一种基于区块链的离线签名方法及装置
CN111581667A (zh) * 2020-05-15 2020-08-25 重庆帮帮链智能科技有限公司 一种养老服务时间结算***
CN111885026A (zh) * 2020-07-10 2020-11-03 海尔优家智能科技(北京)有限公司 基于区块链的互联互通方法和装置、存储介质及电子装置
CN112163034A (zh) * 2020-09-03 2021-01-01 中国联合网络通信集团有限公司 一种模型共享方法、节点及区块链***
CN112200549A (zh) * 2020-09-23 2021-01-08 周海婷 应用于区块链支付的区块链节点验证方法及支付验证平台
CN112581110A (zh) * 2021-02-22 2021-03-30 支付宝(杭州)信息技术有限公司 燃料代扣方法及装置、电子设备、存储介质
CN112861180A (zh) * 2020-03-06 2021-05-28 西南交通大学 一种区块链与工作流相结合的供应链信息共享***及方法
CN113570368A (zh) * 2021-07-29 2021-10-29 成都质数斯达克科技有限公司 一种区块链混合验签方法及***
CN113570465A (zh) * 2021-09-18 2021-10-29 杭州远境互联科技有限公司 基于pos共识机制的区块链签名处理方法
CN113839947A (zh) * 2021-09-24 2021-12-24 深圳前海微众银行股份有限公司 基于区块链的数据处理方法、设备及***
CN114140119A (zh) * 2021-12-02 2022-03-04 杭州复杂美科技有限公司 一种跨链见证交易的签名***和方法
CN113570368B (zh) * 2021-07-29 2024-06-25 成都质数斯达克科技有限公司 一种区块链混合验签方法及***

Citations (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106888087A (zh) * 2017-03-15 2017-06-23 腾讯科技(深圳)有限公司 一种管理证书的方法和装置
CN107453862A (zh) * 2017-05-15 2017-12-08 杭州复杂美科技有限公司 私钥生成存储及使用的方案
CN107579817A (zh) * 2017-09-12 2018-01-12 广州广电运通金融电子股份有限公司 基于区块链的用户身份验证方法、装置及***
CN107623569A (zh) * 2017-09-30 2018-01-23 矩阵元技术(深圳)有限公司 基于秘密共享技术的区块链密钥托管和恢复方法、装置
CN107911216A (zh) * 2017-10-26 2018-04-13 矩阵元技术(深圳)有限公司 一种区块链交易隐私保护方法及***
US20180183587A1 (en) * 2016-12-23 2018-06-28 Vmware, Inc. Blockchain-Assisted Public Key Infrastructure for Internet of Things Applications
CN108305072A (zh) * 2018-01-04 2018-07-20 上海点融信息科技有限责任公司 部署区块链网络的方法、设备和计算机存储介质
CN108494557A (zh) * 2018-02-07 2018-09-04 平安科技(深圳)有限公司 社保数字证书管理方法、计算机可读存储介质及终端设备
CN108564353A (zh) * 2018-04-27 2018-09-21 数字乾元科技有限公司 基于区块链的支付***及方法
CN108614878A (zh) * 2018-04-27 2018-10-02 腾讯科技(深圳)有限公司 协议数据管理方法、装置、存储介质及***
CN108615154A (zh) * 2018-05-01 2018-10-02 王锐 一种基于硬件加密保护的区块链数字签名***及使用流程
WO2018177235A1 (zh) * 2017-03-28 2018-10-04 阿里巴巴集团控股有限公司 一种区块链共识方法及装置
CN108880823A (zh) * 2018-08-07 2018-11-23 佛山市苔藓云链科技有限公司 一种生成快速导航的区块链的方法及***
CN108900464A (zh) * 2018-04-26 2018-11-27 平安科技(深圳)有限公司 电子装置、基于区块链的数据处理方法和计算机存储介质
CN108932410A (zh) * 2018-08-17 2018-12-04 腾讯科技(深圳)有限公司 一种数字资源版权鉴权方法、装置、***和存储介质
KR20180129028A (ko) * 2017-05-24 2018-12-05 라온시큐어(주) 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템
CN108985927A (zh) * 2017-06-05 2018-12-11 万事达卡国际公司 用于使经由区块链的电子交易匿名化的方法和***
CN109150539A (zh) * 2018-07-24 2019-01-04 深圳前海益链网络科技有限公司 一种基于区块链的分布式ca认证***、方法及装置
CN109165944A (zh) * 2018-08-21 2019-01-08 北京京东金融科技控股有限公司 基于区块链的多方签名认证方法、装置、设备及存储介质
CN109257342A (zh) * 2018-09-04 2019-01-22 阿里巴巴集团控股有限公司 区块链跨链的认证方法、***、服务器及可读存储介质
US20190036906A1 (en) * 2017-07-28 2019-01-31 SmartAxiom, Inc. System and method for iot security
CN109308658A (zh) * 2018-09-11 2019-02-05 北京永恒纪元科技有限公司 一种高效安全的去中心化资产托管清算平台***
WO2019032089A1 (en) * 2017-08-07 2019-02-14 Visa International Service Association BLOCK CHAIN ARCHITECTURE WITH SECURITY RECORDING
CN109743321A (zh) * 2019-01-04 2019-05-10 中国联合网络通信集团有限公司 区块链、应用程序、应用程序的用户认证方法及***
CN109840771A (zh) * 2019-04-01 2019-06-04 西安电子科技大学 一种基于同态加密的区块链隐私保护***及其方法
CN109902074A (zh) * 2019-04-17 2019-06-18 江苏全链通信息科技有限公司 基于数据中心的日志存储方法和***

Patent Citations (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180183587A1 (en) * 2016-12-23 2018-06-28 Vmware, Inc. Blockchain-Assisted Public Key Infrastructure for Internet of Things Applications
CN106888087A (zh) * 2017-03-15 2017-06-23 腾讯科技(深圳)有限公司 一种管理证书的方法和装置
WO2018177235A1 (zh) * 2017-03-28 2018-10-04 阿里巴巴集团控股有限公司 一种区块链共识方法及装置
CN107453862A (zh) * 2017-05-15 2017-12-08 杭州复杂美科技有限公司 私钥生成存储及使用的方案
KR20180129028A (ko) * 2017-05-24 2018-12-05 라온시큐어(주) 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템
CN108985927A (zh) * 2017-06-05 2018-12-11 万事达卡国际公司 用于使经由区块链的电子交易匿名化的方法和***
US20190036906A1 (en) * 2017-07-28 2019-01-31 SmartAxiom, Inc. System and method for iot security
WO2019032089A1 (en) * 2017-08-07 2019-02-14 Visa International Service Association BLOCK CHAIN ARCHITECTURE WITH SECURITY RECORDING
CN107579817A (zh) * 2017-09-12 2018-01-12 广州广电运通金融电子股份有限公司 基于区块链的用户身份验证方法、装置及***
CN107623569A (zh) * 2017-09-30 2018-01-23 矩阵元技术(深圳)有限公司 基于秘密共享技术的区块链密钥托管和恢复方法、装置
CN107911216A (zh) * 2017-10-26 2018-04-13 矩阵元技术(深圳)有限公司 一种区块链交易隐私保护方法及***
CN108305072A (zh) * 2018-01-04 2018-07-20 上海点融信息科技有限责任公司 部署区块链网络的方法、设备和计算机存储介质
CN108494557A (zh) * 2018-02-07 2018-09-04 平安科技(深圳)有限公司 社保数字证书管理方法、计算机可读存储介质及终端设备
CN108900464A (zh) * 2018-04-26 2018-11-27 平安科技(深圳)有限公司 电子装置、基于区块链的数据处理方法和计算机存储介质
CN108614878A (zh) * 2018-04-27 2018-10-02 腾讯科技(深圳)有限公司 协议数据管理方法、装置、存储介质及***
CN108564353A (zh) * 2018-04-27 2018-09-21 数字乾元科技有限公司 基于区块链的支付***及方法
CN108615154A (zh) * 2018-05-01 2018-10-02 王锐 一种基于硬件加密保护的区块链数字签名***及使用流程
CN109150539A (zh) * 2018-07-24 2019-01-04 深圳前海益链网络科技有限公司 一种基于区块链的分布式ca认证***、方法及装置
CN108880823A (zh) * 2018-08-07 2018-11-23 佛山市苔藓云链科技有限公司 一种生成快速导航的区块链的方法及***
CN108932410A (zh) * 2018-08-17 2018-12-04 腾讯科技(深圳)有限公司 一种数字资源版权鉴权方法、装置、***和存储介质
CN109165944A (zh) * 2018-08-21 2019-01-08 北京京东金融科技控股有限公司 基于区块链的多方签名认证方法、装置、设备及存储介质
CN109257342A (zh) * 2018-09-04 2019-01-22 阿里巴巴集团控股有限公司 区块链跨链的认证方法、***、服务器及可读存储介质
CN109308658A (zh) * 2018-09-11 2019-02-05 北京永恒纪元科技有限公司 一种高效安全的去中心化资产托管清算平台***
CN109743321A (zh) * 2019-01-04 2019-05-10 中国联合网络通信集团有限公司 区块链、应用程序、应用程序的用户认证方法及***
CN109840771A (zh) * 2019-04-01 2019-06-04 西安电子科技大学 一种基于同态加密的区块链隐私保护***及其方法
CN109902074A (zh) * 2019-04-17 2019-06-18 江苏全链通信息科技有限公司 基于数据中心的日志存储方法和***

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MORENO-SANCHEZ P: ""Privacy preserving payments in credit networks"", 《NETWORK AND DISTRIBUTED SECURITY SYMPOSIUM》 *
孙媛媛: "" 基于信任链的P2P可信身份认证模型的研究与设计"", 《中国优秀硕士学位论文全文数据库》 *
邵奇峰: ""区块链技术:架构及进展"", 《计算机学报》 *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111083164A (zh) * 2019-12-30 2020-04-28 宁波和利时信息安全研究院有限公司 工业控制***的安全防护方法和相关设备
CN112861180B (zh) * 2020-03-06 2022-07-12 西南交通大学 一种区块链与工作流相结合的供应链信息共享***及方法
CN112861180A (zh) * 2020-03-06 2021-05-28 西南交通大学 一种区块链与工作流相结合的供应链信息共享***及方法
CN111581667A (zh) * 2020-05-15 2020-08-25 重庆帮帮链智能科技有限公司 一种养老服务时间结算***
CN111581667B (zh) * 2020-05-15 2023-05-16 重庆帮帮链智能科技有限公司 一种养老服务时间结算***
CN111510306A (zh) * 2020-06-30 2020-08-07 杭州智块网络科技有限公司 一种基于区块链的离线签名方法及装置
CN111885026A (zh) * 2020-07-10 2020-11-03 海尔优家智能科技(北京)有限公司 基于区块链的互联互通方法和装置、存储介质及电子装置
CN111885026B (zh) * 2020-07-10 2023-01-31 海尔优家智能科技(北京)有限公司 基于区块链的互联互通方法和装置、存储介质及电子装置
CN112163034A (zh) * 2020-09-03 2021-01-01 中国联合网络通信集团有限公司 一种模型共享方法、节点及区块链***
CN112163034B (zh) * 2020-09-03 2023-06-16 中国联合网络通信集团有限公司 一种模型共享方法、节点及区块链***
CN112200549A (zh) * 2020-09-23 2021-01-08 周海婷 应用于区块链支付的区块链节点验证方法及支付验证平台
CN112581110A (zh) * 2021-02-22 2021-03-30 支付宝(杭州)信息技术有限公司 燃料代扣方法及装置、电子设备、存储介质
CN113570368A (zh) * 2021-07-29 2021-10-29 成都质数斯达克科技有限公司 一种区块链混合验签方法及***
CN113570368B (zh) * 2021-07-29 2024-06-25 成都质数斯达克科技有限公司 一种区块链混合验签方法及***
CN113570465B (zh) * 2021-09-18 2022-01-07 杭州远境互联科技有限公司 基于pos共识机制的区块链签名处理方法
CN113570465A (zh) * 2021-09-18 2021-10-29 杭州远境互联科技有限公司 基于pos共识机制的区块链签名处理方法
CN113839947A (zh) * 2021-09-24 2021-12-24 深圳前海微众银行股份有限公司 基于区块链的数据处理方法、设备及***
CN113839947B (zh) * 2021-09-24 2023-09-05 深圳前海微众银行股份有限公司 基于区块链的数据处理方法、设备及***
CN114140119A (zh) * 2021-12-02 2022-03-04 杭州复杂美科技有限公司 一种跨链见证交易的签名***和方法

Also Published As

Publication number Publication date
CN110545190B (zh) 2021-08-13

Similar Documents

Publication Publication Date Title
CN110545190B (zh) 一种签名处理的方法、相关装置以及设备
CN112733107B (zh) 一种信息验证的方法、相关装置、设备以及存储介质
CN109472166B (zh) 一种电子签章方法、装置、设备及介质
CN111475841B (zh) 一种访问控制的方法、相关装置、设备、***及存储介质
EP3308522B1 (en) System, apparatus and method for multi-owner transfer of ownership of a device
CN110163004B (zh) 一种区块链生成的方法、相关设备及***
TWI713855B (zh) 憑證管理方法及系統
US9503262B2 (en) Transparent denial of service protection
US11488234B2 (en) Method, apparatus, and system for processing order information
WO2018177124A1 (zh) 业务处理方法、装置、数据共享***及存储介质
CN113395159B (zh) 一种基于可信执行环境的数据处理方法以及相关装置
CN106850220B (zh) 数据加密方法、数据解密方法及装置
WO2017041599A1 (zh) 业务处理方法及电子设备
US20220239509A1 (en) Method for storing and recovering key for blockchain-based system, and device therefor
EP3526721A1 (en) Method, device and system for validating sensitive user data transactions within trusted circle
CN109768977B (zh) 流媒体数据处理方法、装置以及相关设备和介质
CN105409264A (zh) 用于保护受信任计算基的凭证保险库的***和方法
US11943256B2 (en) Link detection method and apparatus, electronic device, and storage medium
CN111475832B (zh) 一种数据管理的方法以及相关装置
CN112533202A (zh) 身份鉴别方法及装置
CN115001841A (zh) 一种身份认证方法、装置及存储介质
CN114039726B (zh) 一种密钥生成的方法、密钥获取的方法、相关装置及介质
CN111259452A (zh) 一种基于区块链的数据管理方法以及相关装置
CN114547082A (zh) 一种数据聚合的方法、相关装置、设备以及存储介质
JP6939313B2 (ja) 分散認証システム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40016929

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant