基于可信执行环境的数据处理方法、装置、设备及介质制造方法及图纸

技术编号:39292807 阅读:7 留言:0更新日期:2023-11-07 11:00
本申请公开了一种基于可信执行环境的数据处理方法、装置、设备及介质,方法包括:获取目标客户端发送的远程认证请求,基于远程认证请求对可信执行环境进行远程认证,且在远程认证成功时与目标客户端建立通信连接;基于通信连接获取目标客户端发送的第一授权申请请求;基于第一授权申请请求中的授权签名信息对业务对象进行身份校验,且在身份校验成功时向目标客户端返回授权信息;接收目标客户端基于授权信息发送的令牌申请请求,将授权信息录入可信执行环境中的对象管理本地合约,通过对象管理本地合约对授权信息进行授权验证,且在授权验证成功时向目标客户端返回第一访问令牌。采用本申请,可以实现无需信任的去中心化安全身份验证服务。份验证服务。份验证服务。

【技术实现步骤摘要】
基于可信执行环境的数据处理方法、装置、设备及介质


[0001]本申请涉及区块链
,尤其涉及一种基于可信执行环境的数据处理方法、装置、设备及介质。

技术介绍

[0002]为了实现安全可靠的资源共享,出现了许多用于提供用户身份验证的授权机制。例如,OAuth2(即Open Authorization 2.0)是目前被广泛使用的一种授权机制,允许用户(即业务对象)授权第三方应用(或网站)获取相关资源数据,而不需要将用户账号和密码提供给第三方应用或者分享用户资源数据的所有内容。
[0003]专利技术人在实践中发现,现有的OAuth2登录方式均指向一个中心化的对象身份管理系统,例如,当用户A确认授权第三方应用(例如,应用B)访问其存储在另外的服务提供商上的有限资源数据时,用户A可以通过该服务提供商的身份验证服务器(例如,服务器C)登录应用B,随后应用B可以通过获得的授权向该服务提供商的资源服务器(例如,服务器D)申请获取相应的资源数据。可以理解,在此过程中需要用户高度信任服务提供商,即登录服务和信任源高度耦合,而由于服务提供商始终存在作恶的风险,易导致中心化身份管理出现不可信问题,从而难以确保对象身份管理系统的安全性和可靠性。

技术实现思路

[0004]本申请实施例提供了一种基于可信执行环境的数据处理方法、装置、设备及介质,通过将可信执行环境和区块链进行结合,可以实现无需信任的去中心化安全身份验证服务,且可以提升对象身份管理系统的安全性和可靠性。
[0005]本申请实施例一方面提供了一种基于可信执行环境的数据处理方法,方法由业务网络中的业务节点执行,业务节点运行在可信执行环境中,方法包括:
[0006]获取目标客户端发送的远程认证请求,基于远程认证请求对业务节点的可信执行环境进行远程认证,且在远程认证成功时,与目标客户端建立通信连接;
[0007]基于通信连接获取目标客户端发送的第一授权申请请求;第一授权申请请求中携带业务对象的授权签名信息;授权签名信息为目标客户端所访问的业务前端中的业务对象的签名信息;
[0008]基于授权签名信息对业务对象进行身份校验,且在身份校验成功时,向目标客户端返回授权信息;
[0009]接收目标客户端基于授权信息发送的令牌申请请求,将令牌申请请求中的授权信息录入可信执行环境中的对象管理本地合约,通过对象管理本地合约对授权信息进行授权验证,且在授权验证成功时,向目标客户端返回第一访问令牌;第一访问令牌用于通过对象管理本地合约从核心共识网络中的区块链上获取与业务对象相关联的业务资源数据;核心共识网络独立于业务网络。
[0010]本申请实施例一方面提供了一种基于可信执行环境的数据处理方法,方法由目标
客户端执行,与目标客户端相关联的业务网络中的业务节点运行在可信执行环境中,方法包括:
[0011]向业务节点发送远程认证请求;远程认证请求用于指示业务节点对可信执行环境进行远程认证,且在远程认证成功时,与目标客户端建立通信连接;
[0012]基于通信连接向业务节点发送第一授权申请请求;第一授权申请请求中携带业务对象的授权签名信息;授权签名信息为目标客户端所访问的业务前端中的业务对象的签名信息;授权签名信息用于指示业务节点对业务对象进行身份校验,且在身份校验成功时,向目标客户端返回授权信息;
[0013]基于授权信息生成令牌申请请求,将令牌申请请求发送至业务节点,以使业务节点将令牌申请请求中的授权信息录入可信执行环境中的对象管理本地合约;对象管理本地合约用于对授权信息进行授权验证,且在授权验证成功时,用于指示业务节点向目标客户端返回第一访问令牌;第一访问令牌用于通过对象管理本地合约从核心共识网络中的区块链上获取与业务对象相关联的业务资源数据;核心共识网络独立于业务网络。
[0014]本申请实施例一方面提供了一种基于可信执行环境的数据处理装置,装置运行在业务网络中的业务节点中,业务节点运行在可信执行环境中,装置包括:
[0015]远程认证模块,用于获取目标客户端发送的远程认证请求,基于远程认证请求对业务节点的可信执行环境进行远程认证,且在远程认证成功时,与目标客户端建立通信连接;
[0016]请求获取模块,用于基于通信连接获取目标客户端发送的第一授权申请请求;第一授权申请请求中携带业务对象的授权签名信息;授权签名信息为目标客户端所访问的业务前端中的业务对象的签名信息;
[0017]身份校验模块,用于基于授权签名信息对业务对象进行身份校验,且在身份校验成功时,向目标客户端返回授权信息;
[0018]令牌发放模块,用于接收目标客户端基于授权信息发送的令牌申请请求,将令牌申请请求中的授权信息录入可信执行环境中的对象管理本地合约,通过对象管理本地合约对授权信息进行授权验证,且在授权验证成功时,向目标客户端返回第一访问令牌;第一访问令牌用于通过对象管理本地合约从核心共识网络中的区块链上获取与业务对象相关联的业务资源数据;核心共识网络独立于业务网络。
[0019]其中,核心共识网络中的区块链上部署有用于管理可信执行环境的可信环境管理合约;
[0020]远程认证模块包括:
[0021]信息获取单元,用于基于远程认证请求获取与可信执行环境相关联的待验证关键信息,通过与业务节点相关联的中继服务设备向远程认证服务器发送待验证关键信息,以使远程认证服务器基于待验证关键信息对可信执行环境进行有效性验证,且在有效性验证成功时,向中继服务设备返回认证验证报告;
[0022]度量值获取单元,用于在接收到中继服务设备基于认证验证报告返回的认证成功响应信息时,确定可信执行环境为安全环境,且获取作为安全环境的可信执行环境中所部署的可信应用的应用度量值作为本地应用度量值;通过可信执行环境中的对象管理本地合约,将从区块链上的可信环境管理合约中获取到的可信应用对应的应用度量值作为目标应
用度量值;
[0023]度量值比对单元,用于将本地应用度量值与目标应用度量值进行比对,且在本地应用度量值与目标应用度量值比对一致时,确定可信执行环境远程认证成功,与目标客户端建立通信连接。
[0024]其中,第一授权申请请求中包含业务对象的授权签名信息、业务对象的对象公钥信息以及业务对象的对象身份标识;授权签名信息是在业务对象通过业务前端进行登录操作时,由与业务对象相关联的对象密钥管理工具通过对象公钥信息对应的对象私钥信息,对目标客户端发起的第二授权申请请求进行签名后所得到的;第二授权申请请求为第一授权申请请求之前的授权申请请求;对象公钥信息和对象私钥信息均由对象密钥管理工具所确定;可信执行环境中构建有对象登录凭证数据库;对象登录凭证数据库用于存储从区块链上的对象管理合约中同步来的注册对象的对象注册信息,注册对象的对象注册信息中包含注册对象的身份标识;
[0025]身份校验模块包括:
[0026]签名验证单元,用于从第一授权申请请求中获取授权签名信息和对象公钥信息,通过对象公钥信息对对象本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于可信执行环境的数据处理方法,其特征在于,所述方法由业务网络中的业务节点执行,所述业务节点运行在所述可信执行环境中,所述方法包括:获取目标客户端发送的远程认证请求,基于所述远程认证请求对所述业务节点的所述可信执行环境进行远程认证,且在远程认证成功时,与所述目标客户端建立通信连接;基于所述通信连接获取所述目标客户端发送的第一授权申请请求;所述第一授权申请请求中携带业务对象的授权签名信息;所述授权签名信息为所述目标客户端所访问的业务前端中的所述业务对象的签名信息;基于所述授权签名信息对所述业务对象进行身份校验,且在身份校验成功时,向所述目标客户端返回授权信息;接收所述目标客户端基于所述授权信息发送的令牌申请请求,将所述令牌申请请求中的所述授权信息录入所述可信执行环境中的对象管理本地合约,通过所述对象管理本地合约对所述授权信息进行授权验证,且在授权验证成功时,向所述目标客户端返回第一访问令牌;所述第一访问令牌用于通过所述对象管理本地合约从核心共识网络中的区块链上获取与所述业务对象相关联的业务资源数据;所述核心共识网络独立于所述业务网络。2.根据权利要求1所述的方法,其特征在于,所述核心共识网络中的区块链上部署有用于管理所述可信执行环境的可信环境管理合约;所述基于所述远程认证请求对所述业务节点的所述可信执行环境进行远程认证,且在远程认证成功时,与所述目标客户端建立通信连接,包括:基于所述远程认证请求获取与所述可信执行环境相关联的待验证关键信息,通过与所述业务节点相关联的中继服务设备向远程认证服务器发送所述待验证关键信息,以使所述远程认证服务器基于所述待验证关键信息对所述可信执行环境进行有效性验证,且在有效性验证成功时,向所述中继服务设备返回认证验证报告;在接收到所述中继服务设备基于所述认证验证报告返回的认证成功响应信息时,确定所述可信执行环境为安全环境,且获取作为所述安全环境的所述可信执行环境中所部署的可信应用的应用度量值作为本地应用度量值;通过所述可信执行环境中的对象管理本地合约,将从所述区块链上的所述可信环境管理合约中获取到的所述可信应用对应的应用度量值作为目标应用度量值;将所述本地应用度量值与所述目标应用度量值进行比对,且在所述本地应用度量值与所述目标应用度量值比对一致时,确定所述可信执行环境远程认证成功,与所述目标客户端建立通信连接。3.根据权利要求1所述的方法,其特征在于,所述第一授权申请请求中包含所述业务对象的所述授权签名信息、所述业务对象的对象公钥信息以及所述业务对象的对象身份标识;所述授权签名信息是在所述业务对象通过所述业务前端进行登录操作时,由与所述业务对象相关联的对象密钥管理工具通过所述对象公钥信息对应的对象私钥信息,对所述目标客户端发起的第二授权申请请求进行签名后所得到的;所述第二授权申请请求为所述第一授权申请请求之前的授权申请请求;所述对象公钥信息和所述对象私钥信息均由所述对象密钥管理工具所确定;所述可信执行环境中构建有对象登录凭证数据库;所述对象登录凭证数据库用于存储从所述区块链上的对象管理合约中同步来的注册对象的对象注册信息,所述注册对象的对象注册信息中包含所述注册对象的身份标识;
所述基于所述授权签名信息对所述业务对象进行身份校验,且在身份校验成功时,向所述目标客户端返回授权信息,包括:从所述第一授权申请请求中获取所述授权签名信息和所述对象公钥信息,通过所述对象公钥信息对所述对象签名信息进行签名验证,得到签名验证结果;在所述签名验证结果指示签名验证成功时,通过所述可信执行环境中的对象管理本地合约,在所述注册对象的对象注册信息中查找与所述对象身份标识相同的身份标识,且在查找到与所述对象身份标识相同的身份标识时,确定所述业务对象为所述注册对象,将所述业务对象为所述注册对象时的身份校验成功结果作为身份校验结果;基于所述身份校验结果向所述目标客户端返回授权信息。4.根据权利要求3所述的方法,其特征在于,所述基于所述身份校验结果向所述目标客户端返回授权信息,包括:在所述身份校验结果指示身份校验成功时,通过所述对象管理本地合约将所述业务对象的业务状态配置为业务登录状态,且基于所述业务登录状态为所述目标客户端配置第一授权有效时长和第一访问权限范围;基于所述第一授权有效时长和所述第一访问权限范围为所述目标客户端配置授权码,通过所述可信执行环境的硬件私钥信息对所述授权码进行签名,得到硬件签名信息;获取所述硬件私钥信息对应的硬件公钥信息,对所述授权码、所述硬件签名信息以及所述硬件公钥信息进行数据映射,得到第一授权信息,将所述第一授权信息返回至所述目标客户端。5.根据权利要求4所述的方法,其特征在于,所述接收所述目标客户端基于所述授权信息发送的令牌申请请求,将所述令牌申请请求中的所述授权信息录入所述可信执行环境中的对象管理本地合约,通过所述对象管理本地合约对所述授权信息进行授权验证,且在授权验证成功时,向所述目标客户端返回第一访问令牌,包括:通过所述可信执行环境中的令牌发放服务接口接收所述目标客户端基于所述第一授权信息发送的第一令牌申请请求;所述第一令牌申请请求是所述目标客户端在通过所述第一授权信息中的所述硬件公钥信息对所述硬件签名信息验签成功时,基于所述第一授权信息所确定的;将所述第一令牌申请请求中的所述第一授权信息录入所述可信执行环境中的所述对象管理本地合约,且将所述第一授权信息中携带的授权码作为待验证授权码;通过所述对象管理本地合约从所述待验证授权码中获取第一待验证时长和第一待验证权限范围,将所述待验证授权码、所述第一待验证时长以及所述第一待验证权限范围作为第一请求信息;将从所述可信执行环境中获取到的为所述目标客户端配置的所述授权码、所述第一授权有效时长以及所述第一访问权限范围作为第一授权数据信息,将所述第一请求信息和所述第一授权数据信息进行比对;若所述第一请求信息和所述第一授权数据信息比对一致,则确定所述第一授权信息授权验证成功,基于所述第一授权信息向所述目标客户端返回第一访问令牌。6.根据权利要求3所述的方法,其特征在于,所述基于所述身份校验结果向所述目标客户端返回授权信息,包括:
在所述身份校验结果指示身份校验成功时,通过所述对象管理本地合约将所述业务对象的业务状态配置为业务登录状态,且基于所述业务登录状态为所述目标客户端配置第二授权有效时长和第二访问权限范围;基于所述可信执行环境的硬件公钥信息对所述第二授权有效时长和所述第二访问权限范围进行加密处理,得到第二授权信息,将所述第二授权信息返回至所述目标客户端。7.根据权利要求6所述的方法,其特征在于,所述接收所述目标客户端基于所述授权信息发送的令牌申请请求,将所述令牌申请请求中的所述授权信息录入所述可信执行环境中的对象管理本地合约,通过所述对象管理本地合约对所述授权信息进行授权验证,且在授权验证成功时,向所述目标客户端返回第一访问令牌,包括:通过所述可信执行环境中的令牌发放服务接口接收所述目标客户端基于所述第二授权信息发送的第二令牌申请请求;将所述第二令牌申请请求中的所述第二授权信息录入所述可信执行环境中的所述对象管理本地合约,通过所述对象管理本地合约调用所述可信执行环境的硬件私钥信息对所述第二授权信息进行解密处理,得到第二待验证时长和第二待验证权限范围,且将解密得到的所述第二待验证时长和所述第二待验证权限范围作为第二请求信息;将从所述可信执行环境中获取到的为所述目标客户端配置的所述第二授权有效时长和所述第二访问权限范围作为第二授权数据信息,将所述第二请求信息和所述第二授权数据信息进行比对;若所述第二请求信息和所述第二授权数据信息比对一致,则确定所述第二授权信息授权验证成功,基于所述第二授权信息向所述目标客户端返回第一访问令牌。8.根据权利要求1所述的方法,其特征在于,所述授权信息包含为所述目标客户端配置的授权有效时长和访问权限范围;所述第一访问令牌是在所述授权信息授权验证成功时,由所述可信执行环境中的令牌发放服务接口基于所述授权信息中的所述授权有效时长和所述访问权限范围所确定的访问令牌;所述授权有效时长用于确定所述第一访问令牌对应的令牌有效时长;所述授权有效时长大于或等于所述令牌有效时长;所述访问权限范围用于确定所述第一访问令牌对应的业务访问权限;所述业务访问权限为位于所述访问权限范围内的访问权限。9.根据权利要求1所述的方法,其特征在于,还包括:接收所述目标客户端基于所述第一访问令牌发送的业务资源访问请求,将所述业务资源访问请求中的所述第一访问令牌录入所述对象管理本地合约,通过所述对象管理本地合约对所述第一访问令牌进行合法性验证,得到合法性验证结果;在所述合法性验证指示所述第一访问令牌为合法令牌时,通过所述对象管理本地合约从存储在所述可信执行环境的资源数据中获取作为所述合法令牌的所述第一访问令牌所请求的资源数...

【专利技术属性】
技术研发人员:朱耿良
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1