1.基于区块链的多方计算方法,其特征在于,由参与方设备执行,所述方法包括:
对业务数据进行加密得到业务数据密文;
对所述业务数据密文进行哈希处理,得到业务数据哈希结果;
向区块链节点发送所述业务数据哈希结果,以指示所述区块链节点将所述业务数据哈希结果写入区块链中;
向目标服务器中目标可信计算模块发送所述业务数据密文,用于指示所述目标可信计算模块根据所述业务数据密文和区块链中的业务数据哈希结果进行多方计算。
2.根据权利要求1所述的方法,其特征在于,对业务数据进行加密得到业务数据密文之前,还包括:
通过与所述目标可信计算模块进行交互,确定目标随机数;
采用所述目标随机数对密钥进行加密,得到密钥密文;
向所述目标可信计算模块发送所述密钥密文,用于指示所述目标可信计算模块采用所述目标随机数对所述密钥密文进行解密得到密钥;
相应地,对业务数据进行加密得到业务数据密文,包括:
采用密钥对所述业务数据进行加密,得到业务数据密文。
3.根据权利要求1所述的方法,其特征在于,向目标服务器中目标可信计算模块发送所述业务数据密文之前,还包括:
向区块链节点发送服务器选择请求,其中,所述服务器选择请求包括需要的目标可信算法信息;
从区块链节点获取支持目标可信算法的候选服务器注册信息;
根据所述候选服务器注册信息,从候选服务器中选择所述目标服务器。
4.根据权利要求3所述的方法,其特征在于,根据所述候选服务器注册信息,从候选服务器中选择所述目标服务器,包括:
向可信计算验证方发送所述候选服务器的可信环境验证请求,其中所述可信环境验证请求包括所述候选服务器注册信息,以指示所述可信计算验证方对候选服务器进行可信环境验证;
从通过可信环境验证的候选服务器中选择所述目标服务器。
5.根据权利要求2所述的方法,其特征在于,向目标服务器中目标可信计算模块发送所述业务数据密文之后,还包括:
从所述目标可信计算模块获取多方计算结果密文,其中,所述多方计算结果密文采用目标随机数对多方计算结果进行加密得到;
采用所述目标随机数对所述多方计算结果密文进行解密,得到多方计算结果。
6.基于区块链的多方计算方法,其特征在于,由服务器执行,所述方法包括:
接收参与方设备发送的业务数据密文,其中所述业务数据密文通过对参与方设备的业务数据进行加密得到;
从区块链中获取业务数据哈希结果;其中所述业务数据哈希结果通过对所述业务数据密文进行哈希处理得到;
通过可信计算模块,根据所述业务数据密文和所述业务数据哈希结果进行多方计算,得到多方计算结果。
7.根据权利要求6所述的方法,其特征在于,通过可信计算模块,根据所述业务数据密文和所述业务数据哈希结果进行多方计算,包括:
通过可信计算模块,对所述业务数据密文进行解密得到业务数据;
根据所述业务数据哈希结果对所述业务数据进行校验。
8.根据权利要求7所述的方法,其特征在于,通过可信计算模块,对所述业务数据密文进行解密得到业务数据之前,还包括:
通过所述可信计算模块与参与方设备进行交互,确定目标随机数;
从参与方设备获取密钥密文,其中所述密钥密文通过采用所述目标随机数对密钥进行加密得到;
通过所述可信计算模块,采用所述目标随机数对所述密钥密文进行解密得到密钥;
相应地,通过可信计算模块,对所述业务数据密文进行解密得到业务数据,包括:
通过可信计算模块,采用所述密钥对所述业务数据密钥进行解密,得到业务数据。
9.根据权利要求6所述的方法,其特征在于,得到多方计算结果之后,还包括:
对所述多方计算结果进行加密,得到多方计算结果密文;
通过可信计算模块,向所述参与方设备发送所述多方计算结果密文,用于指示所述参与方设备对所述多方计算结果密文进行解密得到多方计算结果。
10.根据权利要求6所述的方法,其特征在于,接收参与方设备发送的业务数据密文之前,还包括:
向区块链节点发送服务器注册信息;其中所述服务器注册信息包括支持的可信算法信息,以指示区块链节点将所述服务器注册信息写入区块链中。
11.基于区块链的多方计算方法,其特征在于,由区块链节点执行,所述方法包括:
接收参与方设备发送的业务数据哈希结果;其中所述业务数据哈希结果通过对业务数据密文进行哈希处理得到;
向目标服务器中目标可信计算模块发送所述业务数据哈希结果,以指示所述目标可信计算模块根据接收的业务数据密文和所述业务数据哈希结果进行多方计算。
12.根据权利要求11所述的方法,其特征在于,接收参与方设备发送的业务数据哈希结果之前,还包括:
从候选服务器获取服务器注册信息,其中所述服务器注册信息包括支持的可信算法信息;
将所述服务器注册信息写入区块链中。
13.根据权利要求12所述的方法,其特征在于,将所述服务器注册信息写入区块链中之后,还包括:
从参与方设备获取服务器选择请求,其中所述服务器选择请求包括所述参与方设备需要的目标可信算法信息;
从区块链中查询支持所述目标可信算法的候选服务器注册信息;
向所述参与方设备发送所述候选服务器注册信息,用于指示所述参与方设备根据所述候选服务器注册信息,从候选服务器中选择所述目标服务器。
14.基于区块链的多方计算装置,其特征在于,配置于参与方设备,包括:
数据加密模块,用于对业务数据进行加密得到业务数据密文;
哈希处理模块,用于对所述业务数据密文进行哈希处理,得到业务数据哈希结果;
第一发送模块,用于向区块链节点发送所述业务数据哈希结果,以指示所述区块链节点将所述业务数据哈希结果写入区块链中;
密文发送模块,用于向目标服务器中目标可信计算模块发送所述业务数据密文,用于指示所述目标可信计算模块根据所述业务数据密文和区块链中的业务数据哈希结果进行多方计算。
15.基于区块链的多方计算装置,其特征在于,配置于服务器,包括:
密文接收模块,用于接收参与方设备发送的业务数据密文,其中所述业务数据密文通过对参与方设备的业务数据进行加密得到;
结果获取模块,用于从区块链中获取业务数据哈希结果;其中所述业务数据哈希结果通过对所述业务数据密文进行哈希处理得到;
多方计算模块,用于通过可信计算模块,根据所述业务数据密文和所述业务数据哈希结果进行多方计算,得到多方计算结果。
16.基于区块链的多方计算装置,其特征在于,配置于区块链节点,包括:
结果接收模块,用于接收参与方设备发送的业务数据哈希结果;其中所述业务数据哈希结果通过对业务数据密文进行哈希处理得到;
第二发送模块,用于向目标服务器中目标可信计算模块发送所述业务数据哈希结果,以指示所述目标可信计算模块根据接收的业务数据密文和所述业务数据哈希结果进行多方计算。
17.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-13中任一项所述的基于区块链的多方计算方法。
18.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-13中任一项所述的基于区块链的多方计算方法。