数据追责方法、系统和计算机存储介质与流程

文档序号:20949019发布日期:2020-06-02 20:01阅读:126来源:国知局
数据追责方法、系统和计算机存储介质与流程

本文涉及信息处理领域,尤指一种数据交换方法、系统和计算机存储介质。



背景技术:

区块链(blockchain)区块链就是一种去中心化的分布式账本数据库。区块链没有中心服务器,每个参与节点(人)都是平等的且直接进行数据交换,数据产生后会被打包成一个一个的数据块,按照时间的先后衔接成一条数据链,前后两个块均有密码学机制防篡改,每个节点都会同步完整的数据链。

在数据交换过程中,交换的方法是数据使用方从数据拥有方拷贝所需的数据,达到数据交换的目的。由于数据交换完成后,交换双方如果对本次数据交换操作存有疑问,无法针对存在的疑问进行处理。



技术实现要素:

为克服相关技术中存在的问题,本文提供一种数据交换方法、系统和计算机存储介质。

根据本文的第一方面,提供一种数据追责方法,包括:

获取所述数据拥有方和所述数据使用方中的一方发送的数据交换的冲裁请求,其中所述冲裁请求中的数据交换操作的标识信息和请求冲裁的内容;

根据预先存储的数据交换操作的标识信息对应的追责管理信息,确定所述数据交换操作的标识信息对应的数据交换操作中另一方的身份信息;

根据所述另一方的身份信息,通知所述另一方提供与所述请求冲裁的内容对应的信息;

在得到另一方提供的信息后,将提供的信息与本地预先保存的所述数据交换操作的标识信息对应的追责管理信息进行比对,确定责任方信息,得到追责结果;

输出所述追责结果。

在一个示例性实施例中,在获取所述数据拥有方和所述数据使用方中的一方发送的数据交换的冲裁请求之前,所述方法还包括:

获取所述数据拥有方和所述数据使用方间执行数据交换操作的标识信息和追责管理信息;

向所述数据拥有方和所述数据使用方发送数据交换操作的标识信息;

其中,所述追责管理信息包括如下至少一种:数据交换双方的身份信息、所交换的数据的第一数值、数据使用方提供的计算策略对应的第二数值和数据的使用要求信息对应的第三数值;其中所述第一数值和所述第二数值是按照预先设置的数值处理策略得到的。

在一个示例性实施例中,在获取所述数据拥有方和所述数据使用方间执行数据交换操作的标识信息和追责管理信息之前,所述方法还包括:

在确定数据使用方请求交换的数据后,获取所述数据使用方对所述数据的使用要求信息和数据承诺信息;

向所述数据使用方发送所述数据使用信息和数据承诺信息;

在检测到数据拥有方同意交换数据给数据使用方后,完成所述数据拥有方和所述数据使用方的数据交换操作。

在一个示例性实施例中,所述完成所述数据拥有方和所述数据使用方的数据交换操作,包括:

获取所述数据拥有方提供的所需交换的数据以及所述数据使用方提供的计算策略的信息;

将所述数据作为所述计算策略的输入参数进行计算,得到结果值;

向所述数据使用方发送包括所述结果值的信息。

在一个示例性实施例中,所述数据拥有方提供的信息和所述数据使用方提供的信息是通过如下方式得到的,包括:

获取所述数据拥有方发送的包括所述数据和所述第一数值的第一密文,所述数据使用方发送的包括所述计算策略和第二数值的第二密文,其中所述第一密文和所述第二密文是使用沙箱的加密策略进行加密的;

利用预先获取的所述沙箱的解密策略,对所述第一密文和所述第二密文进行解密,得到所述数据和所述计算策略。

在一个示例性实施例中,在获取所述数据拥有方提供的所需交换的数据以及所述数据使用方提供的计算策略的信息时,还获取所述数据对应的第一数值和/或所述计算策略对应的第二数值;

利用预先存储的所述数值处理策略,对获取到的数据和/或计算策略计算,得到待验证第一数值和/或待验证第二数值;

将待验证第一数值与所述第一数值进行比较;和/或,将待验证第二数值与所述第二数值进行比较;

如果比较结果为相等,允许向所述数据使用方发送包括所述结果值的信息。

根据本文的另一方面,提供一种一种数据追责系统,包括:

第一客户端,用于发送来自数据使用方的数据交换请求;

第二客户端,用于在接收到所述数据交换请求后,发送来自数据拥有方对所述数据交换请求的应答消息;

所述数据交换平台,用于实现如权利要求1至6任一所述的方法。

在一个示例性实施例中,所述第一客户端,用于在发送来自数据使用方的数据交换请求时,发送所述数据使用方的数据使用承诺信息和/或数据使用要求信息;

所述第二客户端,用于根据所述数据使用承诺信息和/或数据使用要求信息,确定是否与所述数据方对数据进行交换操作,得到确定结果,发送包括所述确定结果的应答消息。

在一个示例性实施例中,所述第二客户端,还用于在发送所述应答消息时,发送对沙箱所使用的加密策略的选择的指示信息。

根据本文的另一方面,提供一种一种计算机存储介质,包括处理器和存储器,所述存储器存储有计算机程序,所述处理器用以调用所述存储器中的计算机程序以实现上文任一所述的方法。

本文获取所述数据拥有方和所述数据使用方中的一方发送的数据交换的冲裁请求,根据预先存储的数据交换操作的标识信息对应的追责管理信息,确定所述数据交换操作的标识信息对应的数据交换操作中另一方的身份信息,根据所述另一方的身份信息,通知所述另一方提供与所述请求冲裁的内容对应的信息,在得到另一方提供的信息后,将提供的信息与本地预先保存的所述数据交换操作的标识信息对应的追责管理信息进行比对,确定责任方信息,得到追责结果,输出所述追责结果,实现基于数据交换操作的标识信息确定数据追责操作的双方,并利用本地存储的追责管理信息,实现对数据追责的目的,提高数据交换的追责目的,维护数据交换的安全性。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本文。

附图说明

构成本文的一部分的附图用来提供对本文的进一步理解,本文的示意性实施例及其说明用于解释本文,并不构成对本文的不当限定。在附图中:

图1是根据一示例性实施例示出的一种数据追责方法的流程图。

图2是根据一示例性实施例示出的一种数据追责系统的框图。

图3是根据一示例性实施例示出的一种数据追责方法的交互图。

图4是根据一示例性实施例示出的一种计算机设备的框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据一示例性实施例示出的一种数据追责方法的流程图。图1所示方法包括:

步骤101、获取所述数据拥有方和所述数据使用方中的一方发送的数据交换的冲裁请求,其中所述冲裁请求中的数据交换操作的标识信息和请求冲裁的内容;

在一个示例性实施例中,数据拥有方为数据交换操作中提供数据的一方,数据使用方为索要数据的一方,数据追责的执行者为数据交换平台。对已经完成的数据交换存在疑问的一方,通过发起冲裁请求至数据交换平台启动追责流程,根据冲裁请求中携带的数据交换操作的标识信息,确定所要追责的数据交换操作,并根据请求冲裁的内容,确定对数据交换操作存在的疑问。

步骤102、根据所述数据交换操作的标识信息,确定所述数据拥有方和所述数据使用方中另一方的身份信息;

在一个示例性实施例中,所述追责管理信息包括如下至少一种:数据交换双方的身份信息、所交换的数据的第一数值、数据使用方提供的计算策略对应的第二数值和数据的使用要求信息对应的第三数值;其中所述第一数值和所述第二数值是按照预先设置的数值处理策略得到的。

步骤103、根据所述另一方的身份信息,通知所述另一方提供与所述请求冲裁的内容对应的信息;

在一个示例性实施例中,通知的方式可以直接转发所述冲裁请求;或者,根据所述冲裁请求中请求冲裁的内容,确定所述另一方所需提供的信息,以便另一方准确获知所需提供的信息,提高处理效率。

步骤104、在得到另一方提供的信息后,将提供的信息与本地预先保存的所述数据交换操作的标识信息对应的追责管理信息进行比对,确定责任方信息,得到追责结果;

在一个示例性实施例中,本地存储的追责管理信息为数据交换操作的原始记录信息,通过将另一方针对冲裁内容提供的信息与本地提供的信息进行对比,确定冲裁内容对应的信息的责任方,实现对数据的追责目的。

步骤105、输出所述追责结果。

在一个示例性实施例中,可以主动发送追责结果至所述数据追责操作的至少一方,或者,在数据追责操作的任意一方通过发送查询请求获取追责请求时,发送追责结果至所述数据追责操作的至少一方。

本文示例性实施例提供的方法,获取所述数据拥有方和所述数据使用方中的一方发送的数据交换的冲裁请求,根据预先存储的数据交换操作的标识信息对应的追责管理信息,确定所述数据交换操作的标识信息对应的数据交换操作中另一方的身份信息,根据所述另一方的身份信息,通知所述另一方提供与所述请求冲裁的内容对应的信息,在得到另一方提供的信息后,将提供的信息与本地预先保存的所述数据交换操作的标识信息对应的追责管理信息进行比对,确定责任方信息,得到追责结果,输出所述追责结果,实现基于数据交换操作的标识信息确定数据追责操作的双方,并利用本地存储的追责管理信息,实现对数据追责的目的,提高数据交换的追责目的,维护数据交换的安全性。

下面对本文示例性实施例提供的方法进行说明:

若数据使用方事后对数据拥有方提供的数据有疑问,可以通过数据交换中心确定数据提供方提供的数据是否是符合数据使用方要求的数据;同时若数据拥有方对数据使用方的算法或数据使用方法有疑问,可以通过数据交换中心确认数据使用方对数据进行的操作是否是事先承诺。

在一个示例性实施例中,在获取所述数据拥有方和所述数据使用方中的一方发送的数据交换的冲裁请求之前,所述方法还包括:

获取所述数据拥有方和所述数据使用方间执行数据交换操作的标识信息和追责管理信息;

向所述数据拥有方和所述数据使用方发送数据交换操作的标识信息。

在一个示例性实施例中,利用数据交换操作的标识信息来标记追责管理信息,并将该数据交换操作的标记信息发送至数据交换操作的双方,方便后续基于该数据交换操作的标记信息发起数据追责。

在一个示例性实施例中,在获取所述数据拥有方和所述数据使用方间执行数据交换操作的标识信息和追责管理信息之前,所述方法还包括:

在确定数据使用方请求交换的数据后,获取所述数据使用方对所述数据的使用要求信息和数据承诺信息;

向所述数据使用方发送所述数据使用信息和数据承诺信息;

在检测到数据拥有方同意交换数据给数据使用方后,完成所述数据拥有方和所述数据使用方的数据交换操作。

在一个示例性实施例中,基于数据使用要求信息和数据承诺信息,可以让数据拥有方基于上述信息,确定是否与数据使用方进行交换,为数据拥有方更加准确地确定是否交换提供参考信息;同时,为数据拥有方日后发起冲裁请求进行数据追责,提供操作依据。

在一个示例性实施例中,所述完成所述数据拥有方和所述数据使用方的数据交换操作,包括:

获取所述数据拥有方提供的所需交换的数据以及所述数据使用方提供的计算策略的信息;

将所述数据作为所述计算策略的输入参数进行计算,得到结果值;

向所述数据使用方发送包括所述结果值的信息。

在一个示例性实施例中,数据交换操作是通过数据交换平台实现的,不是由数据拥有方和数据使用方直接进行数据拷贝的方式。数据拥有方将数据提供给数据交换平台,数据使用方提供给对数据的计算策略,该计算策略能够对所述数据进行计算处理。

在一个示例性实施例中,将数据拥有方的数据与数据使用方提供的计算策略进行计算,得到的结果值,该结果值可以体现出数据拥有方和数据使用方间对所交换的数据的关联关系。

在一个示例性实施例中,通过将结果值发送给数据使用方,实现数据使用方在不拷贝数据的前提下,对数据拥有方而言,实现数据的可用不可见,对数据使用方而言,实现数据可用不可得,从而提供可信数据执行者的角色。

利用结果值来标记实现数据拥有方和数据使有方之间对数据的交换操作,避免对数据拷贝的所产生的数据安全风险,提高数据交换的安全性。

在一个示例性实施例中,所述数据拥有方提供的信息和所述数据使用方提供的信息是通过如下方式得到的,包括:

获取所述数据拥有方发送的包括所述数据和所述第一数值的第一密文,所述数据使用方发送的包括所述计算策略和第二数值的第二密文,其中所述第一密文和所述第二密文是使用沙箱的加密策略进行加密的;

利用预先获取的所述沙箱的解密策略,对所述第一密文和所述第二密文进行解密,得到所述数据和所述计算策略。

数据交换平台基于加密的沙箱分别与数据拥有方和数据使有方进行数据传输,可以提高数据传输的安全性,使得数据交换过程中的数据交换操作在沙箱内完成,提高数据交换的安全性。

在一个示例性实施例中,在获取所述数据拥有方提供的所需交换的数据以及所述数据使用方提供的计算策略的信息时,还获取所述数据对应的第一数值和/或所述计算策略对应的第二数值;

利用预先存储的所述数值处理策略,对获取到的数据和/或计算策略计算,得到待验证第一数值和/或待验证第二数值;

将待验证第一数值与所述第一数值进行比较;和/或,将待验证第二数值与所述第二数值进行比较;

如果比较结果为相等,允许向所述数据使用方发送包括所述结果值的信息。

在一个示例性实施例中,通过获取所述第一数值和/或所述第二数据,可以对得到的数据进行计算,判断数据传输过程中是否被篡改,提高数据的安全性,保证存储的追责信息的准确性。其中,所述第二数值与数据承诺信息为同一信息。

图2是根据一示例性实施例示出的一种数据追责系统的框图。如图2所示,所述系统包括:

第一客户端201,用于发送来自数据使用方的数据交换请求;

第二客户端202,用于在接收到所述数据交换请求后,发送来自数据拥有方对所述数据交换请求的应答消息;

所述数据交换平台203,用于实现上文任一所述的方法。

在一个示例性实施例中,将数据权益按照其拥有方的主要目的分为数据拥有方(第二客户端202)、数据使用方(第一客户端201)和数据执行者(数据交换平台203)。数据交换请求和/或应答消息可以通过数据交换平台进行转发。

在一个示例性实施例中,所述第一客户端,用于在发送来自数据使用方的数据交换请求时,发送所述数据使用方的数据使用承诺信息和/或数据使用要求信息;

所述第二客户端,用于根据所述数据使用承诺信息和/或数据使用要求信息,确定是否与所述数据方对数据进行交换操作,得到确定结果,发送包括所述确定结果的应答消息。

通过将数据使用方的数据使用要求信息和/或数据使用承诺信息发送给数据拥有方,可以让数据拥有方基于上述信息,确定是否与数据使用方进行交换,为数据拥有方更加准确地确定是否交换提供参考信息;同时,为数据拥有方日后发起冲裁请求进行数据追责,提供操作依据。

所述第二客户端,还用于在发送所述应答消息时,发送对沙箱所使用的加密策略的选择的指示信息。

通过由数据拥有方主动选择加密方案,针对数据拥有方来说对数据的保护力度更大;

本文示例性实施例提供的系统,获取所述数据拥有方和所述数据使用方中的一方发送的数据交换的冲裁请求,根据预先存储的数据交换操作的标识信息对应的追责管理信息,确定所述数据交换操作的标识信息对应的数据交换操作中另一方的身份信息,根据所述另一方的身份信息,通知所述另一方提供与所述请求冲裁的内容对应的信息,在得到另一方提供的信息后,将提供的信息与本地预先保存的所述数据交换操作的标识信息对应的追责管理信息进行比对,确定责任方信息,得到追责结果,输出所述追责结果,实现基于数据交换操作的标识信息确定数据追责操作的双方,并利用本地存储的追责管理信息,实现对数据追责的目的,提高数据交换的追责目的,维护数据交换的安全性。

下面结合本文提供的系统对本文提供的方法进行说明:

图3是根据一示例性实施例示出的一种数据交换方法的交互图。如图3所示,数据拥有方alice和数据使用方bob通过沙箱进行安全数据交换的流程如下:

步骤1、数据拥有方alice和数据使用方bob各自生成自己的密钥对(k'pri,k'pup)和(k"pri,k"pup),其中,k'pri和k"pri为私钥,k'pup和k"pup为公钥。

私钥的取值和公钥的计算方法取决于数据拥有方和数据使用方选取的公钥加密算法,这里的公钥加密算法可以为rsa、或者基于椭圆曲线的公钥加密体制,同时两方也可以采用不同的加密体制;

步骤2、数据使用方bob向数据交换平台发送一个与数据拥有方alice进行数据交换的请求,同时将对数据的要求φ、数据使用承诺h(f)、及哈希值h(φ)发送给数据交换平台;

步骤3、数据交换平台向alice发送数据交换请求、对数据的要求φ、数据使用承诺h(f)、及哈希值h(φ)发送给数据交换平台;

步骤4、数据拥有方alice收到数据交换平台发送的请求后,如果同意进行数据交换,则发送一个应答给数据交换平台,否则该流程结束;

可选的,在发送应答信息的同时,还可以同时发送一个加密体制名称,该加密体制名称是即由数据拥有方确定的加密体制,可以为现有技术中公开的加密体制;通过由数据拥有方主动选择加密方案,针对数据拥有方来说对数据的保护力度更大;

步骤5、数据交换平台在收到收据拥有方alice的应答后,发送一个应答给bob;

步骤6、数据交换平台生成一个虚拟沙箱(如docker)或指定一个硬件沙箱,若为硬件沙箱,则沙箱里内置了各种公钥加密体制的密钥对,若为虚拟沙箱,则由沙箱里内置的随机数生成器,生成私钥,并同时计算对应的公钥,设沙箱的密钥对为(kpri,kpup),沙箱公开其公钥kpup,或将公钥发送给数据拥有方alice和数据使用方bob;

步骤7、数据拥有方alice在获得沙箱的公钥后,将要交换的数据d和数据d的哈希值h(d)利用沙箱公钥加密获得密文,并将密文c′发送给沙箱;其中,c'=e((d||h(d)),kpub),其中e是加密算法;

步骤8、数据使用方bob在获得沙箱的公钥后,将算法f及数据使用承诺h(f)利用沙箱公钥加密获得密文,并将密文c″发送给沙箱;其中c"=e((f||h(f)),kpub),e是加密算法;

步骤9、沙箱收到数据拥有方alice和数据使用方bob发送的密文c′和c″后,利用沙箱的私钥kpri对c′和c″进行解密,通过计算d(c',kpri),可获得数据d和数据d的哈希值h(d),通过计算d(c",kpri),可以得到算法f和数据使用承诺h(f);对解密的到的数据d和算法f,分别计算数据d的哈希值h(d)和算法f对应的数据使用承诺h(f),检验其是否与解密的h(d)和h(f)是否相等;若相等,在沙箱里将数据d作为算法f的输入参数,计算得到一个结果值s;沙箱利用数据使用方bob的公钥加密结果值s和数据d的哈希值h(d),得到密文t,并将密文t发送给数据使用方bob,其中t=e((s||h(d)),k"pub);

步骤10、数据使用方bob收到密文t后,利用自己的私钥k"pri对密文t进行解密,通过计算d(t,k"pri),可获得s和h(d),其中s就是bob通过alice拥有的数据计算出的数值。

步骤11、为了保证事后的追责,数据交换平台会对本次交换进行唯一编号,并将编号、数据交换双方的身份、h(d)、h(f)和h(φ)统一保存在后台数据库,同时将本次数据交换的唯一编号加密发送给数据拥有方alice和数据使用方bob。

步骤12、在沙箱完成本次数据交易后,数据交换平台会即时销毁数据,若是虚拟沙箱,则通过即时销毁沙箱来实现对数据的销毁,若是硬件沙箱,则可以通过属性加密的方式,以限制时间或使用次数的方式来实现对数据的销毁。

若需要提供事后追责的功能,则可通过以下流程确认责任方:

(1)若数据使用方bob对数据拥有方alice的数据有疑问,需要追责,则bob向数据交换中心发出数据仲裁请求,并将数据交换的唯一编码发送给数据交换中心。

(2)数据交换中心收到bob发送的数据仲裁请求后,通过数据交换的唯一编码找到数据拥有方alice,并将数据仲裁请求和唯一编码发送给数据拥有方alice。

(3)alice收到数据交换的仲裁请求后,将之前交换的数据d’用数据交换中心的公钥加密,并发送给数据交换中心。

(4)数据交换中心收到数据d’的密文后,利用自己的私钥解密获得数据d’,并计算h(d’),最后比较数据中心存储的h(d)是否等于h(d’),若相等,则说明alice提供的数据是正确的,否则alice提供的数据是不符合要求的。

若数据拥有方alice对数据使用方bob在数据使用的算法或作用上需要追责,通过以上相同的方法也可以让数据交换中心作为仲裁者从而判断责任方。

本方案采用的加密算法不限于公钥加密,也可以采用公钥加密和私钥加密体制结合的方法,如数字信封技术等。

本方案所使用的数据使用承诺不限于采用哈希算法实现,亦可以采用其他方法来做承诺。

本文示例性实施例提供的方法,实现基于数据交换操作的标识信息确定数据追责操作的双方,并利用本地存储的追责管理信息,实现对数据追责的目的,提高数据交换的追责目的,维护数据交换的安全性。

本文示例性实施例提供一种计算机存储介质,包括处理器和存储器,所述存储器存储有计算机程序,所述处理器用以调用所述存储器中的计算机程序以实现上文任一所述的方法。

图4是根据一示例性实施例示出的一种计算机设备400的框图。例如,计算机设备400可以被提供为一服务器。参照图4,计算机设备400包括处理器401,处理器的个数可以根据需要设置为一个或者多个。计算机设备400还包括存储器402,用于存储可由处理器401的执行的指令,例如应用程序。存储器的个数可以根据需要设置一个或者多个。其存储的应用程序可以为一个或者多个。处理器401被配置为执行指令,以执行上述方法。

本领域技术人员应明白,本文的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本文可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本文可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质,包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质等。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

本文是参照根据本文实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1