CN116155585A - 一种数据共享方法和系统 - Google Patents

一种数据共享方法和系统 Download PDF

Info

Publication number
CN116155585A
CN116155585A CN202310101523.4A CN202310101523A CN116155585A CN 116155585 A CN116155585 A CN 116155585A CN 202310101523 A CN202310101523 A CN 202310101523A CN 116155585 A CN116155585 A CN 116155585A
Authority
CN
China
Prior art keywords
private key
server
data
file
data user
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.)
Pending
Application number
CN202310101523.4A
Other languages
English (en)
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.)
Tianyi Safety Technology Co Ltd
Original Assignee
Tianyi Safety Technology 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 Tianyi Safety Technology Co Ltd filed Critical Tianyi Safety Technology Co Ltd
Priority to CN202310101523.4A priority Critical patent/CN116155585A/zh
Publication of CN116155585A publication Critical patent/CN116155585A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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]
    • 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
    • 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/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请公开了一种数据共享方法和系统,包括:第一设备将数据所有者的第一属性信息和至少一个数据使用者的第二属性信息发送至第一服务器;第一服务器根据第一属性信息和主私钥生成数据所有者的唯一私钥,根据第二属性信息生成至少一个数据使用者各自的唯一私钥;第一设备基于数据所有者的唯一私钥对分区后的待共享文件进行加密,发送至第二服务器;第一设备应用系统公钥对至少一个数据使用者的访问权限信息进行加密,并发送至第二服务器;第二服务器将加密后的文件和访问权限信息发送至第二设备;在目标数据使用者身份验证成功时,第二设备应用对加密后的访问权限信息进行解密得到的目标数据使用者的唯一私钥对加密后的文件进行解密,以实现共享。

Description

一种数据共享方法和系统
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据共享方法和系统。
背景技术
随着业务数据管理需求的增加,越来越多的大型企业利用云环境进行数据管理,使用云接入和数据共享可以大大降低数据管理成本、存储灵活性以及存储容量。然而数据所有者面临着一担上传,就会失去对数据的控制这一问题,使得未经授权的数据访问敞开了大门。对数据所有者来说,需要高效、安全地授予一组数据不同级别的访问权限,有选择的和数据用户共享信息。
相关技术中,大多数访问只能实现部分策略隐藏,如果使用全部策略隐藏则会带来加密效率低下等问题,同时密钥长度会给传输和存储带来不便。
因此,面对云上共享数据的安全和隐私,需要解决数据机密性、隐私保护、高效解密、算法效率、细粒度访问控制以及抗串通的功能。因此需要结合分级访问结构管理共享敏感数据的分级组织的高效加密方式。
发明内容
本申请实施例提供一种数据共享方法和系统,用以更安全和高效的实现数据共享。
第一方面,本申请一实施例提供了一种数据共享方法,应用于数据共享系统,数据共享系统包括第一服务器、第二服务器、第一设备和第二设备,其中,第一设备为数据所有者所使用的设备,第二设备为目标数据使用者所使用的设备,方法包括:
第一服务器随机生成系统公钥和主私钥;
第一设备将数据所有者的第一属性信息和设定的至少一个数据使用者的第二属性信息发送至第一服务器;
第一服务器根据第一属性信息和主私钥生成数据所有者的唯一私钥,并根据第二属性信息生成至少一个数据使用者各自的唯一私钥;
第一设备将待共享文件进行分区,并基于数据所有者的唯一私钥对分区后的文件进行加密,并将加密后的文件发送至第二服务器;
第一设备应用系统公钥对至少一个数据使用者的访问权限信息进行加密,并将加密后的访问权限信息发送至第二服务器;
第二服务器将所述加密后的文件和加密后的访问权限信息发送至所述第二设备;
所述第二设备根据加密后的访问权限信息对目标数据使用者进行身份验证,若验证成功,则所述第二设备应用对加密后的访问权限信息进行解密得到的目标数据使用者的唯一私钥对加密后的文件进行解密,以供目标数据使用者共享待共享文件。
在一些示例性的实施方式中,第一服务器随机生成系统公钥和主私钥,包括:
第一服务器根据选取的概率函数、安全参数和随机值生成系统公钥和主私钥。
在一些示例性的实施方式中,选取的概率函数为setup函数。
在一些示例性的实施方式中,待共享文件分区后得到K个文件,基于数据所有者的唯一私钥对分区后的文件进行加密,包括:
针对各个分区后的第k个文件,应用对应的密钥进行加密;其中,第k+1个文件的密钥是根据第k个文件的密钥通过第一设定函数确定的;第一个文件的密钥是数据所有者的唯一私钥;K为大于或等于1的正整数;k为1到K中的任意正整数。
在一些示例性的实施方式中,第一设定函数为符合不可逆性、弱抗碰撞性和强抗碰撞性的函数。
在一些示例性的实施方式中,第一设备应用系统公钥对至少一个数据使用者的访问权限信息进行加密,包括:
第一设备应用系统公钥以及至少一个数据使用者的唯一私钥,以及授权属性集合信息对至少一个数据使用者的访问权限信息进行加密。
在一些示例性的实施方式中,第二设备根据加密后的访问权限信息对目标数据使用者进行身份验证,包括:
第二设备判断目标数据使用者在解密时输入的密钥是否为至少一个数据使用者的唯一私钥中的一个。
在一些示例性的实施方式中,第二设备应用对加密后的访问权限信息进行解密得到的目标数据使用者的唯一私钥对加密后的文件进行解密之后,方法还包括:
第二设备应用目标数据使用者的唯一私钥确定目标数据使用者的唯一私钥的关联私钥,并应用关联私钥对加密后的文件关联的文件进行解密;其中,关联的文件为其他分区的文件。
在一些示例性的实施方式中,关联私钥为比目标数据使用者的唯一私钥的访问权限更低的私钥,关联的文件为比得到的解密文件的访问权限更低级的文件。
第一方面,本申请一实施例提供了一种数据共享系统,包括第一服务器、第二服务器、第一设备和第二设备,第一服务器、第二服务器、第一设备和第二设备配合执行第一方面的方法。
本申请实施例具备如下有益效果:第一服务器随机生成系统公钥和主私钥;
第一设备将数据所有者的第一属性信息和设定的至少一个数据使用者的第二属性信息发送至第一服务器;第一服务器根据第一属性信息和主私钥生成数据所有者的唯一私钥,并根据第二属性信息生成至少一个数据使用者各自的唯一私钥;第一设备将待共享文件进行分区,并基于数据所有者的唯一私钥对分区后的文件进行加密,并将加密后的文件发送至第二服务器;第一设备应用系统公钥对至少一个数据使用者的访问权限信息进行加密,并将加密后的访问权限信息发送至第二服务器;第二服务器将加密后的文件和加密后的访问权限信息发送至第二设备;第二设备根据加密后的访问权限信息对目标数据使用者进行身份验证,若验证成功,则应用对加密后的访问权限信息进行解密得到的目标数据使用者的唯一私钥对加密后的文件进行解密,以供目标数据使用者共享待共享文件。用以更安全和高效的实现数据共享。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,显而易见地,下面所介绍的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的一种数据共享方法的系统架构图;
图2为本申请一实施例提供的一种数据共享方法的流程图;
图3为本申请一实施例提供的另一种数据共享方法的流程图;
图4为本申请一实施例提供的一种数据共享系统的结构示意图;
图5为本申请一实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
为了方便理解,下面对本申请实施例中涉及的名词进行解释:
(1)加密散列函数h:可以将任意大小的数据映射到固定大小的位串的安全算法。它满足以下条件:
1)不可逆性:对于任何给定的y,找到一个x,使得h(x)=y在计算上不可行。
2)弱抗碰撞性:对于任何给定的x,找到x′≠x使得h(x′)=h(x)在计算上不可行。
3)强抗碰撞性:找到任何两个不同的输入x和x′使得h(x′)=h(x)在计算上不可行。
(2)双线性运算定义:
Figure BDA0004073262470000031
和/>
Figure BDA0004073262470000032
是阶为素数p的乘法循环群。并且定义在这两个群上的一个映射关系e:/>
Figure BDA0004073262470000033
并且满足以下的性质:
1)双线性:对于任意的
Figure BDA0004073262470000034
e(ga,hb)=e(g,h)a,b均成立。
2)非退化性:满足
Figure BDA0004073262470000035
满足e(g,g)≠1。
3)可计算性:双线性映射函数e可在多项式时间内计算出来。
(3)决策n-BDHE假设定义:随机选择两个生成器
Figure BDA0004073262470000036
并随机选择/>
Figure BDA0004073262470000037
给定/>
Figure BDA0004073262470000038
如果没有算法能够在多项式时间内区分出/>
Figure BDA0004073262470000041
还是/>
Figure BDA0004073262470000042
则称上述假设成立。
(4)决策线性(DL)假设定义:设g是
Figure BDA00040732624700000424
的随机生成器,从/>
Figure BDA0004073262470000043
中随机选择设g是/>
Figure BDA00040732624700000425
的随机生成器,从/>
Figure BDA0004073262470000044
中随机选择z1,z2,z3。给定/>
Figure BDA0004073262470000045
如果没有算法能够在多项式时间内区分出/>
Figure BDA00040732624700000426
还是/>
Figure BDA0004073262470000046
则称上述假设成立。给定/>
Figure BDA0004073262470000047
如果没有算法能够在多项式时间内区分出/>
Figure BDA0004073262470000048
还是/>
Figure BDA0004073262470000049
则称上述假设成立。/>
(5)访问结构定义:一组单个个体可以拥有的属性,判断是否允许访问秘密。其满足如下规则:
假设{P1,…,Pn}成为一组可以重构秘密的属性集合。集合是单调的,即如果
Figure BDA00040732624700000410
且/>
Figure BDA00040732624700000411
那么/>
Figure BDA00040732624700000412
Figure BDA00040732624700000413
中的集合称为授权集合,不在/>
Figure BDA00040732624700000414
中的集合称为非授权集合。
(6)层级访问树
Figure BDA00040732624700000415
定义:表示/>
Figure BDA00040732624700000416
级的访问结构,它决定了数据用户是否可以解密该级别的密文eski。/>
Figure BDA00040732624700000417
可由多个节点组成。/>
Figure BDA00040732624700000418
表示/>
Figure BDA00040732624700000419
的第l个节点,/>
Figure BDA00040732624700000420
的非叶节点以门限门的形式存在,叶节点表示数据用户可能拥有的属性值。每个/>
Figure BDA00040732624700000421
的根节点/>
Figure BDA00040732624700000422
携带一个秘密ski,拥有正确属性集的数据使用者可满足/>
Figure BDA00040732624700000423
要求并获得ski
(7)第一服务器:也可以称为密钥颁发者,视为可信的平台,授权中心负责实体注册和为用户生成基于属性的密钥。
(8)第二服务器:为云服务器,视为可信的平台,充当数据所有者提供数据共享和存储的载体。
(9)第一设备:数据所有者的设备。第一设备产生数据,制定访问策略并基于制定的访问策略加密自己的数据上传到云服务器。
(10)第二设备:数据使用者的设备。第二设备从云服务器中获取密文,数据使用者用户可以使用自己的私钥对密文进行解密。
附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
在具体实践过程中,随着业务数据管理需求的增加,越来越多的大型企业利用云环境进行数据管理,使用云接入和数据共享可以大大降低数据管理成本、存储灵活性以及存储容量。然而数据所有者面临着一担上传,就会失去对数据的控制这一问题,使得未经授权的数据访问敞开了大门。对数据所有者来说,需要高效、安全地授予一组数据不同级别的访问权限,有选择的和数据用户共享信息。
基于密文策略属性基加密(Ciphertext-Policy Attribute-Based Encryption,CP-ABE)是一种类似于基于角色的访问控制,它通过将访问结构集成到密文中,使得数据所有者控制哪个数据用户可以解密密文。现有大多数CP-ABE访问只能实现部分策略隐藏,如果使用全部策略隐藏则会带来解密效率低下等问题,同时密钥长度会给传输与存储带来不便。同时,大多数CP-ABE中的用户彼此独立,在大型多层组织的情况下计算复杂度会比较高,因此需要使用细粒度的访问控制,现有的方案有基于分层属性的加密(HierarchicalAttribute-Based Encryption,HABE),HABE由一个生成并分发参数和密钥等根主、多个域主和众多用户组成,由于同一域机构管理的所有属性都在一个析取子句中,当相同属性的副本由其他域管理机构管理时,该方案就会失效。
面对云上共享数据的安全和隐私,需要解决数据机密性、隐私保护、高效解密、算法效率、细粒度访问控制以及抗串通的功能。因此需要结合分级访问结构管理共享敏感数据的分级组织的高效加密方式。
为此,本申请提供了一种数据共享方法,应用于数据共享系统,数据共享系统包括第一服务器、第二服务器、第一设备和第二设备。第一服务器、第二服务器、第一设备和第二设备配合实现数据共享方法,提高了数据共享的安全性和高效性。
在介绍完本申请实施例的设计思想之后,下面对本申请实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本申请实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
参考图1,其为本申请实施例提供的一种数据共享方法的系统架构图。其中,第一服务器(密钥颁发者)生成系统公钥,并将各个数据使用者的唯一私钥分发给各个数据使用者(图1中用一个数据使用者示例)。数据所有者隐藏访问策略并加密,将密文发送自第二服务器,数据使用者对来自第二服务器的密文进行解密,以实现更高效且安全的数据共享。
当然,本申请实施例提供的方法并不限用于图1所示的应用场景中,还可以用于其它可能的应用场景,本申请实施例并不进行限制。对于图1所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。
为进一步说明本申请实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本申请实施例提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在方法中可以包括更多或者更少的操作步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。
下面结合图1所示的应用场景,对本申请实施例提供的技术方案进行说明。
参考图2,本申请实施例提供一种数据共享方法,应用于数据共享系统,数据共享系统包括第一服务器、第二服务器、第一设备和第二设备。该方法包括以下步骤:
S201、第一服务器随机生成系统公钥和主私钥。
S202、第一设备将数据所有者的第一属性信息和设定的至少一个数据使用者的第二属性信息发送至第一服务器。
S203、第一服务器根据第一属性信息和主私钥生成数据所有者的唯一私钥,并根据第二属性信息生成至少一个数据使用者各自的唯一私钥。
S204、第一设备将待共享文件进行分区,并基于数据所有者的唯一私钥对分区后的文件进行加密。
S205、第一设备将加密后的文件发送至第二服务器。
S206、第一设备应用系统公钥对至少一个数据使用者的访问权限信息进行加密。
S207、第一设备将加密后的访问权限信息发送至第二服务器。
S208、第二服务器将加密后的文件和加密后的访问权限信息发送至第二设备。
S209、第二设备根据加密后的访问权限信息对目标数据使用者进行身份验证,若验证成功,则应用对加密后的访问权限信息进行解密得到的目标数据使用者的唯一私钥对加密后的文件进行解密,以供目标数据使用者共享待共享文件。
本申请实施例具备如下有益效果:第一服务器随机生成系统公钥和主私钥;
第一设备将数据所有者的第一属性信息和设定的至少一个数据使用者的第二属性信息发送至第一服务器;第一服务器根据第一属性信息和主私钥生成数据所有者的唯一私钥,并根据第二属性信息生成至少一个数据使用者各自的唯一私钥;第一设备将待共享文件进行分区,并基于数据所有者的唯一私钥对分区后的文件进行加密,并将加密后的文件发送至第二服务器;第一设备应用系统公钥对至少一个数据使用者的访问权限信息进行加密,并将加密后的访问权限信息发送至第二服务器;第二服务器根据加密后的访问权限信息对目标数据使用者进行身份验证,若验证成功,则将加密后的文件发送至第二设备;第二设备应用对加密后的访问权限信息进行解密得到的目标数据使用者的唯一私钥对加密后的文件进行解密,以供目标数据使用者共享待共享文件。用以更安全和高效的实现数据共享。
涉及到S201,第一服务器根据选取的概率函数、安全参数和随机值生成系统公钥和主私钥。
其中,第一服务器根据预先选取的概率函数setup,并初始化setup函数,并取一个安全系数κ,随机选择值α,
Figure BDA0004073262470000061
生成系统公钥PK和主私钥MK。/>
Figure BDA0004073262470000062
和/>
Figure BDA0004073262470000063
是两个阶为大素数p的双线性群,g是/>
Figure BDA0004073262470000065
的生成元。
Figure BDA0004073262470000064
MK={β,gα}。
涉及到S202,第一设备为数据所有者的设备,第二设备为数据使用者的设备,而数据所有者会提前设定哪些数据使用者有共享数据的权限。例如,数据拥有者是A,可以共享数据的数据使用者为B、C和D。数据所有者的属性信息称为第一属性信息,数据使用者的属性信息称为第二属性信息。示例性的,属性信息比如是用户类型(经理或者客户)。
该示例中,第一设备在数据所有者有意共享数据时,将数据所有者的第一属性信息和设定的至少一个数据使用者的第二属性信息发送至第一服务器。这样,第一服务器可以运行KeyGen算法来计算密钥。
S203、第一服务器根据第一属性信息和主私钥生成数据所有者的唯一私钥,并根据第二属性信息生成至少一个数据使用者各自的唯一私钥。
以生成任意一个数据使用者的唯一私钥的过程为例进行说明。
KeyGen算法以MK,属性集
Figure BDA0004073262470000071
的数据使用者j(Aj,u表示数据使用者j的第u个属性),并选择随机值/>
Figure BDA0004073262470000072
作为输入。生成对于数据使用者的唯一私钥SKj。在这一过程中,KeyGen算法还会给集合中的每个属性生成一个随机值
Figure BDA0004073262470000073
Figure BDA0004073262470000074
涉及到S204、第一设备将待共享文件进行分区,并基于数据所有者的唯一私钥对分区后的文件进行加密。
其中,待共享文件分区后得到K个文件,针对各个分区后的各个文件,第k+1个文件的密钥是根据第k个文件的密钥通过第一设定函数确定的;第一个文件的密钥是数据所有者的唯一私钥;K为大于或等于1的正整数;k为1到K中的任意正整数。
具体的,第一设备将待共享文件分成一组k个数据节,一组称为一个区。
Figure BDA0004073262470000075
每个Fi与一个阈值关联,用于根据用户特权向其分配访问权限。/>
如果
Figure BDA0004073262470000079
由一条记录组成,Fi可以表示一个或多个记录属性;如果/>
Figure BDA0004073262470000076
由多条记录组成,可以将每条记录作为一个整体,将阈值相似的聚集在一个组中,Fi可以表示一条或多条记录。或者在特定的记录属性上分区,Fi可以表示一个或多个记录属性。针对每个数据分区Fi,使用ski加密。用户随机选择sk1,{sk2…skk}满足ski+1=h(ski)。
其中,第一设定函数为符合不可逆性、弱抗碰撞性和强抗碰撞性的函数。凡是符合该条件的函数均可,该示例中第一设定函数为h函数。
上述实施例,文件分区技术,针对不同类型的文件提出不同的分区方法,以适应同一文件的不同访问权限设置,适应多级权限结构。能够针对不同的文件类型划分数据区块,针对不同敏感度的数据区块做加密处理,拥有高权限的用户可以轻松获取到低权限信息。
涉及到S205,第一设备将加密后的文件发送至第二服务器。
涉及到S206,第一设备应用系统公钥对至少一个数据使用者的访问权限信息进行加密。
其中,第一设备应用系统公钥以及至少一个数据使用者的唯一私钥,以及授权属性集合信息对至少一个数据使用者的访问权限信息进行加密。示例性的,第一设备的加密过程中,运行加密算法,加密算法对应的加密函数的输入是由setup函数生成的系统公钥PK,至少一个数据使用者的唯一私钥以授权属性集
合信息(比如是定义
Figure BDA0004073262470000077
处授权属性集的访问树/>
Figure BDA0004073262470000078
),则加密函数的输出为加密后的访问权限信息。而由于访问权限信息是配置在数据使用者的唯一私钥中,因此,加密后的访问权限信息也可以称为加密的对称私钥eski
涉及到S207,第一设备将加密后的访问权限信息发送至第二服务器。
涉及到S208,第二服务器将加密后的文件和加密后的访问权限信息发送至第二设备。
涉及到S209,在对目标数据使用者进行身份验证时,通常是验证目标数据使用者是否为设定的至少一个数据使用者中的至少一个。具体的,第二设备判断目标数据使用者在解密时输入的密钥是否为至少一个数据使用者的唯一私钥中的一个。
其中,如果目标数据使用者有查看共享数据的需求,可以通过自身的第二设备向第二服务器发送请求。验证用户权限时,由于数据使用者执行Decrypt算法,该函数的输入是
Figure BDA0004073262470000081
对应的对称密钥eski以及用户j的唯一私钥SKj。如果数据使用者的SKj满足/>
Figure BDA0004073262470000082
规则,那么用户可以解密eski并获取ski
在一个具体的例子中,Decrypt函数是
Figure BDA0004073262470000083
上的一个递归函数。Decrypt通过递归调用DecryptNode/>
Figure BDA0004073262470000084
Figure BDA0004073262470000085
是/>
Figure BDA0004073262470000086
上的节点。执行/>
Figure BDA0004073262470000087
时,如果/>
Figure BDA0004073262470000088
是叶子结点且/>
Figure BDA0004073262470000089
返回/>
Figure BDA00040732624700000810
若/>
Figure BDA00040732624700000823
那么
Figure BDA00040732624700000815
如果/>
Figure BDA00040732624700000817
不是叶子结点,则对/>
Figure BDA00040732624700000818
的每个子节点/>
Figure BDA00040732624700000819
计算/>
Figure BDA00040732624700000820
并存储为/>
Figure BDA00040732624700000821
第二设备应用对加密后的访问权限信息进行解密得到的目标数据使用者的唯一私钥对加密后的文件进行解密,以供目标数据使用者共享待共享文件。
其中,数据使用者利用ski解密即可获得明文Fi。如果数据使用者想要获得级别
Figure BDA00040732624700000822
的文件{Fi+1…Fk}。另外,第二设备应用目标数据使用者的唯一私钥确定目标数据使用者的唯一私钥的关联私钥,并应用关联私钥对加密后的文件关联的文件进行解密;其中,关联的文件为其他分区的文件。关联私钥为比目标数据使用者的唯一私钥的访问权限更低的私钥,关联的文件为比得到的解密文件的访问权限更低级的文件。
例如,用户可以利用ski计算出低级别的对称密钥{ski+1…skk}来解密。
本申请实施例,对现有的CP-ABE框架进行改进,能够实现所有属性隐藏,同时提出了相应的高效权限识别方法,与相关技术中的数据基加密方案只能实现部分属性隐藏相比,提出的算法既保证了数据的保密性,又保护了用户的个人隐私。
其中,相关技术中的CP-ABE中用户彼此独立,针对大型企业中数据分级共享的需求提出了一种集成到访问结构树中的多级访问结构。现有的树形机构方案如HABE当相同属性的副本由其他域管理机构管理时,该方案就会失效。因此,本申请实施例,将访问结构集成到一个整体结构中,可以使云端用户共享一份密文,节省了存储空间。同时提出一种简化的访问结构,降低计算复杂度。
其中,相关技术中的CP-ABE密钥长度大多会随着用户属性的增长而变化,本申请实施例提出的基于哈希和双线性的加密算法实现了恒定私钥大小,私钥大小与用户属性无关,降低了传输和存储成本。
另外,本申请实施例所提出的算法安全有效,可以在决策n-BDHE问题和决策线性假设下通过验证,实现选择性安全与匿名性。
综上,本申请实施例,基于安全数据中台构建一种基于CP-ABE的多级权限数据共享策略,使用一种对策略进行完全隐藏的加密方式,并提出相应的高效的属性验证方式,同时提出树形多级权限共享策略,以满足细粒度的访问控制,从而改进现有的数据共享策略。
在实践过程中,此方法还可以在多个场景下实施并运用,如下列举:
(1)电子医疗数据共享场景
在电子医疗环境中,病人的医疗数据被上传到了云服务器,用户(如医生,医疗机构,病人家属)则可访问该数据以便对病人进行进一步治疗。同时患者可能只希望特定的医生访问自己病例中的敏感部分。因此,实现一种多级权限数据共享策略,有助于保护病人隐私,为患者提供优质服务。
(2)内部电子数据共享场景
在内部电子数据共享场景中,技术部的数据上传到服务器,供同部门人员、售前人员、或是部门领导查阅,但是不同的用户能访问的数据内容不同,因此,实现一种多级权限数据共享策略,有助于在提高办公效率,保证数据隐私。
为了使本申请的技术方案更完善,参见图3,下面用一个完整的流程图进行说明:
S301、第一服务器根据选取的概率函数setup、安全参数和随机值生成系统公钥和主私钥。
S302、第一设备将数据所有者的第一属性信息和设定的至少一个数据使用者的第二属性信息发送至第一服务器。
S303、第一服务器根据第一属性信息和主私钥生成数据所有者的唯一私钥,并根据第二属性信息生成至少一个数据使用者各自的唯一私钥。
S304、第一设备将待共享文件进行分区,并基于数据所有者的唯一私钥对分区后的文件进行加密。
S305、第一设备将加密后的文件发送至第二服务器。
S306、第一设备应用系统公钥以及至少一个数据使用者的唯一私钥,以及授权属性集合信息对至少一个数据使用者的访问权限信息进行加密。
S307、第一设备将加密后的访问权限信息发送至第二服务器。
S308、第二服务器将加密后的文件和加密后的访问权限信息发送至第二设备。
S309、第二设备判断目标数据使用者在解密时输入的密钥是否为至少一个数据使用者的唯一私钥中的一个。
S310、第二设备应用对加密后的访问权限信息进行解密得到的目标数据使用者的唯一私钥对加密后的文件进行解密;应用目标数据使用者的唯一私钥确定目标数据使用者的唯一私钥的关联私钥,并应用关联私钥对加密后的文件关联的文件进行解密;供目标数据使用者共享待共享文件。
如图4所示,本申请实施例提供一种数据共享系统,包括第一服务器41、第二服务器42、第一设备43和第二设备44,第一服务器41、第二服务器42、第一设备43和第二设备44配合上述实施例的方法。
基于与上述数据共享方法相同的发明构思,本申请实施例还提供了一种电子设备该电子设备中可以数据共享系统,该电子设备具体(可以为智能设备内部的控制设备或控制系统,也可以是与智能设备通信的外部设备,如)可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(Persokal Digital Assistakt,PDA)、服务器等。如图5所示,该电子设备可以包括处理器51和存储器52。
处理器51可以是通用处理器,例如中央处理器(CPU)、数字信号处理器(DigitalSigkal Processor,DSP)、专用集成电路(Applicatiok Specific Iktegrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器52作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Rakdom Access Memory,RAM)、静态随机访问存储器(Static Rakdom Access Memory,SRAM)、可编程只读存储器(Programmable Read Okly Memory,PROM)、只读存储器(Read Okly Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Okly Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器52还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;上述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于:移动存储设备、随机存取存储器(RAM,Rakdom Access Memory)、磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(KAKD FLASH)、固态硬盘(SSD))等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例方法的全部或部分。而前述的存储介质包括:移动存储设备、随机存取存储器(RAM,Rakdom Access Memory)、磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(KAKD FLASH)、固态硬盘(SSD))等各种可以存储程序代码的介质。
以上实施例仅用以对本申请的技术方案进行了详细介绍,但以上实施例的说明只是用于帮助理解本申请实施例的方法,不应理解为对本申请实施例的限制。本技术领域的技术人员可轻易想到的变化或替换,都应涵盖在本申请实施例的保护范围之内。

Claims (10)

1.一种数据共享方法,其特征在于,应用于数据共享系统,所述数据共享系统包括第一服务器、第二服务器、第一设备和第二设备,其中,所述第一设备为数据所有者所使用的设备,所述第二设备为目标数据使用者所使用的设备,所述方法包括:
第一服务器随机生成系统公钥和主私钥;
第一设备将所述数据所有者的第一属性信息和设定的至少一个数据使用者的第二属性信息发送至所述第一服务器;
所述第一服务器根据所述第一属性信息和所述主私钥生成所述数据所有者的唯一私钥,并根据所述第二属性信息生成所述至少一个数据使用者各自的唯一私钥;
所述第一设备将待共享文件进行分区,并基于所述数据所有者的唯一私钥对分区后的文件进行加密,并将加密后的所述文件发送至第二服务器;
所述第一设备应用所述系统公钥对所述至少一个数据使用者的访问权限信息进行加密,并将加密后的访问权限信息发送至第二服务器;
所述第二服务器将所述加密后的文件和加密后的访问权限信息发送至所述第二设备;
所述第二设备根据所述加密后的访问权限信息对目标数据使用者进行身份验证,若验证成功,则所述应用对所述加密后的访问权限信息进行解密得到的所述目标数据使用者的唯一私钥对所述加密后的文件进行解密,以供所述目标数据使用者共享所述待共享文件。
2.根据权利要求1所述的方法,其特征在于,所述第一服务器随机生成系统公钥和主私钥,包括:
所述第一服务器根据选取的概率函数、安全参数和随机值生成系统公钥和主私钥。
3.根据权利要求2所述的方法,其特征在于,所述选取的概率函数为setup函数。
4.根据权利要求1所述的方法,其特征在于,所述待共享文件分区后得到K个文件,所述基于所述数据所有者的唯一私钥对分区后的文件进行加密,包括:
针对各个分区后的第k个文件,应用对应的密钥进行加密;其中,第k+1个文件的密钥是根据第k个文件的密钥通过第一设定函数确定的;第一个文件的密钥是所述数据所有者的唯一私钥;所述K为大于或等于1的正整数;k为1到K中的任意正整数。
5.根据权利要求4所述的方法,其特征在于,所述第一设定函数为符合不可逆性、弱抗碰撞性和强抗碰撞性的函数。
6.根据权利要求1所述的方法,其特征在于,所述第一设备应用所述系统公钥对所述至少一个数据使用者的访问权限信息进行加密,包括:
所述第一设备应用所述系统公钥以及所述至少一个数据使用者的唯一私钥,以及授权属性集合信息对所述至少一个数据使用者的访问权限信息进行加密。
7.根据权利要求1所述的方法,其特征在于,所述第二设备根据所述加密后的访问权限信息对目标数据使用者进行身份验证,包括:
所述第二设备判断目标数据使用者在解密时输入的密钥是否为所述至少一个数据使用者的唯一私钥中的一个。
8.根据权利要求1所述的方法,其特征在于,所述第二设备应用对加密后的访问权限信息进行解密得到的所述目标数据使用者的唯一私钥对加密后的文件进行解密之后,所述方法还包括:
所述第二设备应用所述目标数据使用者的唯一私钥确定所述目标数据使用者的唯一私钥的关联私钥,并应用所述关联私钥对所述加密后的文件关联的文件进行解密;其中,所述关联的文件为其他分区的文件。
9.根据权利要求8所述的方法,其特征在于,所述关联私钥为比所述目标数据使用者的唯一私钥的访问权限更低的私钥,所述关联的文件为比得到的解密文件的访问权限更低级的文件。
10.一种数据共享系统,其特征在于,包括第一服务器、第二服务器、第一设备和第二设备,所述第一服务器、第二服务器、第一设备和第二设备配合执行权利要求1~9任一项所述的方法。
CN202310101523.4A 2023-01-18 2023-01-18 一种数据共享方法和系统 Pending CN116155585A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310101523.4A CN116155585A (zh) 2023-01-18 2023-01-18 一种数据共享方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310101523.4A CN116155585A (zh) 2023-01-18 2023-01-18 一种数据共享方法和系统

Publications (1)

Publication Number Publication Date
CN116155585A true CN116155585A (zh) 2023-05-23

Family

ID=86357829

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310101523.4A Pending CN116155585A (zh) 2023-01-18 2023-01-18 一种数据共享方法和系统

Country Status (1)

Country Link
CN (1) CN116155585A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117544431A (zh) * 2024-01-10 2024-02-09 北京中微盛鼎科技有限公司 一种团队协作过程中分布式信息安全共享方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117544431A (zh) * 2024-01-10 2024-02-09 北京中微盛鼎科技有限公司 一种团队协作过程中分布式信息安全共享方法
CN117544431B (zh) * 2024-01-10 2024-03-15 北京中微盛鼎科技有限公司 一种团队协作过程中分布式信息安全共享方法

Similar Documents

Publication Publication Date Title
RU2351078C2 (ru) Эффективное управление генерациями криптографических ключей
US8625802B2 (en) Methods, devices, and media for secure key management in a non-secured, distributed, virtualized environment with applications to cloud-computing security and management
Namasudra et al. Secure and efficient data access control in cloud computing environment: a survey
US8995655B2 (en) Method for creating asymmetrical cryptographic key pairs
CN106161402A (zh) 基于云环境的加密机密钥注入系统、方法及装置
CN112751670B (zh) 一种多中心密文策略的属性基可搜索加密及相应的搜索获取数据的方法
JP2023500570A (ja) コールドウォレットを用いたデジタルシグニチャ生成
CN108632385B (zh) 基于时间序列的多叉树数据索引结构云存储隐私保护方法
CN114239046A (zh) 数据共享方法
US20240064009A1 (en) Distributed anonymized compliant encryption management system
Sultan et al. Securing organization’s data: A role-based authorized keyword search scheme with efficient decryption
Chaudhary et al. RMA-CPABE: A multi-authority CPABE scheme with reduced ciphertext size for IoT devices
Tian et al. An efficient scheme of cloud data assured deletion
Gajmal et al. Blockchain-based access control and data sharing mechanism in cloud decentralized storage system
CN116155585A (zh) 一种数据共享方法和系统
Mahalakshmi et al. Effectuation of secure authorized deduplication in hybrid cloud
Liu et al. Auditing revocable privacy-preserving access control for EHRs in clouds
Xu et al. NC-MACPABE: Non-centered multi-authority proxy re-encryption based on CP-ABE for cloud storage systems
Jagdale et al. Secure sharing of personal health records in cloud using attribute-based encryption
US20240070309A1 (en) System and method for efficient cryptographically-assured data access management for advanced data access policies
Kumar et al. Secure cloud storage access framework using blockchain technology
Reddy et al. Proof-of-Work for Merkle based Access Tree in Patient Centric Data
Edwin et al. Fragmentation and Dynamic Replication Model in Multicloud by Data Hosting with Secured Data Sharing
Nadu MULTI AUTHORITY BASED INTEGRITY AUDITING AND PROOF OF STORAGE WITH DATA DEDUPLICATION IN CLOUD
Kanamarlapudi et al. Privacy Preserving for Electronic Health Records Using Enhanced Attribute-based Encryption with Blockchain

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