资源交换处理方法、装置、设备及存储介质
文献发布时间:2023-06-19 11:29:13
技术领域
本发明涉及计算机技术领域,尤其涉及一种资源交换处理方法、装置、设备及存储介质。
背景技术
联邦学习是多个参与方联合进行机器学习任务,其中在合作当中某个或某些参与方希望可以互相交换一些非核心数据资源,例如日志、指标等,从而降低合作协调成本,提高合作效率。
但是,目前的联邦学习是由各个参与方共同建模,实现加密样本对齐、加密模型训练、效果激励的过程,为了保证各个参与方资源安全,并不支持参与联邦学习的各个参与方进行资源可信交换,进而无法降低合作协调成本,提高处理效率。
发明内容
本发明的主要目的在于提供一种资源交换处理方法、装置、设备及存储介质,旨在解决在现有的联邦学习中不支持参与联邦学习的各个参与方进行资源可信交换,进而无法降低合作协调成本,提高处理效率的问题。
为实现上述目的,本发明提供一种资源交换处理方法,包括:
接收用于表示资源发起方申请使用资源提供方提供的资源的请求消息,并将所述请求消息发送至所述资源提供方;
若接收到所述资源提供方发送的资源授权信息,则根据所述资源授权信息,生成目标资源授权凭证标识;
将所述目标资源授权凭证标识存储在公共区块链网络中,并通知所述资源发起方授权成功且将所述目标资源授权凭证标识对应的凭证内容发送至所述资源发起方;
根据所述目标资源授权凭证标识以及所述目标资源授权凭证标识对应的凭证内容,对接收到的所述资源发起方发送的待检验凭证内容进行校验,若校验成功,则允许所述资源发起方使用所述资源提供方提供的资源。
在一种可能的实现方式中,所述根据所述资源授权信息,生成目标资源授权凭证标识,包括:
若所述请求消息是所述资源发起方通过至少一个第三方发送的,则根据所述资源授权信息,生成各个所述第三方对应的凭证内容,并存储所述凭证内容;
根据各个所述第三方对应的凭证内容,生成各个所述第三方对应的凭证标识以及所述至少一个第三方对应的第一嵌套凭证标识,并将各个所述第三方对应的凭证标识存储至公共区块链网络中;
根据所述第一嵌套凭证标识以及所述资源发起方对应的所述资源授权信息,生成目标资源授权凭证标识。
在一种可能的实现方式中,所述生成各个所述第三方对应的凭证标识以及所述至少一个第三方对应的第一嵌套凭证标识,包括:
根据所述凭证内容,按照所述至少一个第三方发送所述请求消息的倒序顺序,遍历所述至少一个第三方,对于遍历到的每一第三方,执行下述步骤:
根据当前所述第三方对应的所述凭证内容,生成当前所述第三方对应的凭证标识,并将当前所述第三方对应的凭证标识存储至所述公共区块链网络中;
将当前所述第三方对应的凭证标识和上一个所述第三方对应的凭证标识生成当前所述第三方对应的嵌套凭证标识;
其中,所述倒序顺序为最后一个的第三方对应的嵌套凭证标识为所述第一嵌套凭证标识。
在一种可能的实现方式中,所述将所述目标资源授权凭证标识存储在公共区块链网络中,包括:
将所述目标资源授权凭证标识写入公共区块链网络中的资源提供方区块链节点,并同步存储至公共区块链网络的其他节点;
在所述公共区块链网络确认同步成功后,接收所述资源提供方区块链节点发送的用于表示授权成功的消息并发送所述用于表示授权成功的消息至所述资源提供方。
在一种可能的实现方式中,所述根据所述目标资源授权凭证标识以及所述目标资源授权凭证标识对应的凭证内容,对接收到的所述资源发起方发送的待检验凭证标识进行校验,包括:
从所述公共区块链网络中,获取所述目标资源授权凭证标识;
根据存储的所述目标资源授权凭证标识对应的凭证内容以及所述目标资源授权凭证标识,对所述待检验凭证标识进行校验。
在一种可能的实现方式中,所述目标资源授权凭证标识包括资源标识字段、授权站点字段、有效日期字段,所述目标资源授权凭证标识对应的凭证内容包括所述资源发起方的身份信息;
所述根据存储的所述目标资源授权凭证标识对应的凭证内容以及所述目标资源授权凭证标识,对所述待检验凭证内容进行校验,包括:
根据所述目标资源授权凭证标识对应的凭证内容中的资源发起方的身份信息,对所述待检验凭证内容中的身份信息进行校验;
若一致,则确定身份校验成功,并对所述待检验凭证内容进行哈希计算,生成待检验凭证标识,并根据所述目标资源授权凭证标识,对所述待检验凭证标识进行校验;
若校验成功,则对所述待检验凭证标识中各个字段表示的内容进行校验。
在一种可能的实现方式中,所述对所述待检验凭证标识中各个字段表示的的内容进行校验,包括:
将目标资源授权凭证标识中各个字段表示的内容与所述待检验凭证标识中各个字段表示的内容进行匹配;
若匹配成功,则确定所述资源发起方对应的资源权限校验成功,用以允许所述资源发起方使用所述资源提供方提供的资源。
本发明还提供一种资源交换处理装置,所述装置包括:
接收模块,用于接收用于表示资源发起方申请使用资源提供方提供的资源的请求消息,并将所述请求消息发送至所述资源提供方;
第一处理模块,用于在接收到所述资源提供方发送的资源授权信息时,根据所述资源授权信息,生成目标资源授权凭证标识;
第二处理模块,用于将所述目标资源授权凭证标识存储在公共区块链网络中,并通知所述资源发起方授权成功且将所述目标资源授权凭证标识对应的凭证内容发送至所述资源发起方;
第三处理模块,用于根据所述目标资源授权凭证标识以及所述目标资源授权凭证标识对应的凭证内容,对接收到的所述资源发起方发送的待检验凭证内容进行校验,若校验成功,则允许所述资源发起方使用所述资源提供方提供的资源。
本发明还提供一种资源交换处理设备,所述资源交换处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的资源交换处理程序,所述资源交换处理程序被所述处理器执行时实现如前述任一项所述的资源交换处理方法的步骤。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有资源交换处理程序,所述资源交换处理程序被处理器执行时实现如前述任一项所述的资源交换处理方法的步骤。
本发明还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如前述任一项所述的资源交换处理方法的步骤。
本发明中,首先接收用于表示资源发起方申请使用资源提供方提供的资源的请求消息,并将所述请求消息发送至所述资源提供方;若接收到所述资源提供方发送的资源授权信息,则根据所述资源授权信息,生成目标资源授权凭证标识;然后将所述目标资源授权凭证标识存储在公共区块链网络中,基于区块链的特性,保证了目标资源授权凭证标识存储永久性、可认证行、不可篡改性以及可追溯性,并通知所述资源发起方授权成功且将所述目标资源授权凭证标识对应的凭证内容(即目标资源授权凭证内容)发送至所述资源发起方;并根据所述目标资源授权凭证标识以及所述目标资源授权凭证内容,对接收到的所述资源发起方发送的待检验凭证内容进行校验,若校验成功,则允许所述资源发起方使用所述资源提供方提供的资源。基于区块链的存储永久性、不可篡改性以及可追溯性,将资源授权凭证标识记录在区块链中,在资源发起方申请使用或交换资源提供方提供的资源时,能够对其身份进行校验,在校验成功后允许所述资源发起方使用所述资源提供方提供的资源,支持参与联邦学习的各个参与方(比如资源发起方、资源提供方等)进行资源可信交换,能够降低合作协调成本,同时提高处理效率。
附图说明
图1为本发明实施例提供的一种资源交换处理方法的场景示意图;
图2为本发明实施例提供的一种资源交换处理方法的流程示意图;
图3为本发明实施例提供的多参与方资源可信交换的示意图;
图4为本发明实施例提供的另一种资源交换处理方法的流程示意图;
图5为本发明实施例提供的又一种资源交换处理方法的流程示意图;
图6为本发明实施例提供的一种资源交换处理装置的结构示意图;
图7为本发明实施例提供的一种资源交换处理设备的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在许多领域中,基于大数据的机器学习和模型训练等技术不断发展。通过对大数据的挖掘,可以得到许多有价值的信息。随着技术的发展,原始数据的来源越来越广泛,甚至会有跨领域联合。
在一些业务场景中,多个业务平台收集有各自的业务数据。这些业务数据很有价值,通常作为业务平台的隐私信息保存。各业务平台不期望与其他业务平台共享原始形式的业务数据。但在一些需求中,多个业务平台期望在不公开各方的业务数据的情况下进行协同计算,以提高业务处理能力。基于此,联邦机器学习等方式应运而生。
联邦机器学习(Federated Machine Learning),又称联邦学习(FederatedLearning),能够在数据不出本地的前提下,联合各方进行数据使用和协同建模,逐渐成为隐私保护计算中的一种常用方法。
目前,在现有的联邦学习中,由各个参与方共同建模,实现加密样本对齐、加密模型训练、效果激励的过程,为了保证各个参与方资源安全,并不支持参与联邦学习的各个参与方进行资源可信交换,进而无法降低合作协调成本,提高处理效率。
为了解决这一问题,本发明的技术构思是设计了若想实现基于联邦学习进行资源可信交换,资源发起方首先需要向资源提供方发送申请使用或交换资源的请求消息,通过资源提供方生成资源授权凭证标识并记录在区块链上,基于区块链的存储永久性以及不可篡改性、可追溯,来允许资源发起方凭借该凭证标识使用或交换资源提供方提供的资源,使得交互数据的多个参与方进行可信交换,因此,实现了在隐私保护下允许各个参与方进行数据资源的可信交换。
下面结合附图,对本发明的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
图1为本发明实施例提供的一种资源交换处理方法的场景示意图。本实施例的方法中的执行主体可以为资源交换处理设备,比如联邦学习的区块链系统(即FATE Chain系统),该FATE Chain系统可以是终端设备或是服务器,具有资源交换处理功能。
在实际应用中,参与联邦学习的各个参与方,比如资源发起方、资源提供方,其中,资源发起方也可以是资源提供方,同样,资源提供方也可以是资源发起方。以资源发起方申请使用资源提供方提供的资源为例,在资源交换处理过程中,当资源发起方想要使用或交换资源提供方提供的资源时,可以先向资源提供方发送用于表示资源发起方申请使用资源提供方提供的资源的请求消息,这里的请求消息可以包括资源授权请求,当资源提供方收到该请求消息时,可以将该请求消息中携带的资源授权信息(比如数据集授权信息:授权站点、数据集标识等)发送给FATE Chain系统,由FATE Chain系统基于资源授权信息生成资源授权凭证内容并存储,同时将资源授权凭证内容生成资源授权凭证标识,并将资源授权凭证标识记录在区块链中,使得资源授权凭证标识具有存储永久性、不可篡改性、可追溯、可认证等特性。当FATE Chain系统完成授权后,将该授权成功的消息发送至资源提供方,当资源发起方想要使用资源提供方提供的资源时,首先通过FATE Chain系统获取凭证标识,然后基于获取的凭证标识向资源提供方发送资源使用申请,此时,FATE Chain系统需要基于区块链上存储的凭证标识对资源发起方发送的凭证标识进行校验,若校验通过,则允许资源发起方使用或交换资源提供方提供的资源。
由于资源授权凭证标识记录在区块链,使得授权凭证标识不可篡改、可认证,并且资源交换通过区块链网络安全通道传输,具有多重加密方式保证资源不被窃取。
图2为本发明实施例提供的一种资源交换处理方法的流程示意图。本实施例中的方法可以通过软件、硬件或者软硬件结合的方式来实现。如图2所示,所述方法可以包括:
S201、接收用于表示资源发起方申请使用资源提供方提供的资源的请求消息,并将所述请求消息发送至所述资源提供方。
具体地,资源参与方可以直接向资源提供方发送请求消息,即进行资源可信交换的只有资源发起方以及资源提供方;资源参与方也可以通过至少一个第三方向资源提供方发送请求消息,即资源发起方不是直接从资源提供方获取资源的,而是通过至少一个第三方从资源提供方获取资源,然后资源发起方再从第三方获取资源提供方的资源,参见图3所示的多参与方资源可信交换的示意图,示例性的,一个资源发起方、一个资源提供方、三个第三方(第三方A、第三方B、第三方C)。
其中,FATE Chain系统可以直接接收资源发起方发送的用于表示资源发起方申请使用资源提供方提供的资源的请求消息,并将所述请求消息发送至所述资源提供方;还可以接收通过第三方发送的请求消息,并将所述请求消息发送至所述资源提供方。不同方式发送的请求消息的内容可能不同,即请求消息携带的资源授权信息可能不同。资源授权信息可以包括授权站点、资源标识等。
S202、若接收到所述资源提供方发送的资源授权信息,则根据所述资源授权信息,生成目标资源授权凭证标识。
具体地,资源提供方基于请求消息,向FATE Chain系统发送资源授权信息,当FATEChain系统接收到资源授权信息(比如授权站点、资源标识等)时,根据授权站点、资源标识等,生成相应的凭证内容,再对凭证内容进行哈希计算,生成凭证标识即目标资源授权凭证标识,其中,这里的凭证标识可以是凭证指纹或凭证虹膜等,在此不做具体限定。
S203、将所述目标资源授权凭证标识存储在公共区块链网络中,并通知所述资源发起方授权成功且将所述目标资源授权凭证标识发送至所述资源发起方。
具体地,为了保证凭证标识的存储永久性、不可篡改性、可追溯以及可认证性,FATE Chain系统可以将目标资源授权凭证标识存储在公共区块链网络中即区块链上,并将授权成功的消息以及目标资源授权凭证标识对应的凭证内容即目标资源授权凭证内容通过资源提供方发送给资源发起方,资源发起方向资源提供方获取资源的过程中,资源发起方能够根据自身获取的凭证内容进行建模配置,生成待校验凭证内容,等待被FATE Chain系统校验,只有校验成功,才允许资源发起方使用资源提供方提供的资源。
S204、根据所述目标资源授权凭证标识以及所述目标资源授权凭证标识对应的凭证内容,对接收到的所述资源发起方发送的待检验凭证内容进行校验,若校验成功,则允许所述资源发起方使用所述资源提供方提供的资源。
为了信息交换的安全性,由FATE Chain系统基于区块链上存储的凭证标识,对待校验凭证内容进行校验,这里的校验可以包括身份校验、凭证标识本身校验以及凭证内容校验等,只有均校验成功,则确定资源发起方授权认证成功,允许资源发起方使用资源提供方提供的资源。其中,校验的过程即资源交换行为记录在区块链,保证了行为记录不可篡改、可追溯、可审计,并且资源交换通过区块链网络安全通道传输,具有多重加密方式保证资源不被窃取。
本实施例提供的资源交换处理方法,首先接收用于表示资源发起方申请使用资源提供方提供的资源的请求消息,并将所述请求消息发送至所述资源提供方;若接收到所述资源提供方发送的资源授权信息,则根据所述资源授权信息,生成目标资源授权凭证标识;然后将所述目标资源授权凭证标识存储在公共区块链网络中,基于区块链的特性,保证了目标资源授权凭证标识存储永久性、可认证行、不可篡改性以及可追溯性,并通知所述资源发起方授权成功且将所述目标资源授权凭证标识对应的凭证内容发送至所述资源发起方;并根据所述目标资源授权凭证标识以及所述目标资源授权凭证标识对应的凭证内容,对接收到的所述资源发起方发送的待检验凭证内容进行校验,若校验成功,则允许所述资源发起方使用所述资源提供方提供的资源。基于区块链的存储永久性、不可篡改性以及可追溯性,将资源授权凭证指纹记录在区块链中,在资源发起方申请使用或交换资源提供方提供的资源时,能够对其身份进行校验,在校验成功后允许所述资源发起方使用所述资源提供方提供的资源,支持参与联邦学习的各个参与方(比如资源发起方、资源提供方等)进行资源可信交换,能够降低合作协调成本,同时提高处理效率。
可选的,本实施例在上述实施例的基础上,对S202进行了详细说明。根据所述资源授权信息,生成目标资源授权凭证标识,可以通过以下步骤实现:
步骤a1、若所述请求消息是所述资源发起方通过至少一个第三方发送的,则根据所述资源授权信息,生成各个所述第三方对应的凭证内容,并存储所述凭证内容;
步骤a2、根据各个所述第三方对应的凭证内容,生成各个所述第三方对应的凭证标识以及所述至少一个第三方对应的第一嵌套凭证标识,并将各个所述第三方对应的凭证标识存储至公共区块链网络中。
其中,生成各个所述第三方对应的凭证标识以及所述至少一个第三方对应的第一嵌套凭证标识,可以通过以下步骤实现:
根据所述凭证内容,按照所述至少一个第三方发送所述请求消息的倒序顺序,遍历所述至少一个第三方,对于遍历到的每一第三方,执行下述步骤:
步骤b1、根据当前所述第三方对应的所述凭证内容,生成当前所述第三方对应的凭证标识,并将当前所述第三方对应的凭证标识存储至所述公共区块链网络中;
步骤b2、将当前所述第三方对应的凭证标识和上一个所述第三方对应的凭证标识生成当前所述第三方对应的嵌套凭证标识;
其中,所述倒序顺序为最后一个的第三方对应的嵌套凭证标识为所述第一嵌套凭证标识。
步骤a3、根据所述第一嵌套凭证标识以及所述资源发起方对应的所述资源授权信息,生成目标资源授权凭证标识。
其中,若所述请求消息是所述资源发起方通过至少一个第三方发送的,结合图3所示,以三个第三方为例,首先资源提供方获取由第三方A发送的请求消息,通过数据系统获取第三方A的身份信息并获取第三方A对应的资源授权信息(包括授权站点A、资源标识A即将哪些资源可以授权给第三方A等),并脱敏,然后资源提供方将该第三方A对应的资源授权信息发送至FATE Chain系统生成凭证A,这里的凭证A可以是经过哈希计算得到的凭证A指纹,FATE Chain系统将凭证A指纹写入区块链网络上并通过资源提供方将凭证A发送至第三方A。其中,这里的凭证可以用于表示凭证标识,下述实施例不再赘述。这里的凭证标识可以是凭证指纹或凭证虹膜等,下述以凭证指纹为例。
当第三方A接收到由第三方B发送的请求消息时,获取第三方B的身份信息并获取第三方B对应的资源授权信息(包括授权站点B、资源标识B即将哪些资源可以授权给第三方B等),然后第三方A将该第三方B对应的资源授权信息发送至FATE Chain系统生成凭证B,这里的凭证B可以是经过哈希计算得到的凭证B指纹,FATE Chain系统将凭证B指纹写入区块链网络上并结合凭证A生成嵌套凭证B,第三方A将嵌套凭证B发送至第三方B。
当第三方B接收到由第三方C发送的请求消息时,获取第三方C的身份信息并获取第三方C对应的资源授权信息(包括授权站点C、资源标识C即将哪些资源可以授权给第三方B等),第三方B将该第三方C对应的资源授权信息发送至FATE Chain系统生成凭证C,这里的凭证C可以是经过哈希计算得到的凭证C指纹,FATE Chain系统将凭证C指纹写入区块链网络上并结合嵌套凭证B生成嵌套凭证C,第三方B将嵌套凭证C发送至第三方C。以三个第三方为例,这里的嵌套凭证C即为第一嵌套凭证。
以此类推,当第三方C接收到由资源发起方发送的请求消息时,获取资源发起方的身份信息并获取资源发起方对应的资源授权信息(包括授权站点1、资源标识1即将哪些资源可以授权给资源发起方等),第三方C将该资源发起方对应的资源授权信息发送至FATEChain系统生成凭证1,这里的凭证1可以是经过哈希计算得到的凭证1指纹,FATE Chain系统将凭证1指纹写入区块链网络上并结合嵌套凭证C生成嵌套凭证1(即目标资源授权凭证标识)。当资源发起方申请资源交换时,通过区块链网络的安全信道,从区块链网络上获取目标资源授权凭证标识,对资源发起方发送的凭证内容进行校验,如果校验成功,则允许所述资源发起方使用所述资源提供方提供的资源,并将该资源交换行为存证在区块链网络中,保证行为记录不可篡改、可追溯、可审计。
此外,如果没有第三方,由资源发起方直接向资源提供方申请资源交换时,生成凭证标识的过程可以参见资源提供方获取由第三方A发送的请求消息对应的生成凭证标识的过程,生成的凭证标识直接为目标资源凭证标识,而不是嵌套凭证标识,在此不再赘述。
可选的,在生成目标资源授权凭证标识后,为了保证授权凭证标识不可篡改、可认证,可以将目标资源授权凭证标识存储在公共区块链网络中,可以通过以下步骤实现:
步骤c1、将所述目标资源授权凭证标识写入公共区块链网络中的资源提供方区块链节点,并同步存储至公共区块链网络的其他节点;
步骤c2、在所述公共区块链网络确认同步成功后,接收所述资源提供方区块链节点发送的用于表示授权成功的消息并发送所述用于表示授权成功的消息至所述资源提供方。
其中,FATE Chain系统可以包括资源发起方区块链系统(即FATE Chain(A))和资源提供方区块链系统(即FATE Chain(B))。
具体地,结合图4所示,图4为本发明实施例提供的另一种资源交换处理方法的流程示意图。授权资源的过程(包括凭证标识存储的过程)为:
以授权数据集为例(比如,这里的资源指数据集),资源提供方通过上层管理系统(比如数据系统,即FATE Studio(A))将数据集授权信息发送给FATE Chain(A),FATE Chain(A)根据获取到的数据集授权信息:授权站点、数据集标识等生成凭证内容,对凭证内容进行哈希计算生成凭证标识(即目标资源授权凭证标识),并写入凭证hash(即凭证散列)到资源提供方的区块链节点上(即Block Chain Node(A)),Block Chain Node(A)将凭证hash共识同步至公共区块链网络中的其他节点上,即凭证hash记录在区块链上。
当记录在公共区块链网络之后,公共区块链网络将同步成功的消息发送至资源提供方的区块链节点,然后由资源提供方的区块链节点发送授权完成的消息给FATE Chain(A),FATE Chain(A)再将授权成功的消息发送至FATE Studio(A),完成授权。
可选的,如何对凭证进行校验,可以通过以下步骤实现:
步骤d1、从所述公共区块链网络中,获取所述目标资源授权凭证标识。
步骤d2、根据存储的所述目标资源授权凭证标识对应的凭证内容以及所述目标资源授权凭证标识,对所述待检验凭证标识进行校验。
其中,资源提供方将目标资源授权凭证内容发送给资源发起方后,当资源发起方在申请资源交换的过程中,为了保证数据的可信交换,避免资源发起方申请错误资源或是授权以外的资源,需要对资源发起方发送的凭证内容(即待检验凭证内容)进行校验即对其资源权限进行校验,若校验成功,则允许该资源发起方使用该资源提供方提供的资源。
可选的,所述目标资源授权凭证标识包括资源标识字段、授权站点字段、有效日期字段,所述目标资源授权凭证标识对应的凭证内容包括所述资源发起方的身份信息;如何基于以上信息即目标资源授权凭证标识以及凭证内容,对所述待检验凭证内容进行校验,可以通过以下步骤实现:
步骤e1、根据所述目标资源授权凭证标识对应的凭证内容中的资源发起方的身份信息,对所述待检验凭证内容中的身份信息进行校验;
步骤e2、若一致,则确定身份校验成功,并对所述待检验凭证内容进行哈希计算,生成待检验凭证标识,并根据所述目标资源授权凭证标识,对所述待检验凭证标识进行校验;
步骤e3、若校验成功,则对所述待检验凭证标识中各个字段表示的内容进行校验。
其中,对所述待检验凭证标识中各个字段表示的内容进行校验,可以通过以下步骤实现:
步骤f1、将目标资源授权凭证标识中各个字段表示的内容与所述待检验凭证标识中各个字段表示的内容进行匹配;
步骤f2、若匹配成功,则确定所述资源发起方对应的资源权限校验成功,用以允许所述资源发起方使用所述资源提供方提供的资源。
具体地,结合图5所示,图5为本发明实施例提供的又一种资源交换处理方法的流程示意图。校验资源权限的过程为(包括身份校验、凭证标识hash校验以及凭证标识内容校验):
以目标资源授权凭证标识为数据集凭证为例(比如,这里的资源指数据集),资源发起方通过建模系统中的资源发起方建模系统(即FATE Flow(B))从发起方区块链系统(即FATE Chain(B))中获取数据集凭证(即数据集凭证内容),FATE Chain(B)将数据集凭证返回至FATE Flow(B),然后通过建模系统进行用于联邦学习的建模,建模信息可以包括建模凭证(即建模凭证内容),这里的建模凭证可以包括配置信息、调度命令、数据集等,建模系统将建模信息通过FATE Chain(B)发送给建模系统中的资源提供方建模系统(即FATE Flow(A)),FATE Flow(A)将建模信息发送至FATE Chain(A),由FATE Chain(A)基于区块链对建模信息进行校验。
具体地,FATE Chain(A)发送校验身份的消息至数据提供方区块链节点,通过在数据提供方区块链节点上记录的资源发起方对应的目标资源授权凭证标识对应的资源发起方的身份信息,比如身份ID,对资源发起方进行身份校验,若建模凭证中的身份ID与目标资源授权凭证标识中的资源发起方的身份ID一致,说明该资源权限是授予该资源发起方的,即身份通过,并将身份通过的消息返回给FATE Chain(A);FATE Chain(A)继续对凭证散列(即凭证标识)校验,即通过从区块链节点上记录的凭证散列与建模凭证对应的凭证散列进行比对,比如,对凭证散列中包括的各个字段类别进行比对,即检验是否均含有资源标识字段、授权站点字段、有效日期字段等信息,若一致,说明凭证hash校验通过;当身份和凭证hash均通过后,FATE Chain(A)将校验通过的消息发送给FATE Flow(A),FATE Flow(A)根据建模凭证内容与建模配置匹配校验,即对存储在FATE Chain系统中的凭证内容与建模凭证的内容进行比对,若一致,则确定匹配校验成功即资源权限校验成功。还可以将匹配校验成功的消息通过FATE Chain(B)发送至FATE Flow(B),完成资源权限的校验,进而可以执行资源发起方需要的该权限,比如配合完成建模。
因此,本发明中,当资源发起方申请使用资源或申请资源交换时,通过资源提供方生成资源授权凭证内容,并基于凭证内容生成凭证标识,并将资源授权凭证标识记录在区块链,保证授权凭证标识不可篡改、可认证;在进行资源交换的过程中,将资源交换行为记录在区块链,保证行为记录不可篡改、可追溯、可审计;并且资源交换通过区块链网络安全通道传输,具有多重加密方式保证资源不被窃取。因此,基于区块链的存储永久性、不可篡改性以及可追溯性,将资源授权凭证标识记录在区块链中,在资源发起方申请使用或交换资源提供方提供的资源时,能够根据所述目标资源授权凭证标识以及所述目标资源授权凭证标识对应的凭证内容,对其身份进行校验,在校验成功后允许所述资源发起方使用所述资源提供方提供的资源,支持参与联邦学习的各个参与方(比如资源发起方、资源提供方等)进行资源可信交换,能够降低合作协调成本,同时提高处理效率。
图6为本发明实施例提供的一种资源交换处理装置的结构示意图。如图6所示,所述装置可以包括:
接收模块601,用于接收用于表示资源发起方申请使用资源提供方提供的资源的请求消息,并将所述请求消息发送至所述资源提供方;
第一处理模块602,用于在接收到所述资源提供方发送的资源授权信息时,根据所述资源授权信息,生成目标资源授权凭证标识;
第二处理模块603,用于将所述目标资源授权凭证标识存储在公共区块链网络中,并通知所述资源发起方授权成功且将所述目标资源授权凭证标识对应的凭证内容发送至所述资源发起方;
第三处理模块604,用于根据所述目标资源授权凭证标识以及所述目标资源授权凭证标识对应的凭证内容,对接收到的所述资源发起方发送的待检验凭证内容进行校验,若校验成功,则允许所述资源发起方使用所述资源提供方提供的资源。
本实施例提供的资源交换处理装置,配置了接收模块601、第一处理模块602、第二处理模块603以及第三处理模块604,用于接收用于表示资源发起方申请使用资源提供方提供的资源的请求消息,并将所述请求消息发送至所述资源提供方;若接收到所述资源提供方发送的资源授权信息,则根据所述资源授权信息,生成目标资源授权凭证标识;然后将所述目标资源授权凭证标识存储在公共区块链网络中,基于区块链的特性,保证了目标资源授权凭证标识存储永久性、可认证行、不可篡改性以及可追溯性,并通知所述资源发起方授权成功且将所述目标资源授权凭证标识对应的凭证内容(即目标资源授权凭证内容)发送至所述资源发起方;并根据所述目标资源授权凭证标识以及所述目标资源授权凭证内容,对接收到的所述资源发起方发送的待检验凭证内容进行校验,若校验成功,则允许所述资源发起方使用所述资源提供方提供的资源。基于区块链的存储永久性、不可篡改性以及可追溯性,将资源授权凭证标识记录在区块链中,在资源发起方申请使用或交换资源提供方提供的资源时,能够对其身份进行校验,在校验成功后允许所述资源发起方使用所述资源提供方提供的资源,支持参与联邦学习的各个参与方(比如资源发起方、资源提供方等)进行资源可信交换,能够降低合作协调成本,同时提高处理效率。
本实施例提供的资源交换处理装置,可以用于执行前述任一方法实施例提供的技术方案,其实现原理和技术效果类似,在此不再赘述。
在一种可能的实现方式中,所述第一处理模块,包括第一处理单元、第二处理单元以及第三处理单元;第一处理单元,用于若所述请求消息是所述资源发起方通过至少一个第三方发送的,则根据所述资源授权信息,生成各个所述第三方对应的凭证内容,并存储所述凭证内容;第二处理单元,用于根据各个所述第三方对应的凭证内容,生成各个所述第三方对应的凭证标识以及所述至少一个第三方对应的第一嵌套凭证标识,并将各个所述第三方对应的凭证标识存储至公共区块链网络中;第三处理单元,用于根据所述第一嵌套凭证标识以及所述资源发起方对应的所述资源授权信息,生成目标资源授权凭证标识。
在一种可能的实现方式中,所述第二处理单元,具体用于:
根据所述凭证内容,按照所述至少一个第三方发送所述请求消息的倒序顺序,遍历所述至少一个第三方,对于遍历到的每一第三方,执行下述步骤:
根据当前所述第三方对应的所述凭证内容,生成当前所述第三方对应的凭证标识,并将当前所述第三方对应的凭证标识存储至所述公共区块链网络中;
将当前所述第三方对应的凭证标识和上一个所述第三方对应的凭证标识生成当前所述第三方对应的嵌套凭证标识;
其中,所述倒序顺序为最后一个的第三方对应的嵌套凭证标识为所述第一嵌套凭证标识。
在一种可能的实现方式中,所述第二处理模块,还具体用于:
将所述目标资源授权凭证标识写入公共区块链网络中的资源提供方区块链节点,并同步存储至公共区块链网络的其他节点;
在所述公共区块链网络确认同步成功后,接收所述资源提供方区块链节点发送的用于表示授权成功的消息并发送所述用于表示授权成功的消息至所述资源提供方。
在一种可能的实现方式中,第三处理模块,包括第四处理单元和第五处理单元;第四处理单元,用于从所述公共区块链网络中,获取所述目标资源授权凭证标识;第五处理单元,用于根据存储的所述目标资源授权凭证标识对应的凭证内容以及所述目标资源授权凭证标识,对所述待检验凭证标识进行校验。
在一种可能的实现方式中,所述目标资源授权凭证标识包括资源标识字段、授权站点字段、有效日期字段,所述目标资源授权凭证标识对应的凭证内容包括所述资源发起方的身份信息;第五处理单元,具体用于:
根据所述目标资源授权凭证标识对应的凭证内容中的资源发起方的身份信息,对所述待检验凭证内容中的身份信息进行校验;
若一致,则确定身份校验成功,并对所述待检验凭证内容进行哈希计算,生成待检验凭证标识,并根据所述目标资源授权凭证标识,对所述待检验凭证标识进行校验;
若校验成功,则对所述待检验凭证标识中各个字段表示的内容进行校验。
在一种可能的实现方式中,第五处理单元,具体用于:
将目标资源授权凭证标识中各个字段表示的内容与所述待检验凭证标识中各个字段表示的内容进行匹配;
若匹配成功,则确定所述资源发起方对应的资源权限校验成功,用以允许所述资源发起方使用所述资源提供方提供的资源。
前述任一实施例提供的资源交换处理装置,用于执行前述任一方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。
图7为本发明实施例提供的一种资源交换处理设备的结构示意图。如图7所示,所述设备可以包括:存储器701、处理器702及存储在所述存储器701上并可在所述处理器702上运行的资源交换处理程序,所述资源交换处理程序被所述处理器702执行时实现如前述任一实施例所述的资源交换处理方法的步骤。
可选地,存储器701既可以是独立的,也可以跟处理器702集成在一起。
本实施例提供的设备的实现原理和技术效果可以参见前述各实施例,此处不再赘述。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有资源交换处理程序,所述资源交换处理程序被处理器执行时实现如前述任一实施例所述的资源交换处理方法的步骤。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本发明各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(Central Processing Unit,简称CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
本发明还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本发明任一实施例提供的方法。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
- 资源交换处理方法、装置、设备及存储介质
- 一种资源处理方法、装置、资源处理设备及存储介质