一种基于区块链和重加密的数据加密分享系统及方法技术方案

技术编号:28124039 阅读:22 留言:0更新日期:2021-04-19 11:35
本申请公开一种基于区块链和重加密的数据加密分享系统及方法,系统包括:区块链、连接在所述区块链上的服务器和客户端;所述客户端包括提供数据分享的分享客户端和下载分享数据的接收客户端;所述服务器用于存储从所述分享客户端接收到的分享数据以及向所述接收客户端发送所述分享数据。以解决现有数据的分享以明文形似存储在服务器上,存在数据泄露的风险,以及数据的分享记录由第三方服务器保存,甚至不保存分享记录,如果第三方服务器受到攻击、被篡改或伪造,导致存储的分享记录和分享数据变得不可信等问题。数据变得不可信等问题。数据变得不可信等问题。

【技术实现步骤摘要】
一种基于区块链和重加密的数据加密分享系统及方法


[0001]本申请涉及数据分享
,具体的涉及一种基于区块链和重加密的数据加密分享系统及方法。

技术介绍

[0002]目前,数据的分享多是以明文的形式,通过服务器实现端到端的分享。在整个分享过程中,数据以明文的形式存在,数据在服务器端是可见的,因此存在数据泄露的风险。同时,数据的分享记录由第三方服务器保存,甚至不保存分享记录,使得分享记录的可信性完全依赖于第三方服务器或者无从追溯;当数据的分享记录存储在第三方服务器上时,如果第三方服务器受到攻击、被篡改或伪造,服务器的不可信直接导致存储的分享记录变得不可信。另外,数据分享缺少时间的限制条件,并且分享的数据难以确权。

技术实现思路

[0003]本申请提供一种基于区块链和重加密的数据加密分享系统及方法,以解决现有数据的分享以明文形似存储在服务器上,存在数据泄露的风险,以及数据的分享记录由第三方服务器保存,甚至不保存分享记录,如果第三方服务器受到攻击、被篡改或伪造,导致存储的分享记录和分享数据变得不可信等问题。
[0004]一方面,一种基于区块链和重加密的数据加密分享系统,包括:区块链、连接在所述区块链上的服务器和客户端;所述客户端包括提供数据分享的分享客户端和下载分享数据的接收客户端;所述服务器用于存储从所述分享客户端接收到的分享数据以及向所述接收客户端发送所述分享数据。
[0005]另一方面,一种基于区块链和重加密的数据加密分享方法,包括:
[0006]初始化分享客户端的分享客户端公私钥对,检查所述分享客户端公私钥对是否存在;
[0007]如果存在所述分享客户端公私钥对,读取分享客户端公钥;
[0008]生成分享对称密钥;
[0009]使用所述分享客户端公钥,对所述分享对称密钥进行加密,得到密钥密文;
[0010]使用所述分享对称密钥对分享数据进行加密,得到数据密文;
[0011]初始化重加密密钥,检查所述重加密密钥是否存在;
[0012]如果所述重加密密钥存在,生成数据分享记录;
[0013]将所述密钥密文、所述数据密文和所述数据分享记录存储在所述服务器上;
[0014]将所述数据分享记录上传区块链进行存储,生成交易哈希,并将所述交易哈希保存至所述服务器;
[0015]根据接收客户端的分享数据下载请求,使用所述重加密密钥对所述密钥密文进行重加密,得到重加密密钥密文;
[0016]将所述交易哈希、所述数据密文和所述重加密密钥密文发送至所述接收客户端;
[0017]读取接收客户端私钥,对所述重加密密钥密文进行解密,得到所述分享对称密钥;
[0018]使用所述分享对称密钥解密所述数据密文,得到所述分享数据;
[0019]将所述分享数据保存在所述接收客户端的本地存储空间内。
[0020]本申请实施例提供的基于区块链和重加密的数据加密分享系统及方法,在整个数据分享过程中,数据都是以密文的形式存在和传送的,能够最大程度保证数据的不可见性,能够防止数据的泄漏,提高数据分享过程的安全性。将数据分享的过程以交易哈希的形式锚定到区块链上,能够实现数据的确权,记录数据的来源归属,可以实现数据分享过程的可追溯性;采用区块链存储数据分享记录,可以实现数据分享记录的防篡改,能够提高数据分享记录的安全可信。另外,当需要将分享数据同时分享给多个客户端时,分享客户端只需要将分享数据进行一次加密并发送至服务器即可,服务器再根据各个接收客户端的重加密密钥对密钥密文进行重加密,多个接收客户端分别发出数据下载请求,即可进行分享数据的下载,从而能够降低分享客户端的计算负担,提高数据分享的效率。分享客户端和接收客户端关联的重加密密钥可以重复使用,只要是相同的两个分享客户端和接收客户端之间进行数据分享,均可以重复使用该重加密密钥,可以避免每次分享数据都需要重新读取接收客户端公钥,再生成重加密密钥,进而能够提高数据分享的效率。
附图说明
[0021]为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]图1为本申请实施例提供的第一种基于区块链和重加密的数据加密分享系统拓扑图;
[0023]图2为本申请实施例提供的一种基于区块链和重加密的数据加密分享方法流程图;
[0024]图3为图2所示步骤SA的详细流程图;
[0025]图4为图2所示步骤SE的详细流程图。
具体实施方式
[0026]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0027]图1为本申请实施例提供的第一种基于区块链和重加密的数据加密分享系统拓扑图。如图1所示,本申请实施例提供的基于区块链和重加密的数据加密分享系统,包括:区块链、连接在区块链上的服务器和客户端;客户端包括提供数据分享的分享客户端和下载分享数据的接收客户端;服务器用于存储从分享客户端接收到的分享数据以及向接收客户端发送分享数据。客户端可以有多个,在某次数据分享的过程中,将分享数据上传至服务器,则此客户端为分享客户端;请求服务器下载分享数据的客户端则为接收客户端。在区块链上,服务器可以作为一个节点,客户端也可以作为区块链的节点,本申请不作具体限定。需
要说明的是,图1所示的客户端数量、服务器数量以及区块链上节点数量均只是示意性的,不作为本申请的限定。
[0028]图2为本申请实施例提供的一种基于区块链和重加密的数据加密分享方法流程图。如图2所示,本申请提供的基于区块链和重加密的数据加密分享方法,包括如下步骤:
[0029]S1:初始化分享客户端的分享客户端公私钥对(PKA,SKA),检查分享客户端公私钥对是否存在。每个客户端均具有自己的公私钥对,其中,私钥存储在客户端内,公钥可以发送给服务器进行存储,便于后续的加密和解密动作。
[0030]S10:如果不存在分享客户端公私钥对,分享客户端则需要重新生成分享客户端公私钥对(PKA,SKA),继续读取分享客户端公钥PKA,并发送至服务器进行存储。
[0031]S2:如果存在分享客户端公私钥对(PKA,SKA),读取分享客户端公钥PKA。
[0032]S3:生成分享对称密钥K。每个分享客户端每分享一次数据,就生成一个分享对称密钥K,可以理解为分享对称密钥K为一次性使用的密钥,每分享一次数据,都重新生成一个新的分享对称密钥K。可以防止分享对称密钥被恶意截获,能够保证每次数据分享过程的可信性。
[0033]S4:使用分享客户端公钥PKA,对分享对称密钥K进行加密,得到密钥密文E[K,PKA]。由于分享本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于区块链和重加密的数据加密分享系统,其特征在于,包括:区块链、连接在所述区块链上的服务器和客户端;所述客户端包括提供数据分享的分享客户端和下载分享数据的接收客户端;所述服务器用于存储从所述分享客户端接收到的分享数据以及向所述接收客户端发送所述分享数据。2.一种基于区块链和重加密的数据加密分享方法,其特征在于,包括:初始化分享客户端的分享客户端公私钥对,检查所述分享客户端公私钥对是否存在;如果存在所述分享客户端公私钥对,读取分享客户端公钥;生成分享对称密钥;使用所述分享客户端公钥,对所述分享对称密钥进行加密,得到密钥密文;使用所述分享对称密钥对分享数据进行加密,得到数据密文;初始化重加密密钥,检查所述重加密密钥是否存在;如果所述重加密密钥存在,生成数据分享记录;将所述密钥密文、所述数据密文和所述数据分享记录存储在服务器上;将所述数据分享记录上传区块链进行存储,生成交易哈希,并将所述交易哈希保存至所述服务器;根据接收客户端的分享数据下载请求,使用所述重加密密钥对所述密钥密文进行重加密,得到重加密密钥密文;将所述交易哈希、所述数据密文和所述重加密密钥密文发送至所述接收客户端;读取接收客户端私钥,对所述重加密密钥密文进行解密,得到所述分享对称密钥;使用所述分享对称密钥解密所述数据密文,得到所述分享数据;将所述分享数据保存在所述接收客户端的本地存储空间内。3.根据权利要求2所述的基于区块链和重加密的数据加密分享方法,其特征在于,如果不存在所述分享客户端公私钥对,重新生成所述分享客户端公私钥对,继续读取所述分享客户端公钥,并发送至服务器进行存储。4.根据权利要求2所述的基于区块链和重加密的数据加密分享方法,其特征在于,如果所述重加密密钥不存在,根据所述分享客户端公私钥对和接收客户端公钥生成所述重加密密钥。5.根据权利要求2所述的基于区块链和重加密的数据加密分享方法,其特征在于...

【专利技术属性】
技术研发人员:汪德嘉张齐齐宋超
申请(专利权)人:江苏通付盾科技有限公司
类型:发明
国别省市:

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

1