CN111526197B - 一种云端数据安全共享方法 - Google Patents

一种云端数据安全共享方法 Download PDF

Info

Publication number
CN111526197B
CN111526197B CN202010335215.4A CN202010335215A CN111526197B CN 111526197 B CN111526197 B CN 111526197B CN 202010335215 A CN202010335215 A CN 202010335215A CN 111526197 B CN111526197 B CN 111526197B
Authority
CN
China
Prior art keywords
data
key
cloud
file
ciphertext
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010335215.4A
Other languages
English (en)
Other versions
CN111526197A (zh
Inventor
鲁静
宋斌
程晗蕾
段焱明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yuanguang Software Co Ltd
Original Assignee
Yuanguang Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yuanguang Software Co Ltd filed Critical Yuanguang Software Co Ltd
Priority to CN202010335215.4A priority Critical patent/CN111526197B/zh
Publication of CN111526197A publication Critical patent/CN111526197A/zh
Application granted granted Critical
Publication of CN111526197B publication Critical patent/CN111526197B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords

Abstract

本发明涉及一种云端数据安全共享方法,属于安全云存储技术领域,解决云端数据的安全共享问题;方法包括:数据所有者DO获得加密云端数据的第一密钥和云端数据的云端存储节点位置,对第一密钥进行加密运算生成第二密钥;使用第一密钥和第二密钥加密创建用于重加密的第三加密密钥;将第三加密密钥发送到所述云端存储节点对云端数据进行重加密;将重加密密文传输到云端共享节点;将第二密钥以及云端共享节点的位置共享给数据使用者DU;数据使用者DU从云端共享节点下载重加密密文,利用第二密钥对重加密密文进行解密,得到云端数据的明文信息。本发明实现了云端数据的安全共享,保护数据共享和传输时的数据隐私。

Description

一种云端数据安全共享方法
技术领域
本发明涉及安全云存储技术领域,尤其涉及一种云端数据安全共享方法。
背景技术
保证云端数据不被泄露是云存储的关键性问题。传统的云上代理重加密基于非对称密钥,如图1。数据所有者DO将自己需要存储的数据在本地用自己的公钥Pa加密后再传送至云中存储,这样,云服务商就无法得到其数据的明文信息,而该数据只有DO使用自己的私钥才能解开。当DO需要把该数据与数据使用者DU共享时,他可以根据自己的一些信息(如私钥)及DU的公钥Pb计算一个转换密钥Rk,由云服务商使用转换密钥Rk,将针对DO的密文重加密得到针对DU的密文,这样,DU就可以容易地从云中下载该密文数据,使用自己的私钥解密。由于在生成转换密钥Rk的过程中采用的是非对称密钥,需获知DU的公钥Pb,算法复杂,加密解密速度没有对称加密解密的速度快。
发明内容
鉴于上述的分析,本发明旨在提供一种云端数据安全共享方法,解决云端数据的安全共享问题。
本发明的目的主要是通过以下技术方案实现的:
本发明公开了一种云端数据安全共享方法,包括:
数据所有者DO获得加密云端数据的第一密钥和云端数据的云端存储节点位置,对第一密钥进行加密运算生成第二密钥;
使用第一密钥和第二密钥加密创建用于重加密的第三加密密钥;
将第三加密密钥发送到所述云端存储节点对云端数据进行重加密;
将重加密密文传输到云端共享节点;
将第二密钥以及云端共享节点的位置共享给数据使用者DU;
数据使用者DU从云端共享节点下载重加密密文,利用第二密钥对重加密密文进行解密,得到云端数据的明文信息。
进一步地,所述云端数据的存储采用云链融合的文件加密存储方式,将数据原始文件加密后的密文存储在云端存储节点形成云端数据,将所述数据原始文件的元数据加密存储在区块链上;所述元数据中包括对数据原始文件加密的第一密钥信息和数据原始文件加密后的密文在云端存储节点位置。
进一步地,所述将数据原始文件加密后的密文存储在云端,包括:
将数据原始文件分成相同大小的数据文件块;
利用对称加密算法对每一数据文件块加密得到分块数据文件密文;其中,所述对称加密采用的对称秘钥为第一秘钥;
将分块数据文件密文存储到云端,每一块分块数据文件密文对应一个数据存储节点;
将所述数据原始文件的元数据加密存储在区块链上,包括:
利用数据所有者DO的公钥P1对第一秘钥进行加密,生成密钥密文;
基于所述密钥密文和分块数据文件密文的存储节点,建立每个数据文件块的元数据;用数据所有者DO的公钥P1对元数据进行加密,生成元数据密文;
将元数据密文上链到区块链进行存储。
进一步地,所述元数据包括数据文件块的名字、云端存储节点位置、密钥密文、Hash值、以及副本的URL地址在内的轻量级数据;通过云端存储节点位置,区块链上存储的元数据和云端存储的数据文件块一一对应。
进一步地,数据所有者DO向区块链发出元数据访问请求;请求通过后,数据所有者DO从链上下载用其公钥P1加密过的元数据密文;数据所有者DO使用其私钥P2对元数据密文进行解密,获得第一密钥以及分块数据文件的云端存储节点位置。
进一步地,所述第二密钥为数据所有者DO根据第一密钥采用随机算法加密生成的一个对称密钥,所述随机算法的核由数据所有者DO指定。
进一步地,所述云端共享节点由数据所有者DO随机选择确定。
进一步地,所述元数据密文以区块链的交易机制进行流转,随机存储在区块链的P2P网络的节点上。
进一步地,还包括使用Melkle树对元数据密文进行完整性验证。
进一步地,还包括使用冗余文件副本方式进行元数据密文的容错处理。
本发明有益效果如下:
本发明实现了云端数据的安全共享,保护数据共享和传输时的数据隐私;采用云链融合的文件加密存储方式,将轻量级元数据保存在区块链上、原始文件存储在云端,扩展区块链的存储容量、提高共识效率;实现了链上链下的数据协同,保证数据的一致性。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
图1为代理重加密方法流程示意图;
图2为本发明实施例中的云端数据共享方法流程图;
图3为本发明实施例中的云链融合的文件加密存储方法流程图;
图4为本发明实施例中的置换函数原理示意图;
图5为本发明实施例中的区块链的结构示意图;
图6为本发明实施例中的Melkle树的结构示意图;
图7为本发明实施例中的基于区块链的分布式云存储架构示意图;
图8为本发明实施例中的云链融合的云端数据共享方法流程图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。
本发明的一个具体实施例公开了一种云端数据安全共享方法,如图2所示,包括以下步骤:
步骤S201、数据所有者DO获得加密云端数据的第一密钥S和云端数据的云端存储节点位置,对第一密钥进行加密运算生成第二密钥S';
数据所有者DO由第一密钥S加密随机生成另一个64位的随机对称密钥—第二密钥S',随机算法核可由用户自己指定,以此提高安全性。
步骤S202、使用第一密钥S和第二密钥S'加密创建用于重加密的第三加密密钥K;
步骤S203、将第三加密密钥发送到所述云端存储节点对云端数据进行重加密;
步骤S204、将重加密密文传输到云端共享节点;
所述云端共享节点由数据所有者DO随机选择确定;
步骤S205、将第二密钥S'以及云端共享节点的位置共享给数据使用者DU;
步骤S206、数据使用者DU从云端共享节点下载重加密密文,利用第二密钥S'对重加密密文进行解密,得到云端数据的明文信息。
本实施例在数据共享时用S'取代了原始密钥S,用云端共享节点位置取代了云端存储节点的原始位置,有效隐藏了原始密钥及密文的存储位置。整个过程在服务器上执行,无需密文下载、重新解密和重新上传。由于选择了代理重加密技术作为密码转换密钥K,可以在不泄露有关密钥S或密文的原始明文任何信息的情况下,通过半可信代理可以在不获取DO明文信息的前提下,将DO的密文转化为具有相同明文的DU的密文。
进一步地,云端数据的可采用存储采用云链融合的文件加密存储方式,将数据原始文件加密后的密文存储在云端,将所述数据原始文件的元数据加密存储在区块链上。
具体的,如图3所示,云链融合的文件加密存储方式包括:
步骤S301、将数据文件分成相同大小的数据文件块;
首先将数据文件分成相同大小的块(例如32MB、64MB…)。如果最后块的大小比指定值小,则以实际大小存放。
步骤S302、利用对称加密算法对数据文件块加密,所述对称加密采用的对称秘钥为第一秘钥S;
对称加密算法公开、计算量小、加密速度快、加密效率高。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方必须事先知道加密密钥。
可选的,本实施例采用DES(Data Encryption Standard)对称加密算法,其入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位(也可以是128位或更长),是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。
DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,其算法主要分为三步:
(1)明文变换。首先对于输入的64位明文进行初始置换,得到置换后的明文X0,X0依然是64位,只是改变了明文信息的排列顺序,然后将64位置换后的明文等分成左右两部分L0和R0,表示X0的左32位和右32位;
(2)迭代。输入的64位明文分成两组后,进行轮加密,每一轮的加密算法都是相同的,将上一轮的Li-1和Ri-1作为下一轮的输入,输出32位的Li和Ri,迭代规则为:
Li=Ri-1,Ri=Li⊕f(Ri-1,Ki)(i=1,2,3,…,16),这里f是一个置换函数如图3所示,里面包括E变化规则,S盒和IP变换,符号⊕表示异或;
其中E变化规则如表1
32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11
12 13 12 13 14 15 16 17 16 17 18 19 20 21 20 21
22 23 24 25 26 25 26 27 28 29 28 29 30 31 32 1
S盒如表2
Figure BDA0002466326520000061
Figure BDA0002466326520000071
IP置换表如表3
58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4
62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8
57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3
61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7
(3):最后经过逆置换表IP-1,就得到了密文Y。
逆置换表IP-1如表4
40 8 48 16 56 24 64 32 39 7 47 15 55 23 63 31
38 6 46 14 54 22 62 30 37 5 45 13 53 21 64 29
36 4 44 12 52 20 60 28 35 3 43 11 51 19 59 27
34 2 42 10 50 18 58 26 33 1 41 9 49 17 57 25
步骤S303、将分块数据文件密文存储到云端数据存储节点;每一块分块数据文件密文对应一个数据存储节点;
步骤S304、用数据所有者DO的公钥P1对第一秘钥S进行加密,生成密钥密文;
每个区块链用户一经注册成功,即分配一对公/私钥,例如,基于椭圆曲线加密ECC算法生成用户的公钥/私钥对(pk,sk)。公钥公开,私钥由用户自己保存。
ECC允许用户在没有任何密钥生成中心或第三方参与的情况下解密他们的文件。与此同时,利用数字签名算法ECDSA生成签名密钥对(spk,ssk)。在数据流转时,发送者使用ssk在数据文件块上签名,并由接收者使用spk进行验证。
步骤S305、建立每个数据文件块的元数据,用数据所有者DO的公钥P1对元数据进行加密,生成元数据密文;
所述元数据包括数据文件块的名字、云端存储节点位置、密钥密文、Hash值、以及副本的URL地址在内的轻量级数据;通过云端存储节点位置,区块链上存储的元数据和云端存储的数据文件块一一对应。此关系可通过解密元数据密文来获取。
步骤S306、将元数据密文上链到区块链进行存储。
具体的,所述元数据密文以区块链的交易机制进行流转,随机存储在区块链的P2P网络的节点上。
在如图5所示的区块链结构中,以合同文件为例,我们仅存储数据文件的元数据,而不是在区块链中存储数据文件本身。因为区块链是高冗余的,这样做不仅可以为用户节约大量的内存空间、提高运行速度,还更安全。即使攻击者截获了交易数据,也无法获取原始的合同数据。在我们的架构中,区块链上记录的不是传统意义上的交易,而是元数据从一方流转到另一方的过程,这个过程同样也带有时间戳。因此,当用户要更新一个数据文件时,只需要发起新的交易;同样的,当用户审查数据文件时,也只需要审查与之相关的最新交易,因为它是该数据文件的最终状态。当用户需要验证他们的数据时,可以根据身份信息从区块链中追溯交易记录,然后通过区块链上记录的文件位置验证他们的数据。
进一步地,使用Melkle树对元数据密文进行完整性验证。
如图6所示,Melkle树由SHA256单向哈希计算而成,而SHA2562是两次SHA256运算。Melkle树首先通过配对数据,即最底层的叶子节点Ti构建。在比特币系统中Ti通常指交易,而在我们的系统中指合同元数据从DO向DU的流转过程。它们经过哈希运算后得到h(Ti),然后进行两两配对和再哈希,一层一层向上哈希直到得到最终的计算结果,即Melkle树根。在树中,包含合同信息的每个叶子节点都可以通过其相应的路径进行验证。通过比较它们的Melkle树根,我们就可以知道叶子节点中的合同元数据是否被篡改过。
SHA256将任何输入都输出为256位的字符串,它是不可逆的,输入稍有变化,其输出就会有很大的变化。由计算过程可知,Melkle根存储了所有合同文件块相关的信息,因此合同文件的完整性验证仅需要验证Melkle根,计算成本非常低。
进一步地,使用冗余文件副本方式进行元数据密文的容错处理。
为了保证架构的可靠性和性能,我们采用随机存储策略将合同文件块存储到P2P网络的节点上,并使用冗余的文件副本来实现容错机制。同样的,合同文件副本在上传前也要经过加密,其数量(一般是固定的)由合同文件块的数量及文件副本放置策略决定。文件及其副本一式三份存储到一个数据中心或服务器中,其中第一个副本放置在上传文件的数据节点上,如果是集群外提交,则随机选择一台磁盘、内存、CPU不太忙的节点存储;第二个副本放置在与第一个副本不同机架上的节点上;第三个副本放置在与第二个副本相同机架的相邻节点上。为了安全起见,合同文件块及其副本被随机放置在用户节点周围,这样恶意攻击者就几乎无法获取合同文件的所有分块。
如图7所示,为本实施例的区块链+云的存储的整体架构,即基于区块链的分布式云存储架构示意图。
进一步地,利用智能合约进行云端和区块链交互,使云端数据和区块链上数据保证一致。
使用智能合约来存储加密的关键字索引和一些相关数据,并完成检索操作,以保证用户数据的私密性。在合同拟定阶段,合同起草方为数据所有者(Data Owner,DO),合同接收方为数据使用者(Data User,DU),这个身份在合同传签过程中可能随时会发生变化(因为不断有新数据产生)。合同数据交互的智能合约分为两种,分别用于共享合同数据和使用合同数据。前者由合同起草方部署并发送给合同接收方,从而完成合同数据流转;后者由合同接收方发布,用于合同签署、检索及查验,所有过程数据都保存在智能合约中。
1、添加用户AddUser
由于我们采用联盟链的架构,对用户管理实行会员制,因此只有联盟链管理员有权限执行AddUser函数(也可由联盟链成员投票决定是否执行)。首先由用户向管理员发起添加新用户的请求,管理员通过加密通道接收待添加用户的身份证书信息并进行验证,验证成功后通过该函数向用户授权联盟链账户并分配公私钥。
2、删除用户RemoveUser
只有联盟链管理员有权限执行该函数。当需要删除某用户时,管理员通过该函数从授权账户列表中删除用户的联盟链账户。
3、为合同文件添加索引AddIndex
只有合同起草方有权限执行该函数。当起草方上传新的合同文件时,他需要从每个文件中选择关键字列表并构建加密关键字索引,并将其存储到智能合约中。
4、删除合同文件DeleteFile
只有合同起草方有权限执行该函数。当DO删除某个合同文件时,需要提供该文件的加密关键字索引和交易ID。
5、删除关键字DeleteKeyword
只有合同起草方有权限执行该函数。当需要删除合同文件的某个关键字时,需要提供该关键字的索引。
6、检索Search
该函数只能由合同起草方或集中授权的用户执行。用户通过加密关键字索引KeywordIndex进行检索,函数返回交易列表TxID和相关联的关键字列表Index。当检索发起方为授权用户时,索前需核对用户余额$msg.value是否足以支付本次检索,并于检索成功后将检索费用$cost从用户钱包中扣除。
只有合同起草方有权限执行该函数。执行此函数后,DO将合同相关的检索费用返还给用户。
8、发送合同元数据给指定用户
只有合同起草方有权限执行该函数。将合同元数据加密后发送给指定用户。
9、接收合同元数据ReceiveContract
该函数只能由合同接收方执行,用于读取合同元数据。接收成功后,DU也可以在本地调取合同数据,而其他人无法查看该过程。
10、数据查验DataSearch
只有合同接收方有权限执行该函数。通过加密关键字索引KeywordIndex调用Search函数,获取并存储检索结果至合同接收方的智能合约中。
11、价值存入Deposit
该函数用于将供数据共享及检索消耗的价值存入账户钱包。
具体的,为实现对上述链融合的文件加密存储方式存储的云端数据进行共享并实现对称密钥的更新,如图8所示,云端数据共享具体包括以下步骤:
步骤S801、数据所有者DO向区块链发出元数据访问请求,请求通过后,数据所有者DO下载元数据密文,所述元数据密文为数据所有者DO用其公钥加密过的元数据密文;数据所有者DO使用其私钥P2对元数据密文进行解密,获得第一密钥S以及分块数据文件的存储位置编号;
本实施例的区块链为联盟链,数据所有者DO向联盟链发出元数据访问请求,联盟节点通过投票通过元数据访问请求。
步骤S802、数据所有者DO对第一密钥S加密生成第二密钥S',再用第一密钥S和第二秘钥S'加密生成一个用于重加密的第三密钥K;
数据所有者DO由第一密钥S加密随机生成另一个64位的随机对称密钥—第二密钥S',随机算法核可由用户自己指定,以此提高安全性。数据所有者DO利用转换密钥生成函数由第一密钥S和第二密钥S'产生一个第三密钥作为代理重加密的转换加密密钥K;
步骤S803、数据所有者DO将第三密钥K通过安全信道传递给文件存储位置节点,对存储节点中的分块数据文件密文进行再次加密,所得到的密文称为重加密密文;
步骤S804、数据所有者DO将重加密密文发送到数据共享节点;
所述数据共享节点为数据所有者DO随机选择。
步骤S805、数据所有者DO通过安全信道将第二密钥S以及数据共享节点的位置共享给数据使用者DU;
步骤S806、DU从数据共享节点下载重加密密文,并用第二密钥解密重加密密文,得到数据文件块的明文信息。
综上所述,本实施例公开的云端数据安全共享方法,实现了云端数据的安全共享,保护数据共享和传输时的数据隐私;采用云链融合的文件加密存储方式,将轻量级元数据保存在区块链上、原始文件存储在云端,扩展区块链的存储容量、提高共识效率;实现了链上链下的数据交互,保证数据的一致性。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (6)

1.一种云端数据安全共享方法,其特征在于,包括:
数据所有者DO获得加密云端数据的第一密钥和云端数据的云端存储节点位置,对第一密钥进行加密运算生成第二密钥;
数据所有者DO由第一密钥加密随机生成另一个随机对称密钥—第二密钥,随机算法核由用户自己指定,提高安全性;
使用第一密钥和第二密钥加密创建用于重加密的第三加密密钥;
将第三加密密钥发送到所述云端存储节点对云端数据进行重加密;
将重加密密文传输到云端共享节点;
数据所有者DO通过安全信道将第二密钥以及数据共享节点的位置共享给数据使用者DU;
数据使用者DU从云端共享节点下载重加密密文,利用第二密钥对重加密密文进行解密,得到云端数据的明文信息;
所述云端数据的存储采用云链融合的文件加密存储方式,将数据原始文件加密后的密文存储在云端存储节点形成云端数据,将所述数据原始文件的元数据加密存储在区块链上;所述元数据中包括对数据原始文件加密的第一密钥信息和数据原始文件加密后的密文在云端存储节点位置;
所述将数据原始文件加密后的密文存储在云端,包括:
将数据原始文件分成相同大小的数据文件块;
利用对称加密算法对每一数据文件块加密得到分块数据文件密文;其中,所述对称加密采用的对称秘钥为第一秘钥;
将分块数据文件密文存储到云端,每一块分块数据文件密文对应一个数据存储节点;
将所述数据原始文件的元数据加密存储在区块链上,采用随机存储策略将分块数据文件存储到P2P网络的节点上,并使用冗余的文件副本来实现容错机制;文件副本在上传前也要经过加密,文件及其副本一式三份存储到一个数据中心或服务器中,其中第一个副本放置在上传文件的数据节点上,如果是集群外提交,则随机选择一台磁盘、内存、CPU不太忙的节点存储;第二个副本放置在与第一个副本不同机架上的节点上;第三个副本放置在与第二个副本相同机架的相邻节点上;将数据文件块及其副本被随机放置在用户节点周围,使恶意攻击者无法获取数据原始文件的所有分块;
所述元数据包括数据文件块的名字、云端存储节点位置、密钥密文、Hash值、以及副本的URL地址在内的轻量级数据;通过云端存储节点位置,区块链上存储的元数据和云端存储的数据文件块一一对应。
2.根据权利要求1所述的云端数据安全共享方法,其特征在于,
数据所有者DO向区块链发出元数据访问请求;请求通过后,数据所有者DO从链上下载用其公钥P1加密过的元数据密文;数据所有者DO使用其私钥P2对元数据密文进行解密,获得第一密钥以及分块数据文件的云端存储节点位置。
3.根据权利要求2所述云端数据安全共享方法,其特征在于,第二密钥为数据所有者DO根据第一密钥采用随机算法加密生成的一个对称密钥,所述随机算法的核由数据所有者DO指定。
4.根据权利要求2所述的云端数据安全共享方法,其特征在于,所述云端共享节点由数据所有者DO随机选择确定。
5.根据权利要求1-4任一项所述的云端数据安全共享方法,其特征在于,所述元数据密文以区块链的交易机制进行流转,随机存储在区块链的P2P网络的节点上。
6.根据权利要求1-4任一项所述的云端数据安全共享方法,其特征在于,还包括使用Melkle树对元数据密文进行完整性验证。
CN202010335215.4A 2020-04-24 2020-04-24 一种云端数据安全共享方法 Active CN111526197B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010335215.4A CN111526197B (zh) 2020-04-24 2020-04-24 一种云端数据安全共享方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010335215.4A CN111526197B (zh) 2020-04-24 2020-04-24 一种云端数据安全共享方法

Publications (2)

Publication Number Publication Date
CN111526197A CN111526197A (zh) 2020-08-11
CN111526197B true CN111526197B (zh) 2023-05-09

Family

ID=71904764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010335215.4A Active CN111526197B (zh) 2020-04-24 2020-04-24 一种云端数据安全共享方法

Country Status (1)

Country Link
CN (1) CN111526197B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112019540B (zh) * 2020-08-27 2022-03-11 莫毓昌 一种面向云计算环境的数据安全共享方法
CN112446048A (zh) * 2020-11-26 2021-03-05 平安科技(深圳)有限公司 一种基于区块链的数据共享方法、系统、终端及存储介质
CN112866222B (zh) * 2021-01-11 2023-04-18 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN112671809B (zh) * 2021-03-17 2021-06-15 北京红云融通技术有限公司 数据传输方法、信源端及接收端
CN113346998B (zh) 2021-08-06 2021-10-15 苏州浪潮智能科技有限公司 密钥更新及文件共享方法、装置、设备、计算机存储介质
CN113660235B (zh) * 2021-08-10 2023-04-28 中和易茂科技服务(北京)有限公司 数据安全共享方法、存储器和处理器
CN113704210A (zh) * 2021-09-03 2021-11-26 维沃移动通信有限公司 数据共享方法和电子设备
CN115021992A (zh) * 2022-05-27 2022-09-06 中国银行股份有限公司 基于区块链的手机银行基金数据处理方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189727A (zh) * 2018-09-14 2019-01-11 江西理工大学 一种基于属性代理重加密的区块链密文云存储共享方法
CN109768987A (zh) * 2019-02-26 2019-05-17 重庆邮电大学 一种基于区块链的数据文件安全隐私存储和分享方法
CN110430161A (zh) * 2019-06-27 2019-11-08 布比(北京)网络技术有限公司 一种基于区块链的可监管数据匿名分享方法及系统
US10496850B1 (en) * 2018-06-04 2019-12-03 Capital One Services, Llc Secure decentralized system utilizing smart contracts, a blockchain, and/or a distributed file system

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9569771B2 (en) * 2011-04-29 2017-02-14 Stephen Lesavich Method and system for storage and retrieval of blockchain blocks using galois fields
WO2017195161A1 (en) * 2016-05-13 2017-11-16 nChain Holdings Limited A method and system for verifying ownership of a digital asset using a distributed hash table and a peer-to-peer distributed ledger
CN108259169B (zh) * 2018-01-09 2021-07-20 北京大学深圳研究生院 一种基于区块链云存储的文件安全分享方法及系统
US10771240B2 (en) * 2018-06-13 2020-09-08 Dynamic Blockchains Inc Dynamic blockchain system and method for providing efficient and secure distributed data access, data storage and data transport
CN109120639B (zh) * 2018-09-26 2021-03-16 众安信息技术服务有限公司 一种基于区块链的数据云存储加密方法及系统
CN110417750B (zh) * 2019-07-09 2020-07-03 北京健网未来科技有限公司 基于区块链技术的文件读取和存储的方法、终端设备和存储介质
CN110535833B (zh) * 2019-08-07 2020-06-09 中国石油大学(北京) 一种基于区块链的数据共享控制方法
CN110610102B (zh) * 2019-09-23 2021-06-25 郑州师范学院 一种数据访问方法、装置及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10496850B1 (en) * 2018-06-04 2019-12-03 Capital One Services, Llc Secure decentralized system utilizing smart contracts, a blockchain, and/or a distributed file system
CN109189727A (zh) * 2018-09-14 2019-01-11 江西理工大学 一种基于属性代理重加密的区块链密文云存储共享方法
CN109768987A (zh) * 2019-02-26 2019-05-17 重庆邮电大学 一种基于区块链的数据文件安全隐私存储和分享方法
CN110430161A (zh) * 2019-06-27 2019-11-08 布比(北京)网络技术有限公司 一种基于区块链的可监管数据匿名分享方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周艺华 ; 李洪明 ; .基于区块链的数据管理方案.信息安全研究.2020,(第01期),全文. *

Also Published As

Publication number Publication date
CN111526197A (zh) 2020-08-11

Similar Documents

Publication Publication Date Title
CN111523133B (zh) 一种区块链与云端数据协同共享方法
CN111526197B (zh) 一种云端数据安全共享方法
WO2020259635A1 (zh) 一种区块链数据共享方法及装置
Shin et al. A survey of secure data deduplication schemes for cloud storage systems
CN108259169B (zh) 一种基于区块链云存储的文件安全分享方法及系统
CN108632292B (zh) 基于联盟链的数据共享方法和系统
CN108418796B (zh) 云数据多副本完整性验证及关联删除的方法、云存储系统
CN111047324B (zh) 用于更新区块链节点处的公钥集合的方法及装置
CN111130757A (zh) 一种基于区块链的多云cp-abe访问控制方法
CN112204921A (zh) 利用区块链和多方计算保护轻量级设备的数据隐私的系统和方法
JP6363032B2 (ja) 鍵付替え方向制御システムおよび鍵付替え方向制御方法
Wang et al. A key-sharing based secure deduplication scheme in cloud storage
Yang et al. Achieving efficient secure deduplication with user-defined access control in cloud
Fan et al. TraceChain: A blockchain‐based scheme to protect data confidentiality and traceability
CN110881063A (zh) 一种隐私数据的存储方法、装置、设备及介质
Zhang et al. DOPIV: Post-quantum secure identity-based data outsourcing with public integrity verification in cloud storage
Nayak et al. SEDS: secure and efficient server-aided data deduplication scheme for cloud storage
CN110930251A (zh) 基于联盟链和隐式证书的抗量子计算云存储方法及系统
Li et al. Lattice-based privacy-preserving and forward-secure cloud storage public auditing scheme
Agarwala et al. DICE: A dual integrity convergent encryption protocol for client side secure data deduplication
CN108809996B (zh) 不同流行度的删重存储数据的完整性审计方法
Ni et al. Secure outsourced data transfer with integrity verification in cloud storage
Guo et al. Two-party interactive secure deduplication with efficient data ownership management in cloud storage
Abo-Alian et al. Auditing-as-a-service for cloud storage
Yang et al. Provable Ownership of Encrypted Files in De-duplication Cloud Storage.

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant