混合云环境下面向加密数据库的数据存取系统及方法技术方案

技术编号:14891540 阅读:148 留言:0更新日期:2017-03-29 00:20
本发明专利技术公开了一种混合云环境下面向加密数据库的数据存取系统及方法,系统包括用户模块、密钥管理模块、数据加解密模块、数据完整性验证模块、身份认证模块、权限控制模块、数据存储模块。本发明专利技术方法实现的具体步骤为:(1)上传数据;(2)生成密钥;(3)加密数据;(4)存储数据;(5)完整性验证;(6)身份认证;(7)权限控制;(8)发起查询;(9)加密查询语句;(10)密文查询;(11)解密密文;(12)加密查询结果;(13)解密查询结果。本发明专利技术实现了数据在公有云中的安全存储和查询。

【技术实现步骤摘要】

本专利技术属于计算机
,更进一步涉及云计算
中的一种混合云环境下面向加密数据库的数据存取系统及方法。本专利技术可用于大数据背景下,实现外包数据的安全存储和查询。
技术介绍
目前数据库加密方案相对较多,但面临着不能抵抗第三方公有云被动攻击,不能利用密文索引进行范围查询,造成性能严重下降等问题。现有的数据库安全增强方案往往采用应用层加密存储或者多级视图的技术实现方式。应用层加密方式的缺点是应用必须对数据进行加解密,增加编程复杂度;加密后的数据不能作为条件进行检索;同时对于已有的系统无法透明实现应用改造。多级视图方案的重要缺陷是数据加解密均在第三方公有云进行,因此,当数据解密后,公有云仍可以获得用户的查询结果,并不能从根本上实现对用户数据的保护。中国移动通信集团公司在其申请的专利“一种云数据库加密方法、系统及装置”(申请号:201310393464.9,公开号:CN104426973A)公开了一种云数据库加密方法、系统及装置。该方法的具体步骤包括:(1)数据上传客户端接收来自数据申请客户端的一个以上密钥对中的公钥,所述密钥对由数据申请客户端生成,且对应不同的计算种类;(2)数据上传客户端对数据明文进行预处理,并根据可能进行的计算种类,采用对应的密钥对中的公钥对预处理后的数据明文进行加密,得到数据密文,将所述数据密文及其对应的数据明文的预处理方式发送至云数据库。该方法存在的不足之处是:加密密钥的存储不能从根本上实现对数据的安全保护。该系统包括数据申请客户端,用于生成一个以上密钥对,将密钥对中的公钥发送至数据上传客户端;所述密钥对对应不同的计算种类;数据上传客户端,用于对数据明文进行预处理,并根据可能进行的计算种类,采用对应的密钥对中的公钥对预处理后的数据明文进行加密,得到数据密文,将所述数据密文及其对应的数据明文的预处理方式发送至云数据库;云数据库,用于保存所述数据密文及其对应的数据明文的预处理方式。该系统存在的不足之处是:没有保证云端数据完整性验证功能,不能发现云数据库上的数据遭受到攻击。南京邮电大学在其申请的专利“一种数据库加密方法及该加密数据库查询方法”(申请号:201610129024.6,公开号:CN105787387A)公开了一种数据库加密方法及该加密数据库查询方法。该专利涉及一种数据库加密方法,具体设计引入等值加密算法、保存加密算法和同态加密算法针对数据库中的数据进行分类加密,并存储在服务器端数据库中,消除了不可信服务器端探查、泄露机密数据的隐患,从而保护了数据的隐私性;并且该专利还涉及一种基于数据库加密方法的该加密数据库查询方法,在具体设计引入等值加密算法、保存加密算法和同态加密算法针对数据库中的数据进行分类加密的基础之上,提供了在密文上直接执行查询操作的处理方法,提高了执行效率,并减少了用户的通信和计算开销。该方法存在的不足之处是:在每列数据最外层采用随机加密进行加密,不能在加密数据列上建立索引,造成性能严重下降。
技术实现思路
本专利技术的目的是针对上述现有技术的不足,提出一种混合云环境下面向加密数据库的数据存取系统及方法。实验本专利技术目的的思路是,为了实现对第三方公有云上数据的安全存储与查询,数据拥有者在上传数据的过程中,用户模块按照数据密级的不同将数据进行密级划分,私有云服务器的不同模块对上传的数据进行加密处理;用户查询数据时,首先要经过私有云服务器上的不同模块,对用户进行身份认证和权限控制,使得用户在其权限范围内实现在密文数据上进行查询。为防止恶意攻击者对公有云上的数据进行篡改,在数据完整性验证模块,实现了对公有云上数据的完整性验证。本专利技术的系统包括用户模块、密钥管理模块、身份认证模块、权限控制模块、数据加解密模块、数据存储模块、数据完整性验证模块,其中:所述的用户模块,用于按照拟保护的数据密级类别,对数据库中的数据进行密级划分;将数据库中密级划分后的数据,按照对应的密级分别上传到数据加解密模块;用户在用户模块输入查询语句;与密钥管理模块协商查询的会话密钥,产生查询的会话密钥,将会话密钥分别保存到密钥管理模块的密钥中心和用户模块中;将查询语句发送给数据加解密模块;利用查询的会话密钥对查询结果密文数据进行解密,得到明文数据查询结果;将明文数据查询结果返回给用户;所述的密钥管理模块,用于构建基于B+树索引结构的密钥中心;从密钥管理模块的密钥中心中任意选择一个密钥作为主密钥,将主密钥作为树的根节点,树中的每个节点对应一个密钥;利用密钥哈希公式,计算树中每个子节点的密钥;将树中叶子节点的密钥存储在密钥管理模块的密钥中心;与用户模块协商查询的会话密钥,产生查询的会话密钥,将会话密钥分别保存在密钥管理模块的密钥中心和用户模块中;所述的身份认证模块,用于根据用户输入的用户名和口令判断用户是否是合法用户,若是,则通过验证,执行权限控制,否则,重新执行身份认证;所述的权限控制模块,用于判断当前用户是否为内网访问或者外网访问中的用户的身份属性为管理员,若是,则发起查询,否则,重新执行身份认证;所述的数据加解密模块,用于从密钥管理模块的密钥中心中分离出随机加密密钥,利用随机加密算法,对绝密级类别的数据进行加密,得到绝密级数据密文;从密钥管理模块的密钥中心中分离出可搜索加密密钥,利用可搜索加密算法,对秘密级类别的数据进行加密,得到秘密级数据密文;利用差分隐私方法,对公开级类别的数据进行处理,得到处理后的公开级数据信息;将绝密级数据密文、秘密级数据密文、处理后的公开级数据信息分别发送给数据存储模块;从密钥管理模块的密钥中心中分离出可搜索加密密钥,利用可搜索加密方法对查询条件加密,得到查询条件密文,向数据存储模块发起查询请求;利用可搜索加密算法对匹配的密文结果进行解密,得到明文查询结果;采用查询的会话密钥对密文查询结果加密,得到加密信息,将加密信息发送给用户模块;所述的数据存储模块,用于接收数据加解密模块发送来的加密数据,将加密数据存储在数据存储模块的数据库中;利用可搜索加密算法,在数据存储模块的数据库中建立索引,利用索引查询数据库中的内容,利用查询结果生成证据,将证据返回到数据完整性验证模块;利用可搜索加密算法建立的索引,在数据库里对查询条件密文进行检索,得到匹配的密文结果,发送给数据加解密模块;所述的数据完整性验证模块,用于使用向量承诺方法,分别计算出公共参数、承诺和辅助信息,并对承诺及计数器进行签名;验证数据存储模块返回的证据是否与数据完整性验证模块生成的承诺和签名匹配,若不匹配,则认为数据库中的数据遭到恶意篡改,拒绝验证。本专利技术的方法包括步骤如下:(1)上传数据:(1a)用户模块按照拟保护的数据密级类别对数据库中的数据进行密级划分;(1b)用户模块将数据库中密级划分后的数据按照对应的密级分别上传到数据加解密模块;(2)生成密钥:(2a)密钥管理模块建立基于B+树索引结构的密钥中心,用于存储管理密钥,B+树的叶子节点的总数等于数据库中数据表的总数;(2b)从密钥管理模块的密钥中心中任意选择一个密钥作为主密钥,将主密钥作为树的根节点,树中的每个节点对应一个密钥;(2c)密钥管理模块利用密钥公式,计算每一个树中子节点的密钥;(2d)密钥管理模块将所有的树中叶子节点的密钥,存储到密钥管理模块的密钥中心本文档来自技高网
...
混合云环境下面向加密数据库的数据存取系统及方法

【技术保护点】
一种混合云环境下面向加密数据库的数据存取系统,包括用户模块、密钥管理模块、身份认证模块、权限控制模块、数据加解密模块、数据存储模块、数据完整性验证模块,其中:所述的用户模块,用于按照拟保护的数据密级类别,对数据库中的数据进行密级划分;将数据库中密级划分后的数据,按照对应的密级分别上传到数据加解密模块;用户在用户模块输入查询语句;与密钥管理模块协商查询的会话密钥,产生查询的会话密钥,将会话密钥分别保存到密钥管理模块的密钥中心和用户模块中;将查询语句发送给数据加解密模块;利用查询的会话密钥对查询结果密文数据进行解密,得到明文数据查询结果;将明文数据查询结果返回给用户;所述的密钥管理模块,用于构建基于B+树索引结构的密钥中心;从密钥管理模块的密钥中心中任意选择一个密钥作为主密钥,将主密钥作为树的根节点,树中的每个节点对应一个密钥;利用密钥哈希公式,计算树中每个子节点的密钥;将树中叶子节点的密钥存储在密钥管理模块的密钥中心;与用户模块协商查询的会话密钥,产生查询的会话密钥,将会话密钥分别保存在密钥管理模块的密钥中心和用户模块中;所述的身份认证模块,用于根据用户输入的用户名和口令判断用户是否是合法用户,若是,则通过验证,执行权限控制,否则,重新执行身份认证;所述的权限控制模块,用于判断当前数据使用者是否为内网访问或者外网访问中的数据使用者的身份属性为管理员,若是,则发起查询,否则,重新执行身份认证;所述的数据加解密模块,用于从密钥管理模块的密钥中心中分离出随机加密密钥,利用随机加密算法,对绝密级类别的数据进行加密,得到绝密级数据密文;从密钥管理模块的密钥中心中分离出可搜索加密密钥,利用可搜索加密算法,对秘密级类别的数据进行加密,得到秘密级数据密文;利用差分隐私方法,对公开级类别的数据进行处理,得到处理后的公开级数据信息;将绝密级数据密文、秘密级数据密文、处理后的公开级数据信息分别发送给数据存储模块;从密钥管理模块的密钥中心中分离出可搜索加密密钥,利用可搜索加密方法对查询条件加密,得到查询条件密文,向数据存储模块发起查询请求;利用可搜索加密算法对匹配的密文结果进行解密,得到明文查询结果;采用查询的会话密钥对密文查询结果加密,得到加密信息,将加密信息发送给用户模块;所述的数据存储模块,用于接收数据加解密模块发送来的加密数据,将加密数据存储在数据存储模块的数据库中;利用可搜索加密算法,在数据存储模块的数据库中建立索引,利用索引查询数据库中的内容,利用查询结果生成证据,将证据返回到数据完整性验证模块;利用可搜索加密算法建立的索引,在数据库里对查询条件密文进行检索,得到匹配的密文结果,发送给数据加解密模块;所述的数据完整性验证模块,用于使用向量承诺方法,分别计算出公共参数、承诺和辅助信息,并对承诺及计数器进行签名;验证数据存储模块返回的证据是否与数据完整性验证模块生成的承诺和签名匹配,若不匹配,则认为数据库中的数据遭到恶意篡改,拒绝验证。...

【技术特征摘要】
1.一种混合云环境下面向加密数据库的数据存取系统,包括用户模块、密钥管理模块、身份认证模块、权限控制模块、数据加解密模块、数据存储模块、数据完整性验证模块,其中:所述的用户模块,用于按照拟保护的数据密级类别,对数据库中的数据进行密级划分;将数据库中密级划分后的数据,按照对应的密级分别上传到数据加解密模块;用户在用户模块输入查询语句;与密钥管理模块协商查询的会话密钥,产生查询的会话密钥,将会话密钥分别保存到密钥管理模块的密钥中心和用户模块中;将查询语句发送给数据加解密模块;利用查询的会话密钥对查询结果密文数据进行解密,得到明文数据查询结果;将明文数据查询结果返回给用户;所述的密钥管理模块,用于构建基于B+树索引结构的密钥中心;从密钥管理模块的密钥中心中任意选择一个密钥作为主密钥,将主密钥作为树的根节点,树中的每个节点对应一个密钥;利用密钥哈希公式,计算树中每个子节点的密钥;将树中叶子节点的密钥存储在密钥管理模块的密钥中心;与用户模块协商查询的会话密钥,产生查询的会话密钥,将会话密钥分别保存在密钥管理模块的密钥中心和用户模块中;所述的身份认证模块,用于根据用户输入的用户名和口令判断用户是否是合法用户,若是,则通过验证,执行权限控制,否则,重新执行身份认证;所述的权限控制模块,用于判断当前数据使用者是否为内网访问或者外网访问中的数据使用者的身份属性为管理员,若是,则发起查询,否则,重新执行身份认证;所述的数据加解密模块,用于从密钥管理模块的密钥中心中分离出随机加密密钥,利用随机加密算法,对绝密级类别的数据进行加密,得到绝密级数据密文;从密钥管理模块的密钥中心中分离出可搜索加密密钥,利用可搜索加密算法,对秘密级类别的数据进行加密,得到秘密级数据密文;利用差分隐私方法,对公开级类别的数据进行处理,得到处理后的公开级数据信息;将绝密级数据密文、秘密级数据密文、处理后的公开级数据信息分别发送给数据存储模块;从密钥管理模块的密钥中心中分离出可搜索加密密钥,利用可搜索加密方法对查询条件加密,得到查询条件密文,向数据存储模块发起查询请求;利用可搜索加密算法对匹配的密文结果进行解密,得到明文查询结果;采用查询的会话密钥对密文查询结果加密,得到加密信息,将加密信息发送给用户模块;所述的数据存储模块,用于接收数据加解密模块发送来的加密数据,将加密数据存储在数据存储模块的数据库中;利用可搜索加密算法,在数据存储模块的数据库中建立索引,利用索引查询数据库中的内容,利用查询结果生成证据,将证据返回到数据完整性验证模块;利用可搜索加密算法建立的索引,在数据库里对查询条件密文进行检索,得到匹配的密文结果,发送给数据加解密模块;所述的数据完整性验证模块,用于使用向量承诺方法,分别计算出公共参数、承诺和辅助信息,并对承诺及计数器进行签名;验证数据存储模块返回的证据是否与数据完整性验证模块生成的承诺和签名匹配,若不匹配,则认为数据库中的数据遭到恶意篡改,拒绝验证。2.一种混合云环境下面向加密数据库的数据存取方法,包括如下步骤:(1)上传数据:(1a)用户模块按照拟保护的数据密级类别对数据库中的数据进行密级划分;(1b)用户模块将数据库中密级划分后的数据按照对应的密级分别上传到数据加解密模块;(2)生成密钥:(2a)密钥管理模块建立基于B+树索引结构的密钥中心,用于存储管理密钥,B+树的叶子节点的总数等于数据库中数据表的总数;(2b)从密钥管理模块的密钥中心中任意选择一个密钥作...

【专利技术属性】
技术研发人员:马鑫迪马建峰李辉张世哲苗银宾张凯李金库卢笛习宁姚青松袁涛
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西;61

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

1