数据获取方法、电子设备及存储介质转让专利

申请号 : CN202311121052.X

文献号 : CN116846539B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘立宇朱茂林初乃强贾海瑞

申请人 : 奇点数联(北京)科技有限公司生命奇点(北京)科技有限公司

摘要 :

本发明提供了一种数据获取方法、电子设备和存储介质,方法包括:数据需求方基于需要获取的数据生成第一加密数据和第二加密数据并分别发送给数据提供方和数据监控方;数据提供方对接收到的第一加密数据进行解密,得到第一解密数据,并获取待发送数据,以及根据接收到的授权指令是否将待发送数据发送给数据需求方;数据监控方对接收到的第二加密数据进行解密,得到第二解密数据,并判断所述第一解密数据是否满足要求,如果满足,则第二解密数据进行加密,得到第三加密数据,并判断第三加密数据与接收到的第一加密数据是否一致,如果一致,则向数据提供方发送第一授权指令,否则,发送第二授权指令。本发明能够确保数据安全。

权利要求 :

1.一种数据获取方法,其特征在于,应用于第一场景,所述第一场景至少包括数据需求方、数据提供方和数据监控方,所述数据需求方、数据提供方和数据监控方为区块链上的节点;所述方法包括如下步骤:数据需求方基于需要获取的数据生成第一加密数据和第二加密数据;其中,第一加密数据基于数据提供方对应的公钥对原始数据查阅指令进行加密得到,第二加密数据基于数据监控方对应的公钥对复制数据查阅指令进行加密得到,所述原始数据查阅指令基于需要获取的数据得到,所述复制数据查阅指令为对原始数据查阅指令进行复制得到;其中,数据获取方利用智能合约在区块链上发布第一加密数据和第二加密数据,数据提供方和数据监控方通过智能合约接收第一加密数据和第二加密数据;

数据提供方利用对应的私钥对接收到的第一加密数据进行解密,得到第一解密数据,并基于第一解密数据获取对应的数据,作为待发送数据,以及在接收到数据监控方发送的第一授权指令时,将所述待发送数据发送给所述数据需求方;

数据监控方利用对应的私钥对接收到的第二加密数据进行解密,得到第二解密数据,并基于对应的预设监控规则判断所述第二解密数据是否满足要求,如果满足,则利用所述数据提供方对应的公钥对第二解密数据进行加密,得到第三加密数据,并判断第三加密数据与接收到的第一加密数据是否一致,如果一致,则向所述数据提供方发送第一授权指令,否则,发送第二授权指令。

2.根据权利要求1所述的方法,其特征在于,第一场景包括n个数据监控方,n≥2。

3.根据权利要求2所述的方法,其特征在于,包括n个复制数据查阅指令和第二加密数据,每个第二加密数据基于对应的数据监控方的公钥对相应的复制数据查阅指令进行加密得到。

4.根据权利要求2所述的方法,其特征在于,包括m个复制数据查阅指令和第二加密数据,所述m个复制数据查阅指令和第二加密数据基于n个数据监控方的监控采样概率得到,1≤m≤n。

5.根据权利要求4所述的方法,其特征在于,所述数据提供方,在接收到n个数据监控方发送的n个授权指令均为第一授权指令时,将所述待发送数据发送给所述数据需求方。

6.根据权利要求4所述的方法,其特征在于,其中,n个数据监控方的监控采样概率中至少存在一个值为1的监控采样概率。

7.根据权利要求4所述的方法,其特征在于,所述m个复制数据查阅指令和第二加密数据基于n个数据监控方的监控采样概率得到,具体包括:S10,设置计数变量i=1;

S11,如果i≤n,执行S12;否则,执行S14;

S12,获取随机数ai,如果ai≤Pi,则对所述原始数据查阅指令进行复制,得到复制数据查阅指令Si,并存入当前的复制数据查阅指令表中,否则,不对所述原始数据查阅指令进行复制,执行S13;ai的取值范围为0.1至1;Pi为第i个数据监控方对应的监控采样概率;当前的复制数据查阅指令表的初始值为空集,所述当前的复制数据查阅指令表的第j行包括Sj和Aj,Sj为当前的复制数据查阅指令表中的第j个复制数据查阅指令,Aj为Sj对应的数据监控方的ID;

S13,设置i=i+1,执行S11;

S14,对于当前的复制数据查阅指令表中的每个复制数据查阅指令,利用对应数据监控方对应的公钥进行加密,得到对应的第二加密数据。

8.根据权利要求1所述的方法,其特征在于,还包括:

对所述数据提供方基于第一解密数据获取对应的数据的过程进行监控。

9.一种非瞬时性计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,其特征在于,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如权利要求1‑8中任意一项的所述方法。

10.一种电子设备,其特征在于,包括处理器和权利要求9中所述的非瞬时性计算机可读存储介质。

说明书 :

数据获取方法、电子设备及存储介质

技术领域

[0001] 本发明涉及计算机技术应用领域,特别是涉及一种数据获取方法、电子设备及存储介质。

背景技术

[0002] 区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。当前,特定领域的数据获取是基于区块链进行。当前基于区块链的数据获取方案为,数据需求方数据调用智能合约发送数据查阅请求,数据提供方在区块链节点中接收到数据查询请求后调用对应的数据检索服务获取实际数据,对数据进行加密后通过链下加密通道提供给数据需求方,在链上对数据检索操作进行加密存证。这种数据获取方案,由于直接通过数据需求方和数据提供方进行,缺乏第三方的监管,会导致一些敏感数据被泄露。

发明内容

[0003] 针对上述技术问题,本发明采用的技术方案为:
[0004] 本发明实施例提供一种数据获取方法,应用于第一场景,所述第一场景至少包括数据需求方、数据提供方和数据监控方,所述数据需求方、数据提供方和数据监控方为区块链上的节点;所述方法包括如下步骤:
[0005] 数据需求方基于需要获取的数据生成第一加密数据和第二加密数据并分别发送给数据提供方和数据监控方;其中,第一加密数据基于数据提供方对应的公钥对原始数据查阅指令进行加密得到,第二加密数据基于数据监控方对应的公钥对复制数据查阅指令进行加密得到,所述原始数据查阅指令基于需要获取的数据得到,所述复制数据查阅指令为对原始数据查阅指令进行复制得到;
[0006] 数据提供方利用对应的私钥对接收到的第一加密数据进行解密,得到第一解密数据,并基于第一解密数据获取对应的数据,作为待发送数据,以及在接收到数据监控方发送的第一授权指令时,将所述待发送数据发送给所述数据需求方;
[0007] 数据监控方利用对应的私钥对接收到的第二加密数据进行解密,得到第二解密数据,并基于对应的预设监控规则判断所述第二解密数据是否满足要求,如果满足,则利用所述数据提供方对应的公钥对第二解密数据进行加密,得到第三加密数据,并判断第三加密数据与接收到的第一加密数据是否一致,如果一致,则向所述数据提供方发送第一授权指令,否则,发送第二授权指令。
[0008] 本发明实施例还提供一种非瞬时性计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现前述方法。
[0009] 本发明实施例还提供一种电子设备,包括处理器和前述的非瞬时性计算机可读存储介质。
[0010] 本发明至少具有以下有益效果:
[0011] 本发明实施例提供的数据处理方法,由于设置了数据监控方,能够使得向数据获取方提供的数据更加规范,能够确保数据安全性。

附图说明

[0012] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0013] 图1为本发明实施例提供的数据处理方法的流程图。

具体实施方式

[0014] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0015] 本发明实施例提供一种数据获取方法,应用于第一场景,所述第一场景至少包括数据需求方、数据提供方和数据监控方,所述数据需求方、数据提供方和数据监控方为区块链上的节点。其中,在数据需求方、数据提供方和数据监控方对应的节点上设置加解密单元并部署有私钥,在区块链网络上部署有智能合约。
[0016] 在本发明实施例中,数据提供方为持有数据的节点,数据监控方为对数据需求方请求查阅的数据进行监控的节点。
[0017] 在本发明实施例中,所述加解密单元所采用的加解密算法可以为以下加解密算法中的一种或多种:DES(Data Encryption Standard)数据加密标准算法、对称加密AES、非对称加密ECC、消息摘要MD5或数字签名DSA。优选,采用的加解密算法可为非对称加密。
[0018] 进一步地,如图1所示,所述方法可包括如下步骤:
[0019] S100,数据需求方基于需要获取的数据生成第一加密数据和第二加密数据并分别发送给数据提供方和数据监控方。
[0020] 其中,第一加密数据基于数据提供方对应的公钥对原始数据查阅指令进行加密得到。具体地,数据需求方利用自身的加解密单元、数据需求方的私钥以及与数据提供方约定好的公钥对原始数据查阅指令进行加密得到第一加密数据。原始数据查阅指令为用于请求查阅所需要获取的数据的指令,例如,可包括:数据获取方的公钥、数据获取方的ID、数据提供方的ID、获取数据类型等。
[0021] 第二加密数据基于数据监控方对应的公钥对复制数据查阅指令进行加密得到,所述原始数据查阅指令基于需要获取的数据得到,所述复制数据查阅指令为对原始数据查阅指令进行复制得到。具体地,数据需求方利用自身的加解密单元、数据需求方的私钥以及与数据监控方约定好的公钥对复制数据查阅指令进行加密得到第二加密数据。
[0022] 在本发明实施例中,数据获取方利用智能合约在区块链上发布第一加密数据和第二加密数据。数据提供方和数监控方可通过智能合约接收到第一加密数据和第二加密数据。
[0023] S200,数据提供方利用对应的私钥对接收到的第一加密数据进行解密,得到第一解密数据,并基于第一解密数据获取对应的数据,作为待发送数据,以及在接收到数据监控方发送的第一授权指令时,将所述待发送数据发送给所述数据需求方。
[0024] 具体地,数据提供方在区块链上接收到第一加密数据后,利用自身的加解密单元和自身的私钥对第一加密数据进行解密,在解密后,请求数据检索服务器,执行正常数据调阅的工作。在数据回送给数据需求方以及上链发送接收消息之前阻塞住,等待数据监控方的授权指令,即将检索到的数据作为待发送数据,暂缓发送给数据需求方,直到接收到数据监控方的授权指令再确定是否发送。
[0025] 如果从数据监控方接收到的授权指令为第一授权指令,则将待发送数据发送给所述数据需求方。如果从数据监控方接收到的授权指令为第二授权指令,则将待发送数据进行销毁。即,在本发明实施例中,第一授权指令为指示向数据需求方发送数据的指令,第二授权指令为指示不向数据需求方发送数据的指令。
[0026] 在本发明实施例中,待发送数据可包括链上待发送数据和链下待发送数据,链上待发送数据可包括:加密数据的对称密钥、链下待发送数据的摘要和存储地址等。链下待发送数据为对基于第一解密数据获取对应的数据进行加密后的数据。链上待发送数据通过区块链网络发送,链下待发送数据通过加密通道或者网络等方式进行发送,以减少区块链网络拥堵。
[0027] S300,数据监控方利用对应的私钥对接收到的第二加密数据进行解密,得到第二解密数据,并基于对应的预设监控规则判断所述第一解密数据是否满足要求,如果满足,则利用所述数据提供方对应的公钥对第二解密数据进行加密,得到第三加密数据,并判断第三加密数据与接收到的第一加密数据是否一致,如果一致,则向所述数据提供方发送第一授权指令,否则,发送第二授权指令。
[0028] 具体地,数据监控方利用自身的加解密单元和私钥,对接收到的第二加密数据进行解密。对于解密的后数据,数据监控方会基于对应的预设监控规则判断所述第二解密数据是否满足要求,如果满足,则利用所述数据提供方对应的公钥对第二解密数据进行加密,得到第三加密数据,并判断第三加密数据与接收到的第一加密数据是否一致,如果一致,说明第一加密数据和第二加密数据是相同的数据,则向所述数据提供方发送第一授权指令,否则,即数据查阅违规,则通过区块链向数据提供方发送第二授权指令。
[0029] 在本发明实施例中,将第三加密数据和第一加密数据进行比较,能够避免伪造不一致的数据逃脱数据监控方监控的问题。
[0030] 在本发明实施例中,预设监控规则可为数据监控方自定义的能够确保不泄露敏感数据的规则。
[0031] 此外,如果第二解密数据不满足预设监控规则,数据监控方还会通过智能合约将数据需求方的相关权限从智能合约中删除,同时将违规记录进行记录和报警。
[0032] 本发明实施例提供的数据处理方法,由于设置了数据监控方,能够使得向数据获取方提供的数据更加规范,能够确保数据安全性。
[0033] 进一步地,在本发明一实施例中,第一场景中数据监控方可为1个。在本发明另一实施例中,第一场景可包括n个数据监控方,n≥2。
[0034] 在一个示意性实施例中,在包括n个数据监控方的情况下,数据需求方需要复制n份复制数据查阅指令并进行加密,即包括n个复制数据查阅指令和第二加密数据,每个第二加密数据基于对应的数据监控方的公钥对相应的复制数据查阅指令进行加密得到,每份加密数据查阅指令需要发送给对应的数据监控方。
[0035] 在此情况下,数据提供方只有在接收到所有的数据监控方发送的第一授权指令后才将所述待发送数据发送给所述数据需求方,即在接收到n个数据监控方发送的n个授权指令均为第一授权指令时,将所述待发送数据发送给所述数据需求方。
[0036] 本领域技术人员知晓,每个第二加密数据的加密操作可与S100限定的内容相同,以及每个数据监控方执行的操作可与S300限定的内容相同,为避免赘述,省略对每个第二加密数据的加密过程以及每个数据监控方操作的具体介绍。
[0037] 进一步地,在另一个示意性实施例中,在包括n个数据监控方的情况下,数据需求方可基于n个数据监控方的监控采样概率来生成复制查阅指令,即可包括m个复制数据查阅指令和第二加密数据,所述m个复制数据查阅指令和第二加密数据基于n个数据监控方的监控采样概率得到,1≤m≤n。
[0038] 在本发明实施例中,监控采样概率可为数据监控方自定义的概率值。
[0039] 进一步地,所述m个复制数据查阅指令和第二加密数据基于n个数据监控方的监控采样概率得到,具体可包括:
[0040] S10,设置计数变量i=1。
[0041] S11,如果i≤n,执行S12;否则,执行S14。
[0042] S12,获取随机数ai,如果ai≤Pi,则对所述原始数据查阅指令进行复制,得到复制数据查阅指令Si,并存入当前的复制数据查阅指令表中,否则,不对所述原始数据查阅指令进行复制,执行S13;ai的取值范围为0.1至1;Pi为第i个数据监控方对应的监控采样概率;当前的复制数据查阅指令表的初始值为空集,所述当前的复制数据查阅指令表的第j行包括Sj和Aj,Sj为当前的复制数据查阅指令表中的第j个复制数据查阅指令,Aj为Sj对应的数据监控方的ID。
[0043] S13,设置i=i+1,执行S11。
[0044] S14,对于当前的复制数据查阅指令表中的每个复制数据查阅指令,利用对应数据监控方对应的公钥进行加密,得到对应的第二加密数据。
[0045] 基于n个数据监控方的监控采样概率得到需要复制的复制数据查阅指令的技术效果为,在存在较多的数据监控方时,由于根据监控采样概率随机确定是否需要复制查阅指令,使得能够不需要为所有数据监控方复制查阅指令,如此,能够降低数据传送的成本,并且能够节约数据获取时间。
[0046] 进一步地,由于是通过随机数来确定是否复制数据查阅指令,这样,会存在不需要复制数据查阅指令的极端情况,为避免这种情况,可设置n个数据监控方的监控采样概率中至少存在一个值为1的监控采样概率,这样,能够确保每次数据查阅过程中,至少存在一个数据监控方进行监控。
[0047] 进一步地,本发明实施例提供的数据处理方法,还包括:
[0048] 对所述数据提供方基于第一解密数据获取对应的数据的过程进行监控。
[0049] 具体地,在消息到达数据提供方节点执行数据查询过程中,系统在区块链节点与数据检索服务器的通信链路的旁路上设计一个负责侦听网络通信操作的侦听模块,用于监听查询指令和查询结果,并实时将这两部分数据写入离线存储系统用于存证和审计。
[0050] 本发明实施例提供的数据处理方法的一个实际应用场景为医疗数据的处理。在该实际应用场景下,数据提供方可为医院、健康体检机构、康养中心等,数据监控方可包括卫健委、大数据局、食品药品监督管理局等。
[0051] 本发明的实施例还提供了一种非瞬时性计算机可读存储介质,该存储介质可设置于电子设备之中以保存用于实现方法实施例中一种方法相关的至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现上述实施例提供的方法。
[0052] 本发明的实施例还提供了一种电子设备,包括处理器和前述的非瞬时性计算机可读存储介质。
[0053] 本发明的实施例还提供一种计算机程序产品,其包括程序代码,当所述程序产品在电子设备上运行时,所述程序代码用于使该电子设备执行本说明书上述描述的根据本发明各种示例性实施方式的方法中的步骤。
[0054] 虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本发明的范围和精神。本发明公开的范围由所附权利要求来限定。