CN110543774B - 一种云环境下xml档案隐私数据保护方法及系统 - Google Patents

一种云环境下xml档案隐私数据保护方法及系统 Download PDF

Info

Publication number
CN110543774B
CN110543774B CN201910813327.3A CN201910813327A CN110543774B CN 110543774 B CN110543774 B CN 110543774B CN 201910813327 A CN201910813327 A CN 201910813327A CN 110543774 B CN110543774 B CN 110543774B
Authority
CN
China
Prior art keywords
query
range
data
sensitive element
original
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
CN201910813327.3A
Other languages
English (en)
Other versions
CN110543774A (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.)
University of Shaoxing
Original Assignee
University of Shaoxing
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 University of Shaoxing filed Critical University of Shaoxing
Priority to CN201910813327.3A priority Critical patent/CN110543774B/zh
Publication of CN110543774A publication Critical patent/CN110543774A/zh
Application granted granted Critical
Publication of CN110543774B publication Critical patent/CN110543774B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/6227Protecting 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 where protection concerns the structure of data, e.g. records, types, queries
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种云环境下XML档案隐私数据保护方法及系统。方法包括以下步骤:(1)对于XML档案中的敏感元素增设密文数据元素、蕴含特征数据元素、以及范围特征数据元素;(2)将原始查询变换为对于所述敏感元素蕴含特征数据元素和/或范围特征数据元素的替代查询;(3)在云端执行替代查询将结果发送给可信端;(4)结果进行解密,在所述敏感元素存储内容的明文上执行原始查询,将查询结果返回给用户。系统包括加密部件、查询转换部件和解密部件。本发明防止云服务器的泄密风险,保护用于隐私,由此解决现有技术中云服务器端XML档案隐私数据安全性存在风险的技术问题。

Description

一种云环境下XML档案隐私数据保护方法及系统
技术领域
本发明属于云计算领域,更具体地,涉及一种云环境下XML档案隐私数据保护方法及系。
背景技术
云计算是指一种按使用量付费的模式,它可实现随时随地、便捷地、按需地从可配置计算资源共享池中获取所需资源(如网络、服务器、存储、应用、服务等)。这种模式可以最少化资源管理工作量和与服务商交互量,从而大幅度降低机构在业务运行和文件档案管理方面的经费投入,提高机构服务效率。近年来,发达国家(如美国、英国、澳大利亚等)政府部门纷纷推行“云优先”战略,即在政府机构和公共部门信息化业务中,优先考虑使用云计算模式。2010年,美国联邦政府率先启动基于云计算的政府官方网站,随后美国财政部、美国海军等政府部门逐步加入云服务。2011年,英国档案馆成为英国国会第一个使用云框架来存储电子文件的部门,随后英国多塞特历史中心、英国档案管委会、英国牛津大学等开始向云环境中转移文件和档案。2013年,澳洲政府开始使用云服务进行文件档案管理。随着“云优先”战略的实施,文件档案在云环境中形成和管理的比例越来越高,因此,基于云的档案管理已是未来发展的大趋势。
然而,基于云的档案管理虽然能有效降低档案管理的经济成本,提高档案管理的服务效率,但也存在许多负面效应。其中,最重要的一点是:在云计算模式下,机构的档案数据并不是存储在可信的本地服务器,而是需要交由云端的服务器进行存储和管理,从而造成档案数据与其所有者相分离,使得文件档案处在其所有者不可控的区域内,对文件档案所蕴含的大量隐私数据的安全性构成了严重威胁。这种隐私安全威胁主要包含两个方面:一是外部威胁,即黑客对云服务提供商的攻击(层出不穷的黑客攻击事件充分验证了这点);二是内部威胁,云服务提供商工作人员的监守自盗(在利益驱动下,管理人员恶意窃取档案隐私数据的可能性普遍存在)。总之,档案管理系统的云端是不可信的,档案隐私安全问题已经成为严重限制云计算技术的数字档案管理中的进一步应用与发展的重要障碍。为此,在基于云的档案管理建设与推进中,如何保证存储在不可信云端中档案隐私数据的安全性,已成为亟待解决的重要问题,引起人们日益广泛的关注。
为了保证隐私数据的安全性,档案管理系统采用了多种技术策略[12],主要包括以下几类:用户身份认证、授权访问控制和数据加密技术等。以下,首先简要介绍这些方法的技术特点,然后分析应用它们解决云档案管理隐私数据保护问题的局限性。
用户身份认证是用户身份确认的过程,其目的是杜绝系统非法用户对系统资源的非法访问。用户身份认证又可分为:单因素认证(如用户名加密码认证、智能卡认证、动态口令认证、生物特征认证等)和双因素认证(它通过将两种单因素认证结合起来,以进一步加强用户身份认证的安全性)。访问控制是指根据用户身份,限制用户对非授权系统资源的访问,或限制用户对非授权系统功能的使用。具体又可以分为:自主访问控制(DAC)和强制访问控制(MAC)。授权访问控制和用户身份认证已被广泛应用于操作系统、数据库系统、以及档案管理系统中。虽然这两类技术策略能有效地阻止外部用户对档案系统中隐私数据的非法访问,从而在很大程度上缓解数字档案管理的隐私信息安全性问题。但是这些安全策略的实施无法离开服务器端的支持(它们假定服务器端是可信的),即它们只针对数字档案系统的外部非法攻击者,无法阻止不可信服务器端的内部工作人员或攻克服务器端的黑客访问数字档案馆中的隐私数据。如前所述,云服务器端是不可信的,它是引发隐私泄露的主要根源,因此云档案管理中的隐私安全问题无法通过传统的数据访问控制和身份认证手段加以解决。
数据加密技术是指对存放在不可信服务器端中的敏感数据进行严格加密,使得加密后的敏感数据即使泄露,也难以破译,从而确保数据安全性。它是解决云环境下隐私安全问题的重要手段。然而,在数字档案管理系统中,存在大量定义在档案隐私数据上的查询操作(如根据姓名获取用户个人档案资料)。一旦使用加密算法对存储在云端的档案隐私数据进行严格加密,则加密后的密文数据将失去明文数据的许多固有特性(如有序性、相似性、可比性等),从而使得档案管理系统中原有的定义在明文隐私数据上的各类查询操作(如文本相似查询、文本范围查询等)将无法再在密文数据上正确执行。为了解决密文查询问题,可以先将云服务器端的所有密文数据整体传送回可信客户端,然后,再由客户端对密文数据进行解密,并在解密后的数据上执行查询操作。但由于几乎所有查询过程均在客户端完成,这种方式不仅会丧失云数据管理的所有优势,而且还会严重降低数据查询效率(由于网络传输和解密开销十分巨大),严重破坏档案管理系统的可用性。因此,云档案管理中的隐私安全问题也无法直接通过传统的数据加密手段加以解决。综上所述,在基于云计算的档案管理系统中,如何在不影响数据查询有效性的基本前提下,确保档案敏感隐私数据在不可信云服务器端的安全性,仍有待进一步深入研究。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种云环境下XML档案隐私数据保护方法及系统,其目的在于为存储隐私数据的敏感元素加密并增加蕴含特征数据和范围特征数据,在对隐私数据进行查询时转换为对蕴含特征数据、范围特征数据的替换查询,对替换查询的结果在可信端进行解密后进行原始查询,从而防止云服务器的泄密风险,保护用于隐私,由此解决现有技术中云服务器端XML档案隐私数据安全性存在风险的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种云环境下XML档案隐私数据保护方法,其包括以下步骤:
(1)对于XML档案中的敏感元素,为其增设三个子元素,分别为密文数据元素、蕴含特征数据元素、以及范围特征数据元素,获得加密XML档案并存储至云端;
(2)获取用户定义在步骤(1)中获得的云端存储的加密XML档案的敏感元素上的原始查询,并将所述原始查询变换为对于所述敏感元素蕴含特征数据元素和/或范围特征数据元素的替代查询;
(3)在步骤(1)中获得的云端存储的加密XML档案的所述敏感元素蕴含特征数据元素和/或范围特征数据元素上执行步骤(2)获得的替代查询,获得替代查询结果,并将所述替代查询结果发送给可信端;
(4)所述可信端对步骤(3)中获得的替代查询结果进行解密,获得所述敏感元素存储内容的明文,在所述敏感元素存储内容的明文上执行步骤(2)获取的原始查询,将查询结果返回给用户。
优选地,所述云环境下XML档案隐私数据保护方法,其步骤(1)所述密文数据元素用于存储所述敏感元素存储内容的密文数据;所述蕴含特征数据元素用于存储所述敏感元素存储内容的蕴含特征数据,所述蕴含特征数据用于蕴含查询,所述蕴含查询即查询其所述敏感元素包含查询关键词字符串的记录的;所述范围特征数据元素用于存储所述敏感元素存储内容的范围特征数据,所述范围特征数据用于范围查询,所述范围查询即查询其所述敏感元素被落入查询范围内的记录。
优选地,所述云环境下XML档案隐私数据保护方法,其步骤(1)包括:
(1-1)对于所述敏感元素存储内容进行加密,获得所述密文数据;
(1-2)对于所述敏感元素存储内容,获取其蕴含特征数据;
(1-3)将所述敏感元素存储内容,采用范围映射函数R(a1a2...an)映射为同样定义在值域
Figure BDA0002185644220000041
上的字符串。
优选地,所述云环境下XML档案隐私数据保护方法,其步骤(1-2)包括:
(1-2-1)对于所述敏感元素存储内容进行字符对映射,以捕获字符串蕴含查询所需的关键特征信息;
(1-2-2)对于步骤(1-2-1)获取的关键特征信息进行字符串蕴含映射,获得所述敏感元素存储内容蕴含特征数据。
优选地,所述云环境下XML档案隐私数据保护方法,其步骤(1-2-1)所述字符对映射,即将定义在值域
Figure BDA0002185644220000051
上的任意两个字符a1和a2映射为同样定义在值域
Figure BDA0002185644220000052
上的一个字符
Figure BDA0002185644220000053
即:
Figure BDA0002185644220000054
其中
Figure BDA0002185644220000055
为全体字符的值域;
所述字符对映射函数P(a1,a2)按照如下方法获取:
A1、将全体字符串值域
Figure BDA0002185644220000056
划分为
Figure BDA0002185644220000057
个非空子域,记作
Figure BDA0002185644220000058
即所述子域
Figure BDA0002185644220000059
满足:①任一子域均不为空集,即
Figure BDA00021856442200000510
其中
Figure BDA00021856442200000511
Figure BDA00021856442200000512
②任意两个子域不重叠,即
Figure BDA00021856442200000513
其中
Figure BDA00021856442200000514
Figure BDA00021856442200000515
③所有子域的并集等于值域本身,即
Figure BDA00021856442200000516
Figure BDA00021856442200000517
A2、为步骤A1获得的非空子域
Figure BDA00021856442200000518
分配征数标识符,分别记作:
Figure BDA00021856442200000519
使得所述标识符
Figure BDA00021856442200000520
Figure BDA00021856442200000521
且任意两个子域的标识符互不相同,即
Figure BDA00021856442200000522
Figure BDA00021856442200000523
A3、根据A1和A2,获得标识符映射函数
Figure BDA00021856442200000524
其中
Figure BDA00021856442200000525
为包含字符a的子域,即
Figure BDA00021856442200000526
将Q(a1)和Q(a2)做关联运算P(a1,a2),使得运算结果的值域被包含于全体字符的值域
Figure BDA00021856442200000527
则将P(a1,a2)作为字符对映射函数;例如
Figure BDA0002185644220000061
在这里,Q(a1)和Q(a2)取值均落在0至
Figure BDA0002185644220000062
之间,两者连接起来加和,恰有P(a1,a2)的值域为
Figure BDA0002185644220000063
优选地,所述云环境下XML档案隐私数据保护方法,其步骤(1-2-2)即对于定义在值域
Figure BDA0002185644220000064
的任意字符串a1a2...an,映射为同样定义在值域
Figure BDA0002185644220000065
上的字符串a′1a′2...a′n′,记做:F(a1a2...an)=a′1a′2...a′n′,且
Figure BDA0002185644220000066
满足:①1≤n′≤n-1;②a′1<a′2<…<a′n′;③任意的ai∈a1a2...an,必然存在唯一的a′k∈a′1a′2...a′n′,满足P(ai,ai+1)=a′k;④任意a′k∈a′1a′2...a′n′,必然存在ai∈a1a2...an(不一定唯一),满足P(ai,ai+1)=a′k
所述字符串蕴含映射函数F(a1a2...an)按照如下方法获取:
B1、对于任意字符串a1a2...an,基于给定的字符对映射函数
Figure BDA0002185644220000067
Figure BDA0002185644220000068
将其包含的字符对均映射为字符,得到映射字符集合
Figure BDA0002185644220000069
记作
Figure BDA00021856442200000610
Figure BDA00021856442200000611
B2、对于步骤B1获得的映射字符集合
Figure BDA00021856442200000612
去除其中重复字符后,按其值升序排列,组装成新的字符串F(a1a2...an)=a′1a′2...a′n′,将映射规则作为F(a1a2...an)作为所述字符串蕴含映射函数,将字符串a′1a′2...a′n′作为所述蕴含特征数据。
优选地,所述云环境下XML档案隐私数据保护方法,其步骤(1-3)即范围特征数据
Figure BDA00021856442200000613
使其满足:①1≤|R(a1a2...an)|≤n;②对于定义在
Figure BDA00021856442200000614
上的任意字符串a′1a′2...a′n′,如果a1a2...an≤a′1a′2...a′n′,则R(a1a2...an)≤R(a′1a′2...a′n′)。
所述范围映射函数R(a1a2...an)按照以下方法获取:
C1、将字符串a1a2...an的值域
Figure BDA00021856442200000615
划分为N个非空子域,分别记作:
Figure BDA00021856442200000616
Figure BDA00021856442200000617
满足:满足以下条件:①任一子域均不为空集,即
Figure BDA00021856442200000618
②任意两个子域不重叠,即
Figure BDA00021856442200000619
③所有子域的并集等于值域本身,即
Figure BDA0002185644220000071
④各子域元素保持有序,即对于
Figure BDA0002185644220000072
如果i<k,则必然有
Figure BDA0002185644220000073
C2、对于步骤C1中获得的非空子域
Figure BDA0002185644220000074
分配字符串标识符,分别记作:
Figure BDA0002185644220000075
使其满足:①各个标识符本身也是字符串,即
Figure BDA0002185644220000076
②各个标识符保持有序,即如果i<k,则必然有
Figure BDA0002185644220000077
C3、根据步骤C1和C2,获得范围映射函数
Figure BDA0002185644220000078
Figure BDA0002185644220000079
其中,
Figure BDA00021856442200000710
为包含字符串a1a2...an的子域,即
Figure BDA00021856442200000711
优选地,所述云环境下XML档案隐私数据保护方法,其步骤(2)具体为:
(2-1)当所述原始查询为蕴含查询时,即查询所有所述敏感元素蕴含查询关键词的记录,记作contains(/path/element,a1a2…am),其中/path/element为XML档案中的敏感元素,a1a2...am为查询关键词,则:
将所述查询关键词a1a2...am按照与步骤(1)获得蕴含特征数据相同的方法,获取其蕴含特征关键词a′1a′2...a′m′;对于所有a′l∈a′1a′2...a′m′,将所述原始查询转换为在所述敏感元素的蕴含特征数据元素上所有以a′l为蕴含查询关键词的查询的且运算,即:
Figure BDA00021856442200000712
contains(/path/element/conttext,a′1)and
contains(/path/element/conttext,a′2)and…and
contains(/path/element/conttext,a′m′)
(2-2)当所述原始查询为范围查询时,即所述查询所有所述敏感元素落入查询范围≥a1a2...am或≤a1a2...am的记录,其中a1a2...am为查询关键词,则:
将所述查询关键词a1a2...am按照与步骤(1)获得所述范围特征数据相同的方法,获取其范围查询关键词R(a1a2...am);将所述原始查询转换为在所述敏感元素的范围特征数据元素上所有≥R(a1a2...am)或≤R(a1a2...am)的查询,即:
Figure BDA0002185644220000081
或:
Figure BDA0002185644220000082
(2-3)当所述原始查询为等值查询时,即查询所有所述敏感元素为查询关键词的记录,即“/path/element=a1a2...am”,其中a1a2...am为查询关键词,则:
将所述原始查询转换为蕴含所述查询关键词a1a2...am的蕴含查询与等于所述查询关键词a1a2...am的范围查询的且运算,并将所述查询关键词a1a2...am的蕴含查询按照步骤(2-1)的方法转换,将所述等于所述查询关键词a1a2...am的范围查询按照步骤(2-2)的方法转换;即:
Figure BDA0002185644220000083
and
ontains(/path/element/conttext,a′1)and
contains(/path/element/conttext,a′2)and…and
contains(/path/element/conttext,a′m′)
其中,F(a1a2...am)=a′1a′2...a′m′
按照本发明的另一个方面提供了一种云环境下XML档案隐私数据保护系统,所述系统设置于用户端和云服务器之间,包括加密部件、查询转换部件和解密部件;
所述加密部件,用于获取原始XML档案,对于所述XML档案中的敏感元素,为其增设三个子元素,分别为密文数据元素、蕴含特征数据元素、以及范围特征数据元素,获得加密XML档案并存储至云端;
所述查询转换部件,用于获取用户定义在所述加密XML档案的敏感元素上的原始查询,并将所述原始查询转换为对对所述敏感元素蕴含特征元素和/或范围特征数据元素的替代查询,并提交给云服务器执行所述替代查询;
所述解密部件,用于获取所述云服务其执行的替代查询结果以及用于提供的原始查询,并将所述替代查询结果解密,获得所述敏感元素存储内容的明文,在所述敏感元素存储内容的明文上执行原始查询,将查询结果返回给用户。
优选地,所述云环境下XML档案隐私数据保护系统,其所述加密部件,包括密文数据生成模块、蕴含特征数据生成模块、以及范围特征生成模块;
所述密文数据生成模块,用于根据所述原始XML档案的所述敏感元素存储内容进行加密,获得所述密文数据并存储于所述密文数据元素;
所述蕴含特征生成模块,用于根据所述原始XML档案的所述敏感元素存储内容进行字符对映射和蕴含映射,获得所述蕴含特征数据并存储于所述蕴含特征数据元素;
所述范围特征生成模块,用于根据所述原始XML档案的所述敏感元素存储内容进行范围映射,获得所述范围特征数据并存储于所述范围特征数据元素。
优选地,所述云环境下XML档案隐私数据保护系统,其所述查询转换部件,包括蕴含查询转换模块、范围查询转换模块、以及等值查询转换模块;
所述蕴含查询转换模块,用于当所述原始查询为蕴含查询时,将所述原始查询的查询关键词a1a2…am提交给蕴含特征数据生成模块,获取其蕴含特征关键词a′1a′2…a′m′;对于所有a′l∈a′1a′2…a′m′,将所述原始查询转换为在所述敏感元素的蕴含特征数据元素上所有以a′l为蕴含查询关键词的查询的且运算;
所述范围查询转换模块,用于当所述原始查询为范围查询时,将所述原始查询的查询关键词a1a2…am提交范围特征数据生成模块,获取其范围查询关键词R(a1a2…am);将所述原始查询转换为在所述敏感元素的范围特征数据元素上所有≥R(a1a2…am)或≤R(a1a2…am)的查询;
所述等值查询转换模块,用于当所述原始查询为范围查询时,将所述原始查询提交给所述蕴含查询转换模块以及范围查询转换模块,获得相应转换的蕴含替代查询以及范围替代查询,将二者进行且运算,获得所述等值查询的替代查询。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
发明针对基于云的档案管理中的隐私数据保护问题,提出了一个有效的解决方案:XML档案中的隐私数据在提交给云服务器端存储之前,必须先在可信客户端使用数据加密算法进行严格加密(以XML元素为单位),使得不可信云端无法从中识别出隐私数据,从而确保隐私的安全性。然后,为了确保档案管理系统中定义在隐私数据上的查询有效性,为云端的密文数据附加额外的特征信息,使得定义在隐私数据上查询操作(包括相似查询和范围查询)的大部分处理过程可在云端进行,而无需解密数据,从而极大地提高数据查询效率,确保了XML查询的高效性。
具体来说,本发明基于云档案管理系统现有的体系框架结构,重新设计了隐私安全的系统模型。其中,隐私保护方案运行在可信客户端,作为云服务器端和档案管理界面之间的一层中间件,以实现对用户和云端的透明化,进而实现与现有档案管理系统的有效对接。本发明设计了XML隐私数据的特征生成方案,其生成的特征数据不仅具有良好的安全性(即攻击者无法根据特征数据获知隐私),并且还具有良好的有效性(即能有效支持范围查询和相似查询)。本发明设计了XML查询的特征转换方案,它能将定义在隐私数据上的XML查询转换成定义在云端特征数据上的新查询(使得新查询能在云端正确执行),从而使得大部分查询处理过程可在云端完成,极大提高了XML查询效率。最后,理论分析和实验评估验证了方案的整体性能,即能在不影响XML查询高效性的前提下,确保隐私数据在不可信云服务器端的安全性。本文研究是针对云档案管理隐私保护的重要研究尝试,对促进云计算技术在XML档案管理中的进一步应用与发展具有积极意义。
附图说明
图1是本发明提供的云环境下XML档案隐私数据保护系统结构示意图;
图2是本发明实施例提供的云环境下XML档案隐私数据保护方法职工XML档案转换示意图;
图3是本发明实施例提供的云环境下XML档案隐私数据保护方法字符串蕴含特征数据映射示例;
图4是本发明实施例提供的手机号码值域划分示例。
图5是本发明实施例提供的职工XML档案记录转换结果示例;
图6是本发明实施例提供的云环境下XML档案隐私数据保护方法相似查询高效性评估结果;
图7是本发明实施例提供的云环境下XML档案隐私数据保护方法范围查询高效性评估结果。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明提供的云环境下XML档案隐私数据保护方法,包括以下步骤:
(1)对于XML档案中的敏感元素,为其增设三个子元素,分别为密文数据元素、蕴含特征数据元素、以及范围特征数据元素,获得加密XML档案并存储至云端;所述密文数据元素用于存储所述敏感元素存储内容的密文数据;所述蕴含特征数据元素用于存储所述敏感元素存储内容的蕴含特征数据,所述蕴含特征数据用于蕴含查询,所述蕴含查询即查询其所述敏感元素包含查询关键词字符串的记录的;所述范围特征数据元素用于存储所述敏感元素存储内容的范围特征数据,所述范围特征数据用于范围查询,所述范围查询即查询其所述敏感元素被落入查询范围内的记录;
(1-1)对于所述敏感元素存储内容进行加密,获得所述密文数据;其采用现有的加密算法,例如AES加密算法。
(1-2)对于所述敏感元素存储内容,获取其蕴含特征数据;具体步骤如下:
(1-2-1)对于所述敏感元素存储内容进行字符对映射,以捕获字符串蕴含查询所需的关键特征信息;所述字符对映射,即将定义在值域
Figure BDA0002185644220000121
上的任意两个字符a1和a2映射为同样定义在值域
Figure BDA0002185644220000122
上的一个字符
Figure BDA0002185644220000123
即:
Figure BDA0002185644220000124
其中
Figure BDA0002185644220000125
为全体字符的值域。
优选,所述字符对映射函数P(a1,a2)按照如下方法获取:
A1、将全体字符串值域
Figure BDA0002185644220000126
划分为
Figure BDA0002185644220000127
个非空子域,记作
Figure BDA0002185644220000128
即所述子域
Figure BDA0002185644220000129
满足:①任一子域均不为空集,即
Figure BDA00021856442200001210
其中
Figure BDA00021856442200001211
Figure BDA00021856442200001212
②任意两个子域不重叠,即
Figure BDA00021856442200001213
其中
Figure BDA00021856442200001214
Figure BDA00021856442200001215
③所有子域的并集等于值域本身,即
Figure BDA00021856442200001216
Figure BDA00021856442200001217
A2、为步骤A1获得的非空子域
Figure BDA00021856442200001218
分配征数标识符,分别记作:
Figure BDA00021856442200001219
使得所述标识符
Figure BDA00021856442200001220
Figure BDA00021856442200001221
且任意两个子域的标识符互不相同,即
Figure BDA00021856442200001222
Figure BDA00021856442200001223
A3、根据A1和A2,获得标识符映射函数
Figure BDA00021856442200001224
其中
Figure BDA00021856442200001225
为包含字符a的子域,即
Figure BDA00021856442200001226
将Q(a1)和Q(a2)做关联运算P(a1,a2),使得运算结果的值域被包含于全体字符的值域
Figure BDA00021856442200001227
则将P(a1,a2)作为字符对映射函数;例如
Figure BDA0002185644220000131
在这里,Q(a1)和Q(a2)取值均落在0至
Figure BDA0002185644220000132
之间,两者连接起来加和,恰有P(a1,a2)的值域为
Figure BDA0002185644220000133
由上可知,上述字符对映射策略所生成的映射函数并不唯一确定(因为步骤A1和步骤A2存在多种设定情况),因而满足字符对映射函数也多种多样,其构造是开放的。
(1-2-2)对于步骤(1-2-1)获取的关键特征信息进行字符串蕴含映射,获得所述敏感元素存储内容蕴含特征数据;即对于定义在值域
Figure BDA0002185644220000134
上的任意字符串a1a2…an,映射为同样定义在值域
Figure BDA0002185644220000135
上的字符串a′1a′2…a′n′,记做:F(a1a2…an)=a′1a′2…a′n′,且
Figure BDA0002185644220000136
满足:①1≤n′≤n-1;②a′1<a′2<…<a′n′;③任意的ai∈a1a2…an,必然存在唯一的a′k∈a′1a′2…a′n′,满足P(ai,ai+1)=a′k;④任意a′k∈a′1a′2…a′n′,必然存在ai∈a1a2…an(不一定唯一),满足P(ai,ai+1)=a′k
优选,所述字符串蕴含映射函数F(a1a2…an)按照如下方法获取:
B1、对于任意字符串a1a2…an,基于给定的字符对映射函数
Figure BDA0002185644220000137
Figure BDA0002185644220000138
将其包含的字符对均映射为字符,得到映射字符集合
Figure BDA0002185644220000139
记作
Figure BDA00021856442200001310
Figure BDA00021856442200001311
B2、对于步骤B1获得的映射字符集合
Figure BDA00021856442200001312
去除其中重复字符后,按其值升序排列,组装成新的字符串F(a1a2…an)=a′1a′2…a′n′,将映射规则作为F(a1a2…an)作为所述字符串蕴含映射函数,将字符串a′1a′2…a′n′作为所述蕴含特征数据。
(1-3)将定义在值域
Figure BDA00021856442200001313
上的所述敏感元素存储内容a1a2…an,采用范围映射函数R(a1a2…an)映射为同样定义在值域
Figure BDA00021856442200001314
上的字符串,即范围特征数据
Figure BDA00021856442200001315
使其满足:①1≤|R(a1a2…an)|≤n;②对于定义在
Figure BDA00021856442200001316
上的任意字符串a′1a′2…a′n′,如果a1a2…an≤a′1a′2…a′n′,则R(a1a2…an)≤R(a′1a′2…a′n′)。
优选,所述范围映射函数R(a1a2…an)按照以下方法获取:
C1、将字符串a1a2…an的值域
Figure BDA0002185644220000141
划分为N个非空子域,分别记作:
Figure BDA0002185644220000142
Figure BDA0002185644220000143
满足:满足以下条件:①任一子域均不为空集,即
Figure BDA0002185644220000144
②任意两个子域不重叠,即
Figure BDA0002185644220000145
③所有子域的并集等于值域本身,即
Figure BDA0002185644220000146
④各子域元素保持有序,即对于
Figure BDA0002185644220000147
如果i<k,则必然有
Figure BDA0002185644220000148
C2、对于步骤C1中获得的非空子域
Figure BDA0002185644220000149
分配字符串标识符,分别记作:
Figure BDA00021856442200001410
使其满足:①各个标识符本身也是字符串,即
Figure BDA00021856442200001411
②各个标识符保持有序,即如果i<k,则必然有
Figure BDA00021856442200001412
C3、根据步骤C1和C2,获得范围映射函数
Figure BDA00021856442200001413
Figure BDA00021856442200001414
其中,
Figure BDA00021856442200001415
为包含字符串a1a2…an的子域,即
Figure BDA00021856442200001416
(2)获取用户定义在步骤(1)中获得的云端存储的加密XML档案的敏感元素上的原始查询,并将所述原始查询变换为对于所述敏感元素蕴含特征数据元素和/或范围特征数据元素的替代查询;
(2-1)当所述原始查询为蕴含查询时,即查询所有所述敏感元素蕴含查询关键词的记录,记作contains(/path/element,a1a2…am),其中/path/element为XML档案中的敏感元素,a1a2…am为查询关键词,则:
将所述查询关键词a1a2…am按照与步骤(1)获得蕴含特征数据相同的方法,获取其蕴含特征关键词a′1a′2…a′m′;对于所有a′l∈a′1a′2…a′m′,将所述原始查询转换为在所述敏感元素的蕴含特征数据元素上所有以a′l为蕴含查询关键词的查询的且运算,即:
Figure BDA00021856442200001417
contains(/path/element/conttext,a′1)and
contains(/path/element/conttext,a′2)and…and
contains(/path/element/conttext,a′m′)
(2-2)当所述原始查询为范围查询时,即所述查询所有所述敏感元素落入查询范围≥a1a2…am或≤a1a2…am的记录,其中a1a2…am为查询关键词,则:
将所述查询关键词a1a2…am按照与步骤(1)获得所述范围特征数据相同的方法,获取其范围查询关键词R(a1a2…am);将所述原始查询转换为在所述敏感元素的范围特征数据元素上所有≥R(a1a2…am)或≤R(a1a2…am)的查询,即:
Figure BDA0002185644220000151
或:
Figure BDA0002185644220000152
(2-3)当所述原始查询为等值查询时,即查询所有所述敏感元素为查询关键词的记录,即“/path/element=a1a2…am”,其中a1a2…am为查询关键词,则:
将所述原始查询转换为蕴含所述查询关键词a1a2…am的蕴含查询与等于所述查询关键词a1a2…am的范围查询的且运算,并将所述查询关键词a1a2…am的蕴含查询按照步骤(2-1)的方法转换,将所述等于所述查询关键词a1a2…am的范围查询按照步骤(2-2)的方法转换;即:
Figure BDA0002185644220000153
and
ontains(/path/element/conttext,a′1)and
contains(/path/element/conttext,a′2)and…and
contains(/path/element/conttext,a′m′)
其中,F(a1a2…am)=a′1a′2…a′m′
(3)在步骤(1)中获得的云端存储的加密XML档案的所述敏感元素蕴含特征数据元素和/或范围特征数据元素上执行步骤(2)获得的替代查询,获得替代查询结果,并将所述替代查询结果发送给可信端;
(4)所述可信端对步骤(3)中获得的替代查询结果进行解密,获得所述敏感元素存储内容的明文,在所述敏感元素存储内容的明文上执行步骤(2)获取的原始查询,将查询结果返回给用户。
本发明提供的云环境下XML档案隐私数据保护系统,如图1所示,所述系统设置于用户端和云服务器之间,包括加密部件、查询转换部件和解密部件;
所述加密部件,用于获取原始XML档案,对于所述XML档案中的敏感元素,为其增设三个子元素,分别为密文数据元素、蕴含特征数据元素、以及范围特征数据元素,获得加密XML档案并存储至云端;
所述加密部件,包括密文数据生成模块、蕴含特征数据生成模块、以及范围特征生成模块;
所述密文数据生成模块,用于根据所述原始XML档案的所述敏感元素存储内容进行加密,获得所述密文数据并存储于所述密文数据元素;
所述蕴含特征生成模块,用于根据所述原始XML档案的所述敏感元素存储内容进行字符对映射和蕴含映射,获得所述蕴含特征数据并存储于所述蕴含特征数据元素;
所述范围特征生成模块,用于根据所述原始XML档案的所述敏感元素存储内容进行范围映射,获得所述范围特征数据并存储于所述范围特征数据元素。
所述查询转换部件,用于获取用户定义在所述加密XML档案的敏感元素上的原始查询,并将所述原始查询转换为对对所述敏感元素蕴含特征元素和/或范围特征数据元素的替代查询,并提交给云服务器执行所述替代查询;
所述查询转换部件,包括蕴含查询转换模块、范围查询转换模块、以及等值查询转换模块;
所述蕴含查询转换模块,用于当所述原始查询为蕴含查询时,将所述原始查询的查询关键词a1a2…am提交给蕴含特征数据生成模块,获取其蕴含特征关键词a′1a′2…a′m′;对于所有a′l∈a′1a′2…a′m′,将所述原始查询转换为在所述敏感元素的蕴含特征数据元素上所有以a′l为蕴含查询关键词的查询的且运算;
所述范围查询转换模块,用于当所述原始查询为范围查询时,将所述原始查询的查询关键词a1a2…am提交范围特征数据生成模块,获取其范围查询关键词R(a1a2…am);将所述原始查询转换为在所述敏感元素的范围特征数据元素上所有≥R(a1a2…am)或≤R(a1a2…am)的查询;
所述等值查询转换模块,用于当所述原始查询为范围查询时,将所述原始查询提交给所述蕴含查询转换模块以及范围查询转换模块,获得相应转换的蕴含替代查询以及范围替代查询,将二者进行且运算,获得所述等值查询的替代查询。
所述解密部件,用于获取所述云服务其执行的替代查询结果以及用于提供的原始查询,并将所述替代查询结果解密,获得所述敏感元素存储内容的明文,在所述敏感元素存储内容的明文上执行原始查询,将查询结果返回给用户。
以下为实施例:
一种云环境下XML档案隐私数据保护方法,以职工XML档案为例,包括以下步骤:
(1)对于XML档案中的敏感元素,为其增设三个子元素,分别为密文数据元素、蕴含特征数据元素、以及范围特征数据元素,获得加密XML档案并存储至云端;所述密文数据元素用于存储所述敏感元素存储内容的密文数据;所述蕴含特征数据元素用于存储所述敏感元素存储内容的蕴含特征数据,所述蕴含特征数据用于蕴含查询,所述蕴含查询即查询其所述敏感元素包含查询关键词字符串的记录的;所述范围特征数据元素用于存储所述敏感元素存储内容的范围特征数据,所述范围特征数据用于范围查询,所述范围查询即查询其所述敏感元素被落入查询范围内的记录;
如图2所示,其中,家庭地址address和电话号码phone被认为敏感机密,即该XML档案文件中存在两类敏感元素,为敏感元素分别增设三个子元素分别为ciphtext(密文数据)、conttext(蕴含特征数据)和rangtext(范围特征数据)。当客户端用户向档案管理系统提交一条职工档案记录时,“特征数据生成”部件首先会对其中隐私数据(即职工地址和电话号码)进行严格加密,然后存入到元素//address/ciphtext和//phone/ciphtext中,同时还为敏感数据构造生成蕴含特征数据(为了支持XML蕴含查询)和范围特征数据(为了支持XML范围查询),然后存入到元素//conttext和//rangtext。
(1-1)对于所述敏感元素存储内容采用AES加密算法进行加密,获得所述密文数据。
(1-2)对于所述敏感元素存储内容,获取其蕴含特征数据;具体步骤如下:
根据Unicode编码规则可知,一个字符由两个字节构成(其编码的取值范围为0至216-1),即
Figure BDA0002185644220000181
据此,可按照以下策略,生成一个具体的字符对映射函数。
图3展示了“浙江温州中路3号”的蕴含特征数据。
(1-3)将定义在值域
Figure BDA0002185644220000182
上的所述敏感元素存储内容a1a2…an,采用范围映射函数R(a1a2…an)映射为同样定义在值域
Figure BDA0002185644220000183
上的字符串,即范围特征数据
Figure BDA0002185644220000184
使其满足:①1≤|R(a1a2…an)|≤n;②对于定义在
Figure BDA0002185644220000185
上的任意字符串a′1a′2…a′n′,如果a1a2…an≤a′1a′2…a′n′,则R(a1a2…an)≤R(a′1a′2…a′n′)。
引入范围特征数据的目的是为了支持XML的范围查询操作(例如,查询手机号码落在“13512340000”到“13512349999”范围内的企业职工信息)。可以看出,范围查询实际上就是字符串的比较操作,也是一种非常常见的XML查询操作。
假设:①这里的敏感数据来自手机号码(手机号码由11位数字字符构成,且首位字符为1);②范围映射策略步骤C1将字符串值域
Figure BDA0002185644220000191
划分为102个子域,具体划分如图4所示;③在范围映射策略步骤C2中,各个子域
Figure BDA0002185644220000192
的字符串标识符
Figure BDA0002185644220000193
被设定为子域编号k对应的字符(即
Figure BDA0002185644220000194
以此类推)。据此,唯一确定了字符串范围映射函数
Figure BDA0002185644220000195
例如,给定一个字符串“13587878787”,其范围特征数据为“%”(即十进制编码37对应的字符)。
一条企业职工档案记录在云服务器端的存储情况(其中,星标志表示省略元素内容)如图5所示。综上所述可看出,敏感元素存储的数据的特征映射函数并不固定,具体特征映射函数取决于相关映射策略里的参数设定。这些参数设定预先离线完成,并且这些参数信息存储在云档案管理系统的可信客户端。
(2)获取用户定义在步骤(1)中获得的云端存储的加密XML档案的敏感元素上的原始查询,并将所述原始查询变换为对于所述敏感元素蕴含特征数据元素和/或范围特征数据元素的替代查询;
(2-1)当所述原始查询为蕴含查询时,即查询所有所述敏感元素蕴含查询关键词的记录,记作contains(/path/element,a1a2…am),其中/path/element为XML档案中的敏感元素,a1a2…am为查询关键词,则:
将所述查询关键词a1a2…am按照与步骤(1)获得蕴含特征数据相同的方法,获取其蕴含特征关键词a′1a′2…a′m′;对于所有a′l∈a′1a′2…a′m′,将所述原始查询转换为在所述敏感元素的蕴含特征数据元素上所有以a′l为蕴含查询关键词的查询的且运算,即:
Figure BDA0002185644220000196
contains(/path/element/conttext,a′1)and
contains(/path/element/conttext,a′2)and…and
contains(/path/element/conttext,a′m′)
查询家庭地址包含“浙江”的企业职工编号。其原始XML查询以及转换后的替换查询分别如下(其中,P(浙江温州)=浬):
Figure BDA0002185644220000204
[contains(/employees/employee/address/conttext,浬)]/employeeID
(2-2)当所述原始查询为范围查询时,即所述查询所有所述敏感元素落入查询范围≥a1a2…am或≤a1a2…am的记录,其中a1a2…am为查询关键词,则:
将所述查询关键词a1a2…am按照与步骤(1)获得所述范围特征数据相同的方法,获取其范围查询关键词R(a1a2…am);将所述原始查询转换为在所述敏感元素的范围特征数据元素上所有≥R(a1a2…am)或≤R(a1a2…am)的查询,即:
Figure BDA0002185644220000201
或:
Figure BDA0002185644220000202
查询手机号码大于“13587878787”的企业职工编号。其原始XML查询以及转换后的替换查询分别如下(其中,R(13587878787)=%):
Figure BDA0002185644220000203
/employees/employee[/phone/rangtext>%]/employeeID
(2-3)当所述原始查询为等值查询时,即查询所有所述敏感元素为查询关键词的记录,即“/path/element=a1a2…am”,其中a1a2…am为查询关键词,则:
将所述原始查询转换为蕴含所述查询关键词a1a2…am的蕴含查询与等于所述查询关键词a1a2…am的范围查询的且运算,并将所述查询关键词a1a2…am的蕴含查询按照步骤(2-1)的方法转换,将所述等于所述查询关键词a1a2…am的范围查询按照步骤(2-2)的方法转换;即:
Figure BDA0002185644220000211
ontains(/path/element/conttext,a′1)and
contains(/path/element/conttext,a′2)and…and
contains(/path/element/conttext,a′m′)
其中,F(a1a2…am)=a′1a′2…a′m′
查询家庭地址位于“浙江温州”的企业职工编号。其原始XML查询以及转换后替换查询分别如下(其中,P(浙江温州)=汮浬湝,R(浙江温州)=f(即编码102对应的字符)):
[contains(/employees/employee/address,浙江温州)]/employeeID
Figure BDA0002185644220000212
[/employees/employee/address/rangtext=f and
contains(/employees/employee/address/conttext,汮)and
contains(/employees/employee/address/conttext,浬)and
contains(/employees/employee/address/conttext,湝)]/employeeID
(3)在步骤(1)中获得的云端存储的加密XML档案的所述敏感元素蕴含特征数据元素和/或范围特征数据元素上执行步骤(2)获得的替代查询,获得替代查询结果,并将所述替代查询结果发送给可信端;
(4)所述可信端对步骤(3)中获得的替代查询结果进行解密,获得所述敏感元素存储内容的明文,在所述敏感元素存储内容的明文上执行步骤(2)获取的原始查询,将查询结果返回给用户。
对于云端XML档案文件中任意元素,如果它满足映射转换后的替换查询条件,则它必然满足转换前的原始查询条件。因此,可进一步证明,云端通过执行转换后得到定义在特征元素上新查询,所返回的数据必定包含目标数据,从而确保了XML查询的准确性。为此,当用户通过客户端档案管理界面提交XML查询时,“查询转换”部件分析用户查询中定义在隐私数据上的基本条件,将其转换为定义在特征数据上的替换条件,从而生成可以在云端加密档案文件上正确执行的替换查询。然后,再将转换后的新查询提交给云服务器端执行。最后,由“结果解密筛选”部件解密云端所返回的密文数据,并再次执行原始查询,进一步过滤掉非目标数据,获取精确结果,返回给用户。
由于等值查询、蕴含查询和范围查询是XML查询中最常见和基础的三类基本条件,其它查询条件均可直接或间接地借助于它们完成。为此,综合以上三个观察,可进一步得知结论:定义在隐私数据上的各类XML查询操作(主要包括相似查询和范围查询)能转换为定义在特征数据上的新查询,云端通过执行新查询所返回的结果必须包含原始查询对应的真实结果,即章节3提出的特征数据构建方案能有效确保XML查询的准确性。
即使攻击者已经获知掌握了特征映射函数,但对于某一给定特征数据,攻击者进一步推测分析出相应明文数据的可能性却极低,因此,无论利用哪种攻击方法,攻击者均难以准确推测出特征数据对应的明文数据,即本文所提出的特征构建方案具有良好的隐私安全性。
通过实验评估特征数据的查询高效性,即评估映射得到的定义在特征数据上的新查询能否过滤掉云端绝大部分的非目标数据,以提高XML查询效率。实验运行在图2所述的XML企业职工档案文件上,它包含随机生成的一百万条职工记录,其中,家庭地址(长度不超过30个字符)和电话号码(长度固定为11个数字字符)为隐私数据。实验在两台电脑上进行,一台作为云服务器,另一台作为客户端。从图1所示的XML数据查询过程可看出,特征数据的查询高效性依赖于“查询转换”映射得到的新查询对云端非目标数据的过滤效果,据此引入查询高效性度量:
记转换前的查询条件为W,记转换后的定义在特征数据上的新查询条件为W*(。让N表示企业职工记录数量,N′1表示满足查询W的记录数量,N′2表示满足新查询W*的记录数量,则特征数据的查询高效性通过新查询对非目标记录的过滤效果进行度量,即
Figure BDA0002185644220000231
等值查询建立在蕴含查询和范围查询基础上。为此,高效性评估分为两组实验,即针对职工家庭地址的蕴含查询和针对职工电话号码的范围查询。第一组实验旨在评估蕴含查询的高效性。实验结果如图6所示,其中,横坐标表示蕴含查询条件所关联的字符串常量长度,纵坐标表示蕴含查询高效性度量。根据图6可以看出:随着蕴含查询关联字符串长度的增长,查询高效性度量值也将随之稍有增长(即新查询对非目标数据的过滤效果将随之稍有增强),这是因为蕴含查询字符串长度越长,则蕴含查询条件的信息熵越高(即约束条件越严格),使得满足查询条件的目标数据规模也就越小,进而导致查询高效性度量值越大。然而,还可以看出:无论蕴含查询关联字符串长度如何变化,蕴含查询高效性度量值基本维持稳定(度量值大于0.94),即绝大部分非目标数据均能在云端被过滤掉,极大地减小了返回客户端的数据规模,确保了XML蕴含查询的高效性。第二组实验旨在评估范围查询的高效性。实验结果如图7所示,其中,横坐标表示手机号码值域被划分成的子域数量(即章节3范围特征映射策略步骤一中的N值),纵坐标表示范围查询高效性度量。根据图7可看出:随着N值的增长(即随着特征数据值域的增长),新查询对非目标数据的过滤效果将变差,这是因为N值的增长会使同一特征数据对应的可能明文数据数量变大,从而降低查询高效性度量值;但范围特征数据使得大部分的非目标数据均能在云端被过滤掉,从而降低返回客户端的数据规模,极大提高了范围查询效率。综合以上两组实验,无论蕴含查询还是范围查询,云端通过执行转换得到的定义在特征数据上的新查询均能过滤掉绝大部分的非目标数据(0.94以上),即特征数据具有良好的查询高效性,能有效地降低XML数据查询开销。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种云环境下XML档案隐私数据保护方法,其特征在于,包括以下步骤:
(1)对于XML档案中的敏感元素,为其增设三个子元素,分别为密文数据元素、蕴含特征数据元素、以及范围特征数据元素,获得加密XML档案并存储至云端;步骤(1)包括:
(1-1)对于所述敏感元素存储内容进行加密,获得所述密文数据;
(1-2)对于所述敏感元素存储内容,获取其蕴含特征数据;步骤(1-2)包括:
(1-2-1)对于所述敏感元素存储内容进行字符对映射,以捕获字符串蕴含查询所需的关键特征信息;
(1-2-2)对于步骤(1-2-1)获取的关键特征信息进行字符串蕴含映射,获得所述敏感元素存储内容蕴含特征数据;
(1-3)将所述敏感元素存储内容,采用范围映射函数R(a1a2...an)映射为同样定义在值域
Figure FDA0002439573970000011
上的字符串;
(2)获取用户定义在步骤(1)中获得的云端存储的加密XML档案的敏感元素上的原始查询,并将所述原始查询变换为对于所述敏感元素蕴含特征数据元素和/或范围特征数据元素的替代查询;
(3)在步骤(1)中获得的云端存储的加密XML档案的所述敏感元素蕴含特征数据元素和/或范围特征数据元素上执行步骤(2)获得的替代查询,获得替代查询结果,并将所述替代查询结果发送给可信端;
(4)所述可信端对步骤(3)中获得的替代查询结果进行解密,获得所述敏感元素存储内容的明文,在所述敏感元素存储内容的明文上执行步骤(2)获取的原始查询,将查询结果返回给用户。
2.如权利要求1所述的云环境下XML档案隐私数据保护方法,其特征在于,步骤(1)所述密文数据元素用于存储所述敏感元素存储内容的密文数据;所述蕴含特征数据元素用于存储所述敏感元素存储内容的蕴含特征数据,所述蕴含特征数据用于蕴含查询,所述蕴含查询即查询其所述敏感元素包含查询关键词字符串的记录;所述范围特征数据元素用于存储所述敏感元素存储内容的范围特征数据,所述范围特征数据用于范围查询,所述范围查询即查询其所述敏感元素被落入查询范围内的记录。
3.如权利要求1所述的云环境下XML档案隐私数据保护方法,其特征在于,步骤(1-2-1)所述字符对映射,即将定义在值域
Figure FDA0002439573970000021
上的任意两个字符a1和a2映射为同样定义在值域
Figure FDA0002439573970000022
上的一个字符
Figure FDA0002439573970000023
即:P(a1,a2):
Figure FDA0002439573970000024
其中
Figure FDA0002439573970000025
为全体字符的值域;
所述字符对映射函数P(a1,a2)按照如下方法获取:
A1、将全体字符串值域
Figure FDA0002439573970000026
划分为
Figure FDA0002439573970000027
个非空子域,记作
Figure FDA0002439573970000028
即所述子域
Figure FDA0002439573970000029
满足:①任一子域均不为空集,即
Figure FDA00024395739700000210
其中
Figure FDA00024395739700000211
Figure FDA00024395739700000212
②任意两个子域不重叠,即
Figure FDA00024395739700000213
其中
Figure FDA00024395739700000214
Figure FDA00024395739700000215
③所有子域的并集等于值域本身,即
Figure FDA00024395739700000216
Figure FDA00024395739700000217
A2、为步骤A1获得的非空子域
Figure FDA00024395739700000218
分配征数标识符,分别记作:
Figure FDA00024395739700000219
使得所述标识符
Figure FDA00024395739700000220
Figure FDA00024395739700000221
且任意两个子域的标识符互不相同,即
Figure FDA00024395739700000222
Figure FDA00024395739700000223
A3、根据A1和A2,获得标识符映射函数
Figure FDA00024395739700000224
其中
Figure FDA00024395739700000225
为包含字符a的子域,即
Figure FDA00024395739700000226
将Q(a1)和Q(a2)做关联运算P(a1,a2),使得运算结果的值域被包含于全体字符的值域
Figure FDA00024395739700000227
则将P(a1,a2)作为字符对映射函数;例如
Figure FDA0002439573970000031
在这里,Q(a1)和Q(a2)取值均落在0至
Figure FDA0002439573970000032
之间,两者连接起来加和,恰有P(a1,a2)的值域为
Figure FDA0002439573970000033
4.如权利要求1所述的云环境下XML档案隐私数据保护方法,其特征在于,步骤(1-2-2)即对于定义在值域
Figure FDA0002439573970000034
上的任意字符串a1a2...an,映射为同样定义在值域
Figure FDA0002439573970000035
上的字符串a′1a′2...a′n′,记做:F(a1a2...an)=a′1a′2...a′n,且F(a1a2...an):
Figure FDA0002439573970000036
满足:①1≤n′≤n-1;②a′1<a′2<…<a′n′;③任意的ai∈a1a2...an,必然存在唯一的a′k∈a′1a′2...a′n′,满足P(ai,ai+1)=a′k;④任意a′k∈a′1a′2...a′n′,必然存在ai∈a1a2...an(不一定唯一),满足P(ai,ai+1)=a′k
所述字符串蕴含映射函数F(a1a2...an)按照如下方法获取:
B1、对于任意字符串a1a2...an,基于给定的字符对映射函数P:
Figure FDA0002439573970000037
Figure FDA0002439573970000038
将其包含的字符对均映射为字符,得到映射字符集合
Figure FDA0002439573970000039
记作
Figure FDA00024395739700000310
Figure FDA00024395739700000311
B2、对于步骤B1获得的映射字符集合
Figure FDA00024395739700000312
去除其中重复字符后,按其值升序排列,组装成新的字符串F(a1a2...an)=a′1a′2...a′n′,将映射规则作为F(a1a2...an)作为所述字符串蕴含映射函数,将字符串a′1a′2...a′n′作为所述蕴含特征数据。
5.如权利要求1所述的云环境下XML档案隐私数据保护方法,其特征在于,步骤(1-3)即范围特征数据R(a1a2...an):
Figure FDA00024395739700000313
使其满足:①1≤|R(a1a2...an)|≤n;②对于定义在
Figure FDA00024395739700000314
上的任意字符串a′1a′2...a′n′,如果a1a2...an≤a′1a′2...a′n′,则R(a1a2...an)≤R(a′1a′2...a′n′);
所述范围映射函数R(a1a2...an)按照以下方法获取:
C1、将字符串a1a2...an的值域
Figure FDA00024395739700000315
划分为N个非空子域,分别记作:
Figure FDA00024395739700000316
Figure FDA00024395739700000317
满足:满足以下条件:①任一子域均不为空集,即
Figure FDA00024395739700000318
②任意两个子域不重叠,即
Figure FDA00024395739700000319
③所有子域的并集等于值域本身,即
Figure FDA0002439573970000041
④各子域元素保持有序,即对于
Figure FDA0002439573970000042
如果i<k,则必然有
Figure FDA0002439573970000043
C2、对于步骤C1中获得的非空子域
Figure FDA0002439573970000044
分配字符串标识符,分别记作:
Figure FDA0002439573970000045
使其满足:①各个标识符本身也是字符串,即
Figure FDA0002439573970000046
②各个标识符保持有序,即如果i<k,则必然有
Figure FDA0002439573970000047
C3、根据步骤C1和C2,获得范围映射函数
Figure FDA0002439573970000048
Figure FDA0002439573970000049
其中,
Figure FDA00024395739700000410
为包含字符串a1a2...an的子域,即
Figure FDA00024395739700000411
6.如权利要求1所述的云环境下XML档案隐私数据保护方法,其特征在于,步骤(2)具体为:
(2-1)当所述原始查询为蕴含查询时,即查询所有所述敏感元素蕴含查询关键词的记录,记作contains(/path/element,a1a2…am),其中/path/element为XML档案中的敏感元素,a1a2...am为查询关键词,则:
将所述查询关键词a1a2...am按照与步骤(1)获得蕴含特征数据相同的方法,获取其蕴含特征关键词a′1a′2...a′m′;对于所有a′l∈a′1a′2...a′m′,将所述原始查询转换为在所述敏感元素的蕴含特征数据元素上所有以a′l为蕴含查询关键词的查询的且运算,即:
Figure FDA00024395739700000412
(2-2)当所述原始查询为范围查询时,即所述查询所有所述敏感元素落入查询范围≥a1a2...am或≤a1a2...am的记录,其中a1a2...am为查询关键词,则:
将所述查询关键词a1a2...am按照与步骤(1)获得所述范围特征数据相同的方法,获取其范围查询关键词R(a1a2...am);将所述原始查询转换为在所述敏感元素的范围特征数据元素上所有≥R(a1a2...am)或≤R(a1a2...am)的查询,即:
Figure FDA0002439573970000051
或:
Figure FDA0002439573970000052
(2-3)当所述原始查询为等值查询时,即查询所有所述敏感元素为查询关键词的记录,即“/path/element=a1a2...am”,其中a1a2...am为查询关键词,则:
将所述原始查询转换为蕴含所述查询关键词a1a2...am的蕴含查询与等于所述查询关键词a1a2...am的范围查询的且运算,并将所述查询关键词a1a2...am的蕴含查询按照步骤(2-1)的方法转换,将所述等于所述查询关键词a1a2...am的范围查询按照步骤(2-2)的方法转换;即:
Figure FDA0002439573970000053
其中,F(a1a2...am)=a′1a′2...a′m′
7.一种云环境下XML档案隐私数据保护系统,其特征在于,所述系统设置于用户端和云服务器之间,包括加密部件、查询转换部件和解密部件;
所述加密部件,用于获取原始XML档案,对于所述XML档案中的敏感元素,为其增设三个子元素,分别为密文数据元素、蕴含特征数据元素、以及范围特征数据元素,获得加密XML档案并存储至云端;
所述加密部件,包括密文数据生成模块、蕴含特征数据生成模块、以及范围特征生成模块;
所述密文数据生成模块,用于根据所述原始XML档案的所述敏感元素存储内容进行加密,获得所述密文数据并存储于所述密文数据元素;
所述蕴含特征生成模块,用于根据所述原始XML档案的所述敏感元素存储内容进行字符对映射和蕴含映射,获得所述蕴含特征数据并存储于所述蕴含特征数据元素;具体包括:(1-2-1)对于所述敏感元素存储内容进行字符对映射,以捕获字符串蕴含查询所需的关键特征信息;
(1-2-2)对于步骤(1-2-1)获取的关键特征信息进行字符串蕴含映射,获得所述敏感元素存储内容蕴含特征数据;
所述范围特征生成模块,用于根据所述原始XML档案的所述敏感元素存储内容进行范围映射,获得所述范围特征数据并存储于所述范围特征数据元素;
所述查询转换部件,用于获取用户定义在所述加密XML档案的敏感元素上的原始查询,并将所述原始查询转换为对对所述敏感元素蕴含特征元素和/或范围特征数据元素的替代查询,并提交给云服务器执行所述替代查询;
所述解密部件,用于获取所述云服务其执行的替代查询结果以及用于提供的原始查询,并将所述替代查询结果解密,获得所述敏感元素存储内容的明文,在所述敏感元素存储内容的明文上执行原始查询,将查询结果返回给用户。
8.如权利要求7所述的云环境下XML档案隐私数据保护系统,其特征在于,所述查询转换部件,包括蕴含查询转换模块、范围查询转换模块、以及等值查询转换模块;
所述蕴含查询转换模块,用于当所述原始查询为蕴含查询时,将所述原始查询的查询关键词a1a2...am提交给蕴含特征数据生成模块,获取其蕴含特征关键词a′1a′2...a′m′;对于所有a′l∈a′1a′2...a′m′,将所述原始查询转换为在所述敏感元素的蕴含特征数据元素上所有以a′l为蕴含查询关键词的查询的且运算;
所述范围查询转换模块,用于当所述原始查询为范围查询时,将所述原始查询的查询关键词a1a2...am提交范围特征数据生成模块,获取其范围查询关键词R(a1a2...am);将所述原始查询转换为在所述敏感元素的范围特征数据元素上所有≥R(a1a2...am)或≤R(a1a2...am)的查询;
所述等值查询转换模块,用于当所述原始查询为范围查询时,将所述原始查询提交给所述蕴含查询转换模块以及范围查询转换模块,获得相应转换的蕴含替代查询以及范围替代查询,将二者进行且运算,获得所述等值查询的替代查询。
CN201910813327.3A 2019-08-30 2019-08-30 一种云环境下xml档案隐私数据保护方法及系统 Active CN110543774B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910813327.3A CN110543774B (zh) 2019-08-30 2019-08-30 一种云环境下xml档案隐私数据保护方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910813327.3A CN110543774B (zh) 2019-08-30 2019-08-30 一种云环境下xml档案隐私数据保护方法及系统

Publications (2)

Publication Number Publication Date
CN110543774A CN110543774A (zh) 2019-12-06
CN110543774B true CN110543774B (zh) 2020-06-09

Family

ID=68712328

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910813327.3A Active CN110543774B (zh) 2019-08-30 2019-08-30 一种云环境下xml档案隐私数据保护方法及系统

Country Status (1)

Country Link
CN (1) CN110543774B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111814188A (zh) * 2020-07-22 2020-10-23 绍兴文理学院 一种云数字图书馆读者的借阅隐私保护方法、系统及应用

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850187A (zh) * 2017-01-13 2017-06-13 温州大学瓯江学院 一种隐私字符信息加密查询方法及系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850187A (zh) * 2017-01-13 2017-06-13 温州大学瓯江学院 一种隐私字符信息加密查询方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Computation and Search over Encrypted XML Documents;Hoi Ting Poon and Ali Miri;<IEEE International Congress on Big Data>;20151231;第631-634页 *
针对网络信息系统的个人隐私保护方案;卢成浪等;《小型微型计算机系统》;20150630;第36卷(第6期);第1291-1295页 *
面向云数据库服务的隐私字符串加密查询方案;吴宗大;《计算机工程与应用》;20181231;第54卷(第11期);第103-108页 *

Also Published As

Publication number Publication date
CN110543774A (zh) 2019-12-06

Similar Documents

Publication Publication Date Title
JP7295068B2 (ja) フェデレーテッドキー管理
CN111783075B (zh) 基于密钥的权限管理方法、装置、介质及电子设备
Yiu et al. Enabling search services on outsourced private spatial data
EP2731041B1 (en) Computer system for storing and retrieval of encrypted data items, client computer, computer program product and computer-implemented method
Nagaraju et al. Trusted framework for online banking in public cloud using multi-factor authentication and privacy protection gateway
US10635824B1 (en) Methods and apparatus for private set membership using aggregation for reduced communications
CN106936771A (zh) 一种基于分级加密的安全云存储方法和系统
CN114398427A (zh) 提高专用加密数据的搜索能力
US9223949B1 (en) Secure transformable password generation
Peng et al. BlockShare: A Blockchain empowered system for privacy-preserving verifiable data sharing.
Wu et al. How to protect reader lending privacy under a cloud environment: a technical method
US8769303B2 (en) Infrastructure independent recovery key release
CN111382422B (zh) 在非法访问用户数据的威胁下更改账户记录的密码的系统和方法
Patil Madhubala Survey on security concerns in Cloud computing
CN110543774B (zh) 一种云环境下xml档案隐私数据保护方法及系统
Iyer et al. Analysis of data security in Cloud Computing
EP3311555B1 (en) Security for domain name system
Bhukya et al. Data security in cloud computing and outsourced databases
Tang et al. Study on data security of cloud computing
Wang et al. An effective verifiable symmetric searchable encryption scheme in cloud computing
Jegadeeswari et al. Efficient dynamic bloom filter hashing fragmentation for cloud data storage
Yang et al. Research on the ranked searchable encryption scheme based on an access Tree in IoTs
Cindhamani et al. An enhanced data security and trust management enabled framework for cloud computing systems
WO2018034192A1 (ja) 情報処理装置、情報処理方法、及び、記録媒体
Nadjar et al. A Case Study on the Multi-Vector Data Breach on Astoria

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