CN116938500A - 一种数据处理方法、装置、设备及计算机可读存储介质 - Google Patents
一种数据处理方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN116938500A CN116938500A CN202210373600.7A CN202210373600A CN116938500A CN 116938500 A CN116938500 A CN 116938500A CN 202210373600 A CN202210373600 A CN 202210373600A CN 116938500 A CN116938500 A CN 116938500A
- Authority
- CN
- China
- Prior art keywords
- target object
- information
- authorization code
- private key
- key
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 26
- 238000013475 authorization Methods 0.000 claims abstract description 194
- 238000000034 method Methods 0.000 claims abstract description 60
- 238000012795 verification Methods 0.000 claims abstract description 36
- 238000012545 processing Methods 0.000 claims description 68
- 238000007789 sealing Methods 0.000 claims description 28
- 238000013507 mapping Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 30
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010252 digital analysis Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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/3226—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 a predetermined code, e.g. password, passphrase or PIN
-
- 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
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)
- Storage Device Security (AREA)
Abstract
本申请提供了一种数据处理方法、装置、设备及计算机可读存储介质,可以应用于区块链、云技术、智慧交通、辅助驾驶等领域,该方法包括:在接收到客户端针对目标数据的交易请求时,获取目标对象的第一对象信息,第一对象信息包括第一标识信息和第一授权码的摘要信息,第一授权码是通过客户端输入的;调用可信执行环境基于目标对象的第一标识信息对第一授权码进行验证;若验证通过,则调用可信执行环境基于目标对象的第一对象信息获取目标对象的私钥,并基于目标对象的私钥对目标数据进行签名。采用本申请可以安全的完成交易的签名,提升用户私钥的安全性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据处理方法、装置、设备及计算机可读存储介质。
背景技术
区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。由于区块链安全等特征,区块链交易在如今得到了广泛的应用。
区块链网络交易处理流程简单来说就是,用户通过终端设备向节点发出交易请求,然后节点广播该交易请求到区块链网络中,再验证该交易的正确性,再然后将多个交易组成一个区块,最后将新的区块加入到以及存在的区块链中,完成交易上链。在这个过程中,为了防止别人冒充,在用户发起交易时,需要使用用户的私钥对该交易进行签名。所以私钥的安全在区块链交易中显得尤为重要。现有技术中,私钥的托管方式主要分为前端托管密钥和后台托管密钥,其中前端托管密钥的方案容易因为用户的设备故障等因素而造成密钥丢失,而后台托管密钥的方案会因为根密钥的窃取等因素而造成密钥的丢失。可见,如何提高用户私钥的安全性成为了一个亟待解决的问题。
发明内容
本申请实施例提供了一种数据处理方法、装置、设备及计算机可读存储介质,可以安全的完成交易的签名,并提升用户私钥的安全性。
一方面,本申请实施例提供了一种数据处理方法,所述方法应用于区块链网络的第一服务器,所述第一服务器运行有可执行环境,所述方法包括:
在接收到客户端针对目标数据的交易请求时,获取目标对象的第一对象信息,所述第一对象信息包括第一标识信息和第一授权码的摘要信息,所述第一授权码是通过所述客户端输入的;
调用所述可信执行环境基于所述目标对象的第一标识信息对所述第一授权码进行验证;
若验证通过,则调用所述可信执行环境基于所述目标对象的第一对象信息获取所述目标对象的私钥,并基于所述目标对象的私钥对所述目标数据进行签名。
另一方面,本申请实施例提供了一种数据处理装置,所述装置包括:
获取单元,用于在接收到客户端针对目标数据的交易请求时,获取目标对象的第一对象信息,所述第一对象信息包括第一标识信息和第一授权码的摘要信息,所述第一授权码是通过所述客户端输入的;
处理单元,用于调用所述可信执行环境基于所述目标对象的第一标识信息对所述第一授权码进行验证;
所述处理单元,还用于若验证通过,则调用所述可信执行环境基于所述目标对象的第一对象信息获取所述目标对象的私钥,并基于所述目标对象的私钥对所述目标数据进行签名。
再一方面,本申请实施例提供了一种计算机设备,该计算机设备包括:处理器、存储器以及网络接口;处理器与存储器、网络接口相连,其中,网络接口用于提供网络通信功能,存储器用于存储程序代码,处理器用于调用程序代码,以执行本申请实施例中的数据处理方法。
相应地,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时,执行本申请实施例中的数据处理方法。
相应地,本申请实施例还提供了一种计算机程序,所述计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备执行本申请实施例提供的数据处理方法。
本申请实施例,首先在接收到客户端针对目标数据的交易请求时,获取目标对象的第一对象信息,该第一对象信息包括第一标识信息和第一授权码的摘要信息,该第一授权码目标对象通过客户端输入的。然后,调用可信执行环境,在可信执行环境中基于目标对象的第一标识信息对第一授权码进行验证。最后,如果验证通过,则在可信执行环境中,基于目标对象的第一对象信息,获取目标对象的私钥,并且基于目标对象的私钥对目标数据进行签名。采用上述方式,将用户私钥托管在后台的可信硬件中,可以实现达到密钥可用不可见的目的,从而提升私钥的安全性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例示例性提供的一种数据处理系统的架构示意图;
图2是本申请实施例提供的一种区块链数据共享系统的结构示意图;
图3是本申请实施例示例性提供的一种数据处理方法的流程示意图;
图4是本申请实施例示例性提供的初始化私钥过程的流程示意图;
图5是本申请实施例示例性提供的一种初始化和交易过程的流程示意图;
图6是申请实施例示例性提供的一种数据处理装置的结构示意图;
图7是本申请实施例示例性提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了更好的理解本申请实施例,下面先对本申请实施例涉及的一些专业术语进行介绍:
pin码:个人身份识别码(personal identification number,pin),一串4-8位的数字构成的通行码,用于认证使用者身份,授权用户本人进入系统。
可信执行环境:可信执行环境(Trusted Execution Environments,TEE),是一项基于硬件保护数据和算法的技术。该TEE是一个处理器和内存的隔离环境,只有中央处理器(central processing unit,CPU)可以访问运行在加密内存里的应用程序,其它层(硬件、内核、其它应用程序)对TEE的访问,都被CPU阻拦。
秘钥:在现实世界,交易通常都需要签名授权。然而,在密码学货币世界,所有交易的授权都必须使用相关的私钥。私钥的作用是配合密码学算法,生成一笔交易的数字签名。签过名的交易表示私钥持有对象许可了其他对象对自己所持有资产的权限。虽然任何对象都能生成与持有对象的数字资产相关的交易,但是只有持有对应私钥的对象才能签署该交易。
区块链:区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。随着区块链的快速发展,区块链在很多业务上得以应用。例如,钱包,用于提供进行电子货币的交易的功能,包括发起交易;共享账本,用于提供账目数据的存储、查询和修改等操作的功能;智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易。
请参见图1,图1是本申请实施例提供的一种系统架构示意图。本申请实施例提供的数据处理方法可以适用于图1所示的系统架构。如图1所示,该系统架构示意图包括多个服务器,该多个服务器均可以是区块链网络中的区块链节点,该多个服务器均可以相互进行通信。该多个服务器具体可以包括服务器102、服务器103。可以理解的是,区块链网络中的区块链节点可以是一个服务器,也可以是由多个服务器构成的服务器集群。如图1所示的各个服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
图1中的终端设备101为提供数据处理方法的客户端所在设备。该终端设备101可以是智能手机、平板电脑、笔记本电脑、台式计算机、车载终端、飞行器、智能语音交互设备等,但并不局限于此。下面结合图1所示的系统架构对本申请所提供的数据处理方法做进一步的解释。
在一种可能的实施例中,服务器102为第一服务器,该服务器102运行有可执行环境。操作对象通过操作终端设备101,向服务器102发送针对目标数据的交易请求,并通过终端设备101输入第一授权码。服务器102在接收到该交易请求时,从终端设备101获取第一对象信息,该第一对象信息包括第一标识信息和第一授权码的摘要信息。然后,服务器102调用可信执行环境,基于目标对象的第一标识信息对该第一授权码进行验证。如果验证通过,服务器102则调用该可信执行环境,基于目标对象的第一对象信息,获取目标对象的私钥,并且基于目标对象的私钥对目标数据进行签名。最后,将签名成功的结果反馈给终端设备101。如果验证没有通过,则服务器102向终端设备101发送失败反馈,通过终端设备101提醒目标对象输入的第一授权码错误。
在一种可能的实施例中,服务器103作为服务器102的备份服务器,服务器103的数量具体可以为一个或多个。服务器102可以将目标对象的标识信息和授权码的摘要信息以及私钥发送给服务器103,由服务器103将该目标对象的标识信息和授权码的摘要信息以及私钥进行存储。在服务器103完成备份之后,当终端设备101发现服务器102发生故障,则终端设备101可以将交易请求发送给服务器103,由服务器103中的可信硬件(调用可信执行环境)完成签名操作。从而可以避免单点故障时,无法完成签名,有助于提高区块链网络的数据处理效率。
本申请实施例可应用于各种场景,包括但不限于区块链、云技术、人工智能、智慧交通、自动驾驶等。
参见图2,是本申请实施例提供的一种区块链数据共享系统的结构示意图。数据共享系统200是指用于进行节点与节点之间数据共享的系统,该数据共享系统200中可以包括多个节点201和多个节点202,多个节点201可以是指数据共享系统中各个客户端,多个节点202可以是指数据共享系统中各个服务器。通常来说,节点202的存储空间和计算能力会大于节点201的存储空间和计算能力。为了保证数据共享系统内的信息互通,数据共享系统中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当数据共享系统中的任意节点202接收到输入信息时,数据共享系统中的全部节点202便根据共识算法获取该输入信息,将该输入信息作为共享数据中的数据进行存储,使得数据共享系统中全部节点202上存储的数据均一致。
在一种可能的实施例中,在区块链网络的场景下,可以由图2所示的节点202执行本申请提供的数据处理方法,由图2所示的节点201作为客户端。
请参见图2,图2为本申请实施例提供的数据处理方法的流程示意图。该数据处理方法可以由上述服务器执行,包括但不限于如下步骤S301~S303。
S301、在接收到客户端针对目标数据的交易请求时,获取目标对象的第一对象信息,第一对象信息包括第一标识信息和第一授权码的摘要信息,第一授权码是通过客户端输入的。
其中,交易请求包括上链交易请求。第一标识信息包括目标对象的账户名称等,该第一标识信息的可以是通过客户端输入的。第一授权码包括目标对象的pin码,该第一授权码的摘要信息包括目标对象的pin码进行哈希(Hash)处理后得到的Hash(pin码)。该哈希处理通过离散算法把任意长度的输入(pin码)变换成固定长度的输出(Hash(pin码))。使用哈希处理不仅可以提高存储空间的利用率以及提高数据的查询效率,还可以因为其难以找到逆向规律,保障数据传递的安全性。
可选的,本申请采用的哈希处理可以包括以下方法:直接寻址法,取关键字或关键字的某个线性函数值为散列地址、数字分析法,找出数字的规律,尽可能利用这些数据来构造冲突几率较低的散列地址、平方取中法,取关键字平方后的中间几位作为散列地址、折叠法,将关键字分割成位数相同的几部分,最后一部分位数可以不同,然后取这几部分的叠加和(去除进位)作为散列地址、随机数法,选择一随机函数,取关键字作为随机函数的种子生成随机值作为散列地址、除留余数法,取关键字被某个不大于散列表表长m的数p除后所得的余数为散列地址。
S302、调用可信执行环境基于目标对象的第一标识信息对第一授权码进行验证。
其中,可信执行环境由第一服务器中的可信硬件提供。该验证过程可以是将第一授权码与预先存储的授权码进行比对。
在一种可能的实施例中,调用可信执行环境基于目标对象的第一标识信息对第一授权码进行验证,具体为:调用可信执行环境从标识信息与摘要信息之间的映射关系表中,获取目标对象的第一标识信息对应的第三授权码的摘要信息;若第一授权码的摘要信息与第三授权码的摘要信息匹配,则确定对第一授权码验证通过。
其中,调用可信执行环境从标识信息与摘要信息之间的映射关系表中,获取目标对象的第一标识信息对应的第三授权码的摘要信息可以是:在可信执行环境中,通过第一标识信息,在映射关系表中确定出该第一标识信息对应的第三授权码的摘要信息。当第一授权码的摘要信息与第三授权码的摘要信息相同时,确定第一授权码验证通过。
可选的,标识信息与摘要信息之间的映射关系表中,第一标识信息与第三授权码的摘要信息之间的映射关系可以是目标对象在初始化授权码时确定的。可选的,标识信息与摘要信息之间的映射关系表中的标识信息与授权码的摘要信息可以是一一对应的,也就是说,一个标识信息只有唯一一个与之相对应的授权码的摘要信息。其中,第三授权码的摘要信息与第一授权码的摘要信息可以是相同的,也可以是不同的。当第三授权码的摘要信息与第一授权码的摘要信息相同时,确定为匹配,第三授权码的摘要信息与第一授权码的摘要信息不同时,确定为不匹配。需要说明的是,第一授权码进行的哈希处理和第三授权码进行的哈希处理的规则是相同的,从而确保在第一授权码与第三授权码相同时,第一授权码的摘要信息与第三授权码的摘要信息也相同。
示例性的,第一标识信息为2158,第一授权码的摘要信息为4968af757,标识信息与摘要信息之间的映射关系表如下所示:
标识信息 | 授权码的摘要信息 |
2541 | eac04f98d |
4323 | 2124530af |
5614 | 768aw18j0 |
2158 | 4968af757 |
根据第一标识信息在上述表中可以确定第三授权码对应的摘要信息为:4968af757。将该第一授权码的摘要信息(4968af757)与第三授权码的摘要信息进行比对(4968af757)后发现,该第一授权码的摘要信息与第三授权码的摘要信息相同,则确定该第一授权码验证通过。
S303、若验证通过,则调用可信执行环境基于目标对象的第一对象信息获取目标对象的私钥,并基于目标对象的私钥对目标数据进行签名。
其中,基于目标对象的私钥对目标数据进行签名可以是使用目标对象的私钥对目标数据进行加密,以证明目标数据是目标对象发送的。该加密算法可以是对称加密算法,也可以是非对称加密算法。但由于非对称加密的效率太低,所以本申请提供的数据处理方法主要采用对称加密算法。以对称加密为例,目标对象使用私钥对目标数据进行加密,形成签名。然后将目标数据与签名一同发送给接收对象,接收对象使用公钥对该签名进行解密,如果解密成功,则证明该目标数据是目标对象发送的。签名除了可以证明身份以外,还可以确定数据的完整性以及确定数据是否被篡改过。示例性的,目标对象首先对目标数据求散列(哈希处理),得到一个长度固定且不可逆的数字串,然后如上述进行签名发送。当接收对象收到目标数据和签名后,接收对象使用公钥解密签名,如果能成功解密得到一个散列值,则证明确定是目标对象发送的。接收对象还可以再对目标数据进行一次散列计算,因为不同的数据计算出的散列值是不同的,所以如果接收对象计算得到的散列值与目标对象计算得到的散列值相同,则可以确定该目标数据完整,并且没有被篡改,如果接收对象计算得到的散列值与目标对象计算得到的散列值不同,则可以确定该目标数据不完整或者有被篡改。
通过将交易中使用密钥签名的过程在可执行安全环境中进行,使得该密钥的使用过程可用不可见,从而不仅可以安全的完成交易签名,还保证了密钥的安全性。
在一种可能的实施例中,如图4所示,图4为本身实施例提供的一种秘钥初始化流程示意图,本申请提供的数据处理方法还可以包括但不限于如下步骤S401~S404。
S401、在接收到客户端针对目标对象的私钥创建请求时,获取目标对象的第二对象信息,第二对象信息包括第二标识信息和第二授权码的摘要信息。
其中,第二标识信息和第二授权码是目标对象通过客户端输入的,第二授权码的摘要信息是通过对第二授权码进行哈希处理后得到的。哈希处理过程在上文已有具体描述,具体可参考S301中对哈希处理的解释,在此不再对哈希处理赘述。
可选的,目标对象在客户端输入第二标识信息和第二授权码之后,将该第二授权码在客户端进行哈希处理以得到第二授权码的摘要信息。然后建立第二标识信息和第二授权码的摘要信息之间的映射关系。然后客户端通过与可执行环境建立的可信通道,将该第二标识信息、第二授权码的摘要信息以及第二标识信息和第二授权码的摘要信息之间的映射关系发送给秘钥托管程序。
可选的,目标对象在经过身份验证后(如实名认证,人脸核身等),为目标对象自动生成第二授权码,并建立该第二授权码和第二标识信息(该第二标识信息可以是目标对象设定的)的映射关系。然后客户端通过与可执行环境建立的可信通道,将该第二标识信息、第二授权码的摘要信息以及第二标识信息和第二授权码的摘要信息之间的映射关系发送给秘钥托管程序。
S402、调用可信执行环境的秘钥托管程序生成目标对象的公钥和私钥。
其中,在可信执行环境中的秘钥托管程序分为可信部分和普通部分,其中生成目标对象的公钥和私钥在可信部分执行,该秘钥托管程序中的可信部分是在编写该秘钥托管程序时设定的。其中,公钥和私钥的作用在上文中进行了详细的解释,在此不再赘述。
S403、调用可信执行环境的秘钥托管程序对目标对象的私钥进行密封处理,得到目标对象的密封后的私钥。
其中,该密封处理包括在可信执行环境中用秘钥对该目标对象的私钥进行加密。可选的,密封处理还可以包括秘钥分存,也就是将秘钥拆开后分别保存在不同的地方。通过对目标对象的私钥进行密封处理,更加保证了该目标对象的私钥的安全性。
在一种可能的实施例中,调用可信执行环境的秘钥托管程序对目标对象的私钥进行密封处理,得到目标对象的密封后的私钥,具体为:首先调用可信执行环境的秘钥托管程序获取固化在第一服务器的处理器中的根秘钥;然后调用秘钥托管程在可信执行环境中,基于根秘钥以及随机因子确定密封秘钥;最后调用秘钥托管程在可信执行环境中,基于密封秘钥对目标对象的私钥进行密封处理,得到目标对象的密封后的私钥。
其中,根秘钥可以是固化在第一服务器的处理器中的秘钥,也可以是固化在第一服务器中其他可信硬件的秘钥。即使是超级管理员,也无法获取到根秘钥。只有在可信执行环境中的秘钥托管程序中的可信部分才可以获取该根秘钥。从而确保了私钥的安全性。
其中,随机因子是会随着条件的变化而发生改变的,该随机因子可以是随机数,时间等。该密封秘钥是通过随机因子,对根秘钥进行处理后得到的。也就是说该密封秘钥是根秘钥的延伸秘钥。根秘钥作为固化在可信硬件中的秘钥,本就难以获取,如今引入随机因子得到该根秘钥的衍生秘钥,使得密封秘钥更加无法被外界获取,从而私钥的安全性再度得到提高。
可选的,获取到第一服务器的处理器中的根秘钥后,第一服务器自动生成一个随机数作为随机因子。对该第一服务器的处理器中的根秘钥中的每一位都加上该随机因子,得到一个第一服务器的处理器中的根秘钥的衍生秘钥,将该衍生秘钥作为密封秘钥。例如,获取到第一服务器的处理器中的根秘钥为:12341。第一服务器自动生成一个随机数:3,将该字数3作为随机因子。则密封秘钥为:45674。需要说明的是,根秘钥通常是一个字符串,不一定是作为数字存在,该随机因子也同理,在此只是进行举例,不做任何的限制。
S404、将第二标识信息、第二授权码的摘要信息以及密封后的私钥绑定后存储到第一数据库中。
其中,第一数据库可以是存在于第一服务器中的数据库,也可以是独立于第一服务器中的数据库。第二标识信息、第二授权码的摘要信息以及密封后的私钥绑定可以是建立第二标识信息、第二授权码的摘要信息以及密封后的私钥三者之间的映射关系。
可选的,还可以将第二授权码的摘要信息也进行密封处理后,将第二标识信息、密封后的第二授权码的摘要信息以及密封后的私钥绑定后存储到第一数据库中。对第二授权码的摘要信息的密封处理可以如上述对私钥的密封处理,因为相比与私钥,第二授权码的摘要信息的重要性要低一些,所以第二授权码的摘要信息的密封处理可以采用除根密钥以外的其他密钥进行加密。
通过在可执行环境中对私钥进行初始化,并在可执行环境中使用固化在服务器的处理器中的根秘钥和随机因子对私钥进行密封后再存储,确保了私钥的安全性。
在一种可能的实施例中,为了应对如第一服务器故障,从而造成目标对象的私钥丢失的情况,可以将目标对象的私钥备份在多个其他服务器上。本申请提供的数据处理方法还包括:建立第一服务器的可信执行环境与区块链网络的第二服务器的可信执行环境之间的可信安全通道;利用可信安全通道将目标对象的第二标识信息、第二授权码的摘要信息以及私钥发送至第二服务器的可信执行环境,以使得第二服务器在通过调用秘钥托管程序得到目标对象的密封后的私钥之后,将第二标识信息、第二授权码的摘要信息以及密封后的私钥绑定后存储到第二数据库中。
具体实现中,首先需要建立第一服务器和第二服务器之间的可信安全通道,以防止在传输私钥的过程导致私钥被盗取。然后利用该可信安全通道,将目标对象的第二标识信息、第二授权码的摘要信息以及私钥从第一服务器发送至第二服务器。需要说明的是,在发送过程的时候该目标对象的私钥还是未密封的。在第二服务器的可信执行环境接收到该目标对象的第二标识信息、第二授权码的摘要信息以及私钥后,第二服务器使用固化在第二服务器中的根秘钥对该目标对象的私钥进行密封处理,以得到密封后的私钥。最后将该第二标识信息、第二授权码的摘要信息以及密封后的私钥绑定后存储到第二数据库中。
其中,第二数据库可以是存在于第二服务器中的数据库,也可以是独立于第二服务器中的数据库。第二服务器对该目标对象的私钥进行的密封处理包括在可信执行环境中用秘钥对该目标对象的私钥进行加密(如上述S403中对密封处理的描述)。可选的,密封处理还可以包括秘钥分存,也就是将秘钥拆开后分别保存在不同的地方。通过对目标对象的私钥进行密封处理,更加保证了该目标对象的私钥的安全性。
可选的,还可以将第二授权码的摘要信息也进行密封处理后,将第二标识信息、密封后的第二授权码的摘要信息以及密封后的私钥绑定后存储到第二数据库中。对第二授权码的摘要信息的密封处理可以如上述对私钥的密封处理,因为相比与私钥,第二授权码的摘要信息的重要性要低一些,所以第二授权码的摘要信息的密封处理可以采用除根密钥以外的其他密钥进行加密。
通过将目标对象的第二标识信息、第二授权码的摘要信息以及私钥备份在第二服务器中,避免了因为第一服务器的损坏等因素造成的私钥丢失的情况出现。
在一种可能的实施例中,调用可信执行环境基于目标对象的第一对象信息获取目标对象的私钥,包括:调用秘钥托管程序基于目标对象的第一对象信息,从可信执行环境的内存中获取目标对象的私钥;若可信执行环境的内存中不存在目标对象的私钥,则调用秘钥托管程序基于目标对象的第一对象信息,从第一数据库中获取目标对象的密封后的私钥;调用秘钥托管程序在可信执行环境中对目标对象的密封后的私钥进行解封处理,得到目标对象的私钥。
首先判断第一服务器中的可信执行环境的内存是否存在目标对象的私钥,如果存在该目标对象的私钥,则表明该目标对象的私钥还未进行密封处理,则直接获取该目标对象的私钥。如果不存在该目标对象的私钥,则根据目标对象的第一对象信息,从数据库中获取目标对象的密封后的私钥。调用秘钥托管程序在所述可信执行环境中生成解封密钥,对该密封后的私钥进行解密,从而得到目标对象的私钥。
其中,第一数据库可以是存在于第一服务器中的数据库,也可以是独立于第一服务器中的数据库。第一数据库可以是以键值对存储数据的一种(Key-value,KV)数据库。其中,第一对象信息包括第一标识信息和第一授权码的摘要信息。可以通过第一对象信息中的第一标识信息作为索引在第一数据库中进行查找以得到目标对象的密封后的私钥,也可以根据第一对象信息中的第一授权码的摘要信息作为索引在第一数据库中进行查找以得到目标对象的密封后的私钥。也就是说,获取目标对象的私钥过程中,可以只有第一标识信息是明文传递的,从而确保了目标对象的私钥的安全性。
在一种可能的实施例中,本申请提供的数据处理方法还包括:在接收到客户端针对目标对象的授权码更新请求时,获取目标对象的验证信息;对目标对象的验证信息进行验证,若验证通过,则向客户端发送授权码更新指示;接收客户端响应授权码更新指示发送的第四授权码的摘要信息;将第二标识信息、第四授权码的摘要信息以及密封后的私钥绑定后更新到第一数据库中。
其中,目标对象的验证信息可以包括:实名认证、登录认证、人脸核身等。需要说明的是,该目标对象的验证信息还可以包括其他的验证信息,上述的认证信息做为举例,在此不做限制。其中,授权码更新指示是为了告知第一服务器更新第二授权码的摘要信息。其中,第四授权码可以是目标对象通过客户端输入后自己设定的,也可以是系统为目标对象自动生成的,如果该第四授权码是系统自动为目标对象生成的,则第一服务器需要将该第二标识信息、第四授权码的摘要信息以及密封后的私钥绑定后更新到所述第一数据库中之后,将该第四授权码反馈给客户端。由客户端将该第四授权码告知给目标对象。可选的,为了确保授权码的安全性,第一服务器可以在预设时间时提醒目标对象,对授权码进行更改。
可选的,如果该目标对象的第二标识信息、第二授权码的摘要信息以及私钥除了存储在第一服务器对应的第一数据库中,还存储在第二服务器对应的第二数据库中,则在更新授权码时,不仅需要更新第一服务器对应的第一数据中的授权码,还需要更新第二服务器对应的第二数据中的授权码。
示例性的,第二标识信息、第二授权码的摘要信息以及私钥存储在第一服务器对应的第一数据库中和第二服务器对应的第二数据库中。目标对象需要对第二授权码进行更新时,目标对象通过操作客户端向第一服务器发送授权码更新请求。由客户端对目标对象进行身份验证,以得到目标对象的验证信息。通过对该目标对象的验证信息进行验证,确定该目标对象发送的更新请求是本人操作的。则客户端对用户输入的第四授权码进行哈希处理,得到第四授权码的摘要信息,并第一服务器接收客户端发送的第四授权码的摘要信息。第一服务器将第二标识信息、第四授权码的摘要信息以及密封后的私钥绑定后更新到第一数据库中。第一服务器通过与第二服务器建立的可信安全通道,告知第二服务器要进行更新操作,并且将第二标识信息、第四授权码的摘要信息以及私钥发送给第二服务器。第二服务器将第二标识信息、第四授权码的摘要信息以及密封后的私钥绑定后更新到第二数据库中。
为了更好的理解本申请提供的数据处理方法,下面结合图5做进一步的解释。
如图5所示,图5展现了密钥托管流程中包含的两个过程:初始化过程以及签名交易过程。图5中的可信硬件1(图中503所标记)是第一服务器的可信硬件,可信硬件2(图中504所标记)作为第一服务器的备份服务器的可信硬件,也就是二服务器上的可信硬件。图5中的数据库1和数据库2可以是独立于第一服务器的数据库,也可以是内嵌在第一服务器中的数据。服务后台502为第一服务器的后台。
下面结合图4对图5中包含的初始化过程做进一步的解释。首先,目标对象在客户端/前端501输入第二标识信息和第二授权码,由客户端/前端501发送私钥创建请求给服务后台502(第一服务器)。第一服务器同意创建后,客户端/前端501对第二对象中的第二授权码进行哈希处理,得到第二授权码的摘要信息,然后客户端/前端501将第二标识信息和第二授权码的摘要信息发送给服务后台502。在服务后台502中的可信硬件中的密钥托管程序中的可信执行环境(可信硬件503中的可信部分)生成目标对象的公钥和私钥。再在该服务后台502中的可信硬件中的密钥托管程序中的可信部分中对密钥进行密封处理,得到目标对象密封后的私钥。最后将第二标识信息、第二授权码的摘要信息以及密封后的密钥存入数据库中(第一数据库)。
下面结合图3对图5中包含的初始化过程做进一步的解释。首先,目标对象在客户端/前端501输入第一标识信息和第一授权码户,由客户端/前端501发送交易请求给服务后台502(第一服务器)。第一服务器同意交易后,客户端/前端501对第一对象中的第一授权码进行哈希处理,得到第一授权码的摘要信息,然后客户端/前端501将第一标识信息和第一授权码的摘要信息发送给服务后台502。在服务后台502中的可信硬件中的密钥托管程序中的可信执行环境(可信硬件504中的可信部分)通过第一标识信息和第一授权码的摘要信息验证目标对象的身份。验证通过后,在服务后台502中的可信硬件中的密钥托管程序中的可信部分获取目标对象的私钥,并使用该私钥对交易数据进行签名。
参见图6,图6是本申请实施例提供的数据处理装置的结构示意图。该数据处理装置包括:获取单元601以及处理单元602。其中:
获取单元601,用于在接收到客户端针对目标数据的交易请求时,获取目标对象的第一对象信息,第一对象信息包括第一标识信息和第一授权码的摘要信息,第一授权码是通过客户端输入的;
处理单元602,用于调用可信执行环境基于目标对象的第一标识信息对第一授权码进行验证;
处理单元602,还用于若验证通过,则调用可信执行环境基于目标对象的第一对象信息获取目标对象的私钥,并基于目标对象的私钥对目标数据进行签名。
在另一种实现中,获取单元602,还用于在接收到客户端针对目标对象的私钥创建请求时,获取目标对象的第二对象信息,第二对象信息包括第二标识信息和第二授权码的摘要信息;
处理单元602,还用于调用可信执行环境的秘钥托管程序生成目标对象的公钥和私钥;
处理单元602,还用于调用可信执行环境的秘钥托管程序对目标对象的私钥进行密封处理,得到目标对象的密封后的私钥;
处理单元602,还用于将第二标识信息、第二授权码的摘要信息以及密封后的私钥绑定后存储到第一数据库中。
在另一种实现中,处理单元602,还用于调用可信执行环境的秘钥托管程序获取固化在第一服务器的处理器中的根秘钥;
处理单元602,还用于调用秘钥托管程在可信执行环境中,基于根秘钥以及随机因子确定密封秘钥;
处理单元602,还用于调用秘钥托管程在可信执行环境中,基于密封秘钥对目标对象的私钥进行密封处理,得到目标对象的密封后的私钥。
在另一种实现中,处理单元602,还用于建立第一服务器的可信执行环境与区块链网络的第二服务器的可信执行环境之间的可信安全通道;
处理单元602,还用于利用可信安全通道将目标对象的第二标识信息、第二授权码的摘要信息以及私钥发送至第二服务器的可信执行环境,以使得第二服务器在通过调用秘钥托管程序得到目标对象的密封后的私钥之后,将第二标识信息、第二授权码的摘要信息以及密封后的私钥绑定后存储到第二数据库中。
在另一种实现中,处理单元602,还用于调用可信执行环境从标识信息与摘要信息之间的映射关系表中,获取目标对象的第一标识信息对应的第三授权码的摘要信息;
处理单元602,还用于若第一授权码的摘要信息与第三授权码的摘要信息匹配,则确定对第一授权码验证通过。
在另一种实现中,处理单元602,还用于调用秘钥托管程序基于目标对象的第一对象信息,从可信执行环境的内存中获取目标对象的私钥;
处理单元602,还用于若可信执行环境的内存中不存在目标对象的私钥,则调用秘钥托管程序基于目标对象的第一对象信息,从第一数据库中获取目标对象的密封后的私钥;
处理单元602,还用于调用秘钥托管程序在可信执行环境中对目标对象的密封后的私钥进行解封处理,得到目标对象的私钥。
在另一种实现中,获取单元601,还用于在接收到客户端针对目标对象的授权码更新请求时,获取目标对象的验证信息;
处理单元602,还用于对目标对象的验证信息进行验证,若验证通过,则向客户端发送授权码更新指示;
处理单元602,还用于接收客户端响应授权码更新指示发送的第四授权码的摘要信息;
处理单元602,还用于将第二标识信息、第四授权码的摘要信息以及密封后的私钥绑定后更新到第一数据库中。
可以理解的是,本申请实施例提供的数据处理装置的各功能单元的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例中的相关描述,此处不再赘述。
在可行的实施例中,本申请实施例提供的数据处理装置可以采用软件方式实现,数据处理装置可以存储在存储器中,其可以是程序和插件等形式的软件,并包括一系列的单元,包括获取单元和处理单元;其中,获取单元和处理单元用于实现本申请实施例提供的数据处理方法。
在其它可行的实施例中,本申请实施例提供的数据处理装置也可以采用软硬件结合的方式实现,作为示例,本申请实施例提供的数据处理装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的数据处理方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑器件(Programmable Logic Device,PLD)、复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或其他电子元件。
请参见图7,是本申请实施例提供的一种计算机设备的结构示意图,该计算机设备70可以包括处理器701、存储器702、网络接口703和至少一个通信总线703。其中,处理器701用于调度计算机程序,可以包括中央处理器、控制器、微处理器;存储器702用于存储计算机程序,可以包括高速随机存取存储器(Random Access Memory,RAM),非易失性存储器,例如磁盘存储器件、闪存器件等;网络接口703可选的可以包括标准的有线接口、无线接口(如WI-FI接口),提供数据通信功能;通信总线704负责连接各个通信元件等。该计算机设备70可以对应于前文的数据处理装置。可选的,该计算机设备70还可以包括网络接口,该网络接口可以包括标准的有线接口、无线接口(如WI-FI接口)等,提供数据通信功能。存储器702用于存储计算机程序,该计算机程序包括程序指令,处理器701用于执行存储器702存储的程序指令,以执行上述实施例中步骤S301至步骤S304中描述的过程,执行如下操作:
在一种实现中,处理器701用于在接收到客户端针对目标数据的交易请求时,获取目标对象的第一对象信息,第一对象信息包括第一标识信息和第一授权码的摘要信息,第一授权码是通过客户端输入的;调用可信执行环境基于目标对象的第一标识信息对第一授权码进行验证;若验证通过,则调用可信执行环境基于目标对象的第一对象信息获取目标对象的私钥,并基于目标对象的私钥对目标数据进行签名。
在一种实现中,处理器701用于在接收到客户端针对目标对象的私钥创建请求时,获取目标对象的第二对象信息,第二对象信息包括第二标识信息和第二授权码的摘要信息;调用可信执行环境的秘钥托管程序生成目标对象的公钥和私钥;调用可信执行环境的秘钥托管程序对目标对象的私钥进行密封处理,得到目标对象的密封后的私钥;将第二标识信息、第二授权码的摘要信息以及密封后的私钥绑定后存储到第一数据库中。
在一种实现中,处理器701用于调用可信执行环境的秘钥托管程序获取固化在第一服务器的处理器中的根秘钥;调用秘钥托管程在可信执行环境中,基于根秘钥以及随机因子确定密封秘钥;调用秘钥托管程在可信执行环境中,基于密封秘钥对目标对象的私钥进行密封处理,得到目标对象的密封后的私钥。
在一种实现中,处理器701用于建立第一服务器的可信执行环境与区块链网络的第二服务器的可信执行环境之间的可信安全通道;利用可信安全通道将目标对象的第二标识信息、第二授权码的摘要信息以及私钥发送至第二服务器的可信执行环境,以使得第二服务器在通过调用秘钥托管程序得到目标对象的密封后的私钥之后,将第二标识信息、第二授权码的摘要信息以及密封后的私钥绑定后存储到第二数据库中。
在一种实现中,处理器701用于调用可信执行环境从标识信息与摘要信息之间的映射关系表中,获取目标对象的第一标识信息对应的第三授权码的摘要信息;若第一授权码的摘要信息与第三授权码的摘要信息匹配,则确定对第一授权码验证通过。
在一种实现中,处理器701用于调用秘钥托管程序基于目标对象的第一对象信息,从可信执行环境的内存中获取目标对象的私钥;若可信执行环境的内存中不存在目标对象的私钥,则调用秘钥托管程序基于目标对象的第一对象信息,从第一数据库中获取目标对象的密封后的私钥;调用秘钥托管程序在可信执行环境中对目标对象的密封后的私钥进行解封处理,得到目标对象的私钥。
在一种实现中,处理器701用于在接收到客户端针对目标对象的授权码更新请求时,获取目标对象的验证信息;对目标对象的验证信息进行验证,若验证通过,则向客户端发送授权码更新指示;接收客户端响应授权码更新指示发送的第四授权码的摘要信息;将第二标识信息、第四授权码的摘要信息以及密封后的私钥绑定后更新到第一数据库中。
具体实现中,上述计算机设备可通过其内置的各个功能模块执行如上述图3中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现图3中各个步骤所提供的基频预测方法,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
上述计算机可读存储介质可以是前述任一实施例提供的数据处理装置或者上述终端设备的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smartmedia card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请的权利要求书和说明书及附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请的具体实施方式中,涉及到用户信息(如第一对象信息等)相关的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
Claims (10)
1.一种数据处理方法,其特征在于,应用于区块链网络的第一服务器,所述第一服务器运行有可信执行环境,所述方法包括:
在接收到客户端针对目标数据的交易请求时,获取目标对象的第一对象信息,所述第一对象信息包括第一标识信息和第一授权码的摘要信息,所述第一授权码是通过所述客户端输入的;
调用所述可信执行环境基于所述目标对象的第一标识信息对所述第一授权码进行验证;
若验证通过,则调用所述可信执行环境基于所述目标对象的第一对象信息获取所述目标对象的私钥,并基于所述目标对象的私钥对所述目标数据进行签名。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到客户端针对目标对象的私钥创建请求时,获取所述目标对象的第二对象信息,所述第二对象信息包括第二标识信息和第二授权码的摘要信息;
调用所述可信执行环境的秘钥托管程序生成所述目标对象的公钥和私钥;
调用所述可信执行环境的秘钥托管程序对所述目标对象的私钥进行密封处理,得到所述目标对象的密封后的私钥;
将所述第二标识信息、所述第二授权码的摘要信息以及所述密封后的私钥绑定后存储到第一数据库中。
3.根据权利要求2所述的方法,其特征在于,所述调用所述可信执行环境的秘钥托管程序对所述目标对象的私钥进行密封处理,得到所述目标对象的密封后的私钥,包括:
调用所述可信执行环境的秘钥托管程序获取固化在所述第一服务器的处理器中的根秘钥;
调用所述秘钥托管程在所述可信执行环境中,基于所述根秘钥以及随机因子确定密封秘钥;
调用所述秘钥托管程在所述可信执行环境中,基于所述密封秘钥对所述目标对象的私钥进行密封处理,得到所述目标对象的密封后的私钥。
4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
建立所述第一服务器的可信执行环境与所述区块链网络的第二服务器的可信执行环境之间的可信安全通道;
利用所述可信安全通道将所述目标对象的第二标识信息、第二授权码的摘要信息以及私钥发送至所述第二服务器的可信执行环境,以使得所述第二服务器在通过调用秘钥托管程序得到所述目标对象的密封后的私钥之后,将所述第二标识信息、所述第二授权码的摘要信息以及所述密封后的私钥绑定后存储到第二数据库中。
5.根据权利要求1~3中任一项所述的方法,其特征在于,所述调用所述可信执行环境基于所述目标对象的第一标识信息对所述第一授权码进行验证,包括:
调用所述可信执行环境从标识信息与摘要信息之间的映射关系表中,获取所述目标对象的第一标识信息对应的第三授权码的摘要信息;
若所述第一授权码的摘要信息与所述第三授权码的摘要信息匹配,则确定对所述第一授权码验证通过。
6.根据权利要求1~3中任一项所述的方法,其特征在于,所述调用所述可信执行环境基于所述目标对象的第一对象信息获取所述目标对象的私钥,包括:
调用秘钥托管程序基于所述目标对象的第一对象信息,从所述可信执行环境的内存中获取所述目标对象的私钥;
若所述可信执行环境的内存中不存在所述目标对象的私钥,则调用秘钥托管程序基于所述目标对象的第一对象信息,从第一数据库中获取所述目标对象的密封后的私钥;
调用秘钥托管程序在所述可信执行环境中对所述目标对象的密封后的私钥进行解封处理,得到所述目标对象的私钥。
7.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
在接收到客户端针对目标对象的授权码更新请求时,获取所述目标对象的验证信息;
对所述目标对象的验证信息进行验证,若验证通过,则向所述客户端发送授权码更新指示;
接收所述客户端响应所述授权码更新指示发送的第四授权码的摘要信息;
将所述第二标识信息、所述第四授权码的摘要信息以及所述密封后的私钥绑定后更新到所述第一数据库中。
8.一种数据处理装置,其特征在于,所述装置包括:
获取单元,用于在接收到客户端针对目标数据的交易请求时,获取目标对象的第一对象信息,所述第一对象信息包括第一标识信息和第一授权码的摘要信息,所述第一授权码是通过所述客户端输入的;
处理单元,用于调用可信执行环境基于所述目标对象的第一标识信息对所述第一授权码进行验证;
所述处理单元,还用于若验证通过,则调用所述可信执行环境基于所述目标对象的第一对象信息获取所述目标对象的私钥,并基于所述目标对象的私钥对所述目标数据进行签名。
9.一种计算机设备,其特征在于,包括:处理器、网络接口和存储器,所述处理器、所述网络接口和所述存储器相互连接,其中,所述存储器存储有可执行程序代码,所述处理器用于调用所述可执行程序代码,执行如权利要求1-7中任一项所述的数据处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如权利要求1-7中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210373600.7A CN116938500A (zh) | 2022-04-11 | 2022-04-11 | 一种数据处理方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210373600.7A CN116938500A (zh) | 2022-04-11 | 2022-04-11 | 一种数据处理方法、装置、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116938500A true CN116938500A (zh) | 2023-10-24 |
Family
ID=88383271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210373600.7A Pending CN116938500A (zh) | 2022-04-11 | 2022-04-11 | 一种数据处理方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116938500A (zh) |
-
2022
- 2022-04-11 CN CN202210373600.7A patent/CN116938500A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230231711A1 (en) | Blockchain-implemented method and system | |
CN110519260B (zh) | 一种信息处理方法及信息处理装置 | |
CN110264200B (zh) | 区块链数据处理方法及装置 | |
CN111314172B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
CN110362357A (zh) | 一种应用程序的配置文件管理方法及装置 | |
CN105515783A (zh) | 身份认证方法、服务器及认证终端 | |
CN110570196A (zh) | 交易数据处理方法、装置、终端设备以及存储介质 | |
CN106936588B (zh) | 一种硬件控制锁的托管方法、装置及系统 | |
CN110247884B (zh) | 一种更新证书的方法、装置、系统及计算机可读存储介质 | |
CN113541970B (zh) | 分布式标识符的使用方法和分布式标识符使用系统 | |
CN113328997A (zh) | 联盟链跨链系统及方法 | |
CN112165382A (zh) | 软件授权方法、装置、授权服务端及终端设备 | |
CN111628863B (zh) | 一种数据签名的方法、装置、电子设备及存储介质 | |
CN116506134B (zh) | 数字证书管理方法、装置、设备、系统及可读存储介质 | |
CN117155549A (zh) | 密钥分发方法、装置、计算机设备和存储介质 | |
CN114584347A (zh) | 验证短信收发方法、服务器、终端及存储介质 | |
CN116938500A (zh) | 一种数据处理方法、装置、设备及计算机可读存储介质 | |
CN111935163B (zh) | 保护隐私的数据联合处理方法及装置 | |
CN111147477B (zh) | 一种基于区块链网络的验证方法及装置 | |
CN108282336A (zh) | 设备签名验证方法及装置 | |
CN116032494B (zh) | 数据交互方法、区块链预言机、设备及介质 | |
CN114499869B (zh) | 基于区块链的资源跨链交换方法、装置和计算机设备 | |
CN110555029B (zh) | 基于区块链的票务管理方法、装置及存储介质 | |
US20230142147A1 (en) | Network communication using proof of presence | |
CN117240582A (zh) | 基于mqtt协议扩展的安全增强认证方法、系统、介质及设备 |
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 |