CN109981267B - 大规模用户多密钥场景云加密数据库系统及存储查询方法 - Google Patents

大规模用户多密钥场景云加密数据库系统及存储查询方法 Download PDF

Info

Publication number
CN109981267B
CN109981267B CN201910222074.2A CN201910222074A CN109981267B CN 109981267 B CN109981267 B CN 109981267B CN 201910222074 A CN201910222074 A CN 201910222074A CN 109981267 B CN109981267 B CN 109981267B
Authority
CN
China
Prior art keywords
user
request
thread
key
proxy server
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
CN201910222074.2A
Other languages
English (en)
Other versions
CN109981267A (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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN201910222074.2A priority Critical patent/CN109981267B/zh
Publication of CN109981267A publication Critical patent/CN109981267A/zh
Application granted granted Critical
Publication of CN109981267B publication Critical patent/CN109981267B/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
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了大规模用户多密钥场景云加密数据库系统及存储查询方法,对已有的云加密数据库系统,在应对大规模用户多密钥场景下的性能和安全问题提出了解决方案。最好的安全保护技术是对数据进行先加密后存储,已有的云加密数据库系统一定程度上解决了云服务器密文数据检索困难问题,但密钥的单一性使其很难应对大规模用户多密钥场景。本发明使用私有云代理服务器对用户的海量数据进行加解密服务,同时使用私有云密钥管理器对用户组密钥进行高效分发管理。私有云代理服务器高并行处理用户请求,私有云密钥管理器散列存储、匹配用户组密钥,能够高效实现大规模用户请求,解决了现有云加密数据库系统在应对大规模用户多密钥场景下的性能和安全问题。

Description

大规模用户多密钥场景云加密数据库系统及存储查询方法
技术领域
本发明属于信息安全技术领域,具体涉及大规模用户多密钥场景下云服务器中海量数据的加解密服务,以及密钥的高效分发管理。
背景技术
随着现代科学的蓬勃发展,信息化和大数据时代的到来,海量数据成为极其重要的资源,如何有效的保护隐私数据的安全也成为重要的研究课题。对于海量数据的处理,人们通常的做法是将自己的数据外包到云服务器进行存储和管理。但云服务器并不是完全安全的,近年来云服务器安全事件屡见不鲜,例如2015年的网易邮箱账号密码泄露事件、2015年的阿里云盾安全事件和2016年130万考研用户信息泄露事件等。随着云服务器安全事件的频发,人们越来越重视起云服务器安全问题。对于云服务器安全问题,对数据进行先加密后存储是目前公认最好的安全保护技术。然而数据加密后,数据之间的联系减少,对云服务器检索数据带来很大困难。有人提出了加密数据库如CryptDB,它通过把对数据库进行的操作(选择、连接、投影等)进行特殊处理,使得这些操作能够执行在已加密的数据上。这一定程度上解决了云服务器检索密文数据困难问题,但又因其加密密钥单一,无法应对大规模用户多密钥场景下的性能和安全挑战。
发明内容
本发明的目的是提出一种在大规模用户多密钥场景下对云服务器中海量数据进行加解密服务,同时对密钥进行高效分发管理,达到用户数据安全的方案。
为实现上述目的,本发明采用的技术方案是:设计出了一种在大规模用户多密钥场景下的加密数据库系统,本地私有云服务器对海量数据进行加解密服务,并将密文数据上传远程公有云服务器进行存储管理,同时私有云服务器对密钥进行高效分发管理。
加密数据库系统基于本地私有云代理服务器集群,能够同时处理大规模用户的请求,将用户上传的数据加密为密文存储于公有云服务器;对大规模用户请求查询的数据,从公有云服务器获得密文数据,再配合私有云分发的密钥进行解密处理后发送给请求用户。
本系统包括用户端、私有云端、公有云端三部分,用户端可以实现用户系统注册、数据上传和数据查询等功能;私有云端提供数据加解密处理和密钥分发管理服务,包括密钥管理器、代理服务器集群和资源调度器三个部分;公有云端提供密文数据的存储管理资源。
在大规模用户多密钥场景下用户对加密数据库的请求操作具体可分为两种——上传和查询,加密数据库对用户请求的处理可以概况为以下内容:
一、上传时步骤如下:
步骤一、用户在本系统用户端注册;
步骤二、私有云端为注册用户生成一组唯一特定匹配的密钥,并将该组密钥存储在私有云密钥管理器中;
步骤三、用户向私有云端发起数据上传请求,并经由用户端向私有云端上传数据;
步骤四、私有云端接收到用户发起的数据上传请求,私有云资源调度器先为该请求发起请求线程,再将该请求线程挂载在请求就绪队列的末尾,并为该请求线程设置优先级。此时该请求线程进入等待状态,等待私有云资源调度器唤醒后执行;
步骤五、私有云资源调度器实时调度请求就绪队列中的线程,同时监控私有云代理服务器集群中执行完成的线程,并将该结束线程退出代理服务器;
步骤六、私有云资源调度器监控到空闲的代理服务器后,即唤醒等待的请求线程,将该请求线程调度到空闲的代理服务器进行处理;
步骤七、私有云代理服务器接收到用户由用户端上传的数据;
步骤八、私有云密钥管理器接收到用户请求线程被调度的信息后,立即通过该用户的认证码匹配到其唯一特定组密钥,并将该组密钥分发给私有云代理服务器;;
步骤九、私有云代理服务器使用该组密钥对接收到的数据进行加密处理;
步骤十、私有云代理服务器由私有云端将加密后的密文数据上传到公有云进行存储管理。
二、查询时步骤如下:
步骤一、用户经由用户端向私有云端发起数据查询请求;
步骤二、私有云端接收到用户发起的数据查询请求后,私有云资源调度器先为该请求发起请求线程,再将该请求线程挂载在请求就绪队列的末尾,并为该请求线程设置优先级。此时该请求线程进入等待状态,等待私有云资源调度器唤醒后执行;
步骤三、私有云资源调度器实时调度请求就绪队列中的线程,同时监控私有云代理服务器集群中执行完成的线程,并为该结束线程退出代理服务器;
步骤四、私有云资源调度器监控到空闲的代理服务器后,即唤醒等待的请求线程,将该请求线程调度到空闲的代理服务器进行处理;
步骤五、私有云代理服务器对该用户请求线程进行数据库重写,该重写是为私有云端在公有云端进行密文数据查询做准备;
步骤六、私有云代理服务器对该请求线程重写后,经由私有云端向公有云端请求用户查询的密文数据,此时该请求线程被挂起,进入等待状态;
步骤七、公有云端接收到私有云端的密文数据请求,经查询后将该密文数据返回给私有云端;
步骤八、私有云资源调度器监控到公有云端返回的密文数据,即将该被挂起进入等待状态的用户请求线程唤醒,并为该请求线程调度空闲的私有云代理服务器对其进行处理;
步骤九、私有云资源管理器调度空闲的私有云代理服务器接收到公有云端返回的密文数据;
步骤十、私有云密钥管理器接收到用户请求线程被调度的信息后,立即通过该用户的认证码匹配到其唯一特定组密钥,并将该组密钥分发给私有云代理服务器;
步骤十一、私有云代理服务器使用该组密钥对接收到的密文数据进行解密处理;
步骤十二、私有云代理服务器由私有云端将解密后的明文数据返回给请求查询数据的用户。
与现有技术相比,本发明至少具有以下有益的技术效果,本发明一定程度上解决了大规模用户多密钥场景下,云服务器中海量数据加解密服务的性能问题和海量密钥带来的密钥分发管理问题,达到用户数据安全存储的目的。本地私有云服务器对用户的海量数据进行加解密服务,同时对密钥进行高效分发管理,远程公有云服务器对密文数据进行存储管理,能够高效实现大规模用户请求。
进一步的,用户在注册时系统会为该用户生成一个特定值作为该用户唯一特定的用户认证码,同时本系统内置一套固定的密钥生成器,密钥生成器属于私有云端部分,存储管理用户对应生成的特定组密钥,为代理服务器分发组密钥配合其解密。密钥管理器只需要分发管理这组唯一特定密钥即可达到用户与密钥配对的功能。当用户向私有云端发起数据查询请求时,资源管理器向私有云代理服务器发起响应询问,同时密钥管理器将该用户的认证码传递给密钥生成器,快速匹配到用户组密钥,再将该组密钥传递给代理服务器,配合其解密数据。由于密钥管理器只需要存储用户唯一特定的组密钥,且匹配用户密钥是立即匹配,因此本系统能够做到操作简单、管理便捷、分发高效。
进一步的,当系统用户量只需部分代理服务器进行处理时时,私有云代理服务器将对用户请求进行集中处理,此时资源调度器对请求线程进行组调度。资源调度器将用户的一组相关的请求线程,基于一对一的原则,同时调度到一组代理服务器上,对该组请求线程进行集中处理。组调度在用户量少时,能够高效处理用户请求。
进一步的,当系统用户量超出系统饱和度时,代理服务器集群协调处理大量用户请求是困难的。为减少用户请求的等待时间,资源调度器对请求线程进行动态调度。动态调度在用户量大时,能够减轻代理服务器集群的负载,同时减少用户请求的等待时间,有效的处理用户的请求。
附图说明
图1为本发明大规模用户多密钥场景云加密数据库加密代理系统结构图;
图2为本发明大规模用户多密钥场景云加密数据库资源调度图;
图3为本发明大规模用户多密钥场景云加密数据库代理服务器动态调度图;
图4为本发明大规模用户多密钥场景云加密数据库密钥分发管理;
图5为本发明大规模用户多密钥场景云加密数据库资源多级反馈调度。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
本发明使用私有云代理服务器对用户的海量数据进行加解密服务,同时使用私有云密钥管理器对用户组密钥进行高效分发管理。私有云代理服务器高并行处理用户请求,私有云密钥管理器散列存储、匹配用户组密钥,能够高效实现大规模用户请求,解决了现有云加密数据库系统在应对大规模用户多密钥场景下的性能和安全问题。
本发明的关键点包括大规模用户多密钥场景云加密数据库加密系统结构、私有云代理服务器资源调度以及私有云密钥的管理与分发三个部分:
1.大规模用户多密钥场景云加密数据库系统结构如图1所示,包括用户端、私有云端和公有云端三部分,用户端和私有云端双向通讯连接,私有云端和公有云端双向通讯连接。用户端可以实现用户系统注册、数据上传和数据查询等功能;私有云端提供数据加解密处理和密钥分发管理服务,包括密钥管理器、代理服务器集群和资源调度器三个部分,其中资源调度器为代理服务器集群调度请求线程,密钥管理器为代理服务器集群分发用户特定组密钥,代理服务器集群中若干代理服务器以并行处理方式处理请求线程;公有云端提供密文数据的存储管理资源。
1.1用户端
本系统的使用用户在系统注册后,系统会为该用户生成一组与其唯一特定匹配的密钥,并将其存储在私有云端的密钥管理器中;用户能够将自己的数据通过用户端上传到本系统,经由私有云端加密后上传到公有云端进行存储管理;用户能够通过用户端在系统中进行数据查询,私有云端接收用户请求后,从公有云端获取密文数据,再对其解密后发送给该请求用户。
1.2私有云端
私有云端为本系统的核心部分,由本地的三部分组成——代理服务器集群、密钥管理器、资源调度器。私有云承担用户请求的处理,在大规模用户多密钥场景下,单个代理服务器很难协调处理所有用户的请求任务;私有云通过资源调度器合理地调度代理服务器集群中的资源,使本系统在高并发场景下也能够协调处理所有用户的请求。
1.2.1密钥管理器
密钥管理器是私有云端中专用于分发管理用户注册后产生的一组密钥的单元,当私有云端需要对用户请求查询的数据进行解密处理时,密钥管理器会将用户唯一特定的一组密钥分发给用于解密处理的代理服务器,配合其对数据进行解密。
1.2.2代理服务器集群
代理服务器集群包括若干代理服务器,代理服务器是本系统的加解密服务模块,具体有两种操作:一是对系统用户上传的数据进行加密处理,并将加密后的密文数据上传到公有云端存储管理;二是对用户请求查询的数据,从公有云端获取到密文数据后,配合私有云密钥管理器分发的用户唯一特定的一组密钥,对密文数据进行解密处理,并将解密得到的明文数据发送给请求用户。
1.2.3资源调度器
资源调度器是私有云端对代理服务器集群资源进行调度管理的单元,当私有云端接收到用户的请求时,资源调度器向私有云端的代理服务器集群进行响应询问,再由资源调度器分配空闲的代理服务器响应用户的请求。
1.3公有云端
外购的公有云服务器,私有云端将系统用户上传的数据加密处理后产生的密文数据上传到公有云端进行存储管理;当用户发送数据请求时,将用户请求对应的密文数据发送给私有云端进行解密处理。
2.私有云端代理服务器资源调度
2.1资源调度器原理
私有云端中资源调度器用于对私有云中的计算资源和存储资源进行管理调度,如图2所示,其中,资源调度器内部设置有资源状态机、任务状态机和资源管理器三个部分,当用户向私有云端发起请求时,资源调度器响应用户请求,为用户发起请求线程,从私有云端的代理服务器集群中分配合理的资源给用户请求线程,用以对用户的请求进行处理。
2.2代理服务器调度
本系统基于大规模用户多密钥的使用场景,系统的用户多,同一时间用户请求量大,单代理服务器无法协调处理大量请求。为应对大量用户请求和海量数据,私有云端配置了代理服务器集群。代理服务器集群包括若干代理服务器,代理服务器集群中每台代理服务器都能够并发处理用户请求及数据。资源管理器对集群中代理服务器的调度在三种用户场景下具体有三种方式:用户量正常-负载分配、用户量少-组调度、用户量大-动态调度。下面对此三种情况做具体得介绍:
2.2.1用户量正常-负载分配:系统用户量在系统饱和度内时,私有云端代理服务器集群能够满足用户的请求和数据处理服务。此时本系统维护一个请求就绪全局队列,每个代理服务器只要处于空闲,资源调度器就从就绪请求队列中选择一个线程,将该空闲的代理服务器分配给此线程进行请求处理。负载分配的调度方式,在系统用户量正常时,能够高效处理用户请求。
2.2.2用户量少-组调度:系统用户量只需部分私有云代理服务器进行处理时时,私有云代理服务器将对用户请求进行集中处理,此时资源调度器对请求线程进行组调度。资源调度器将用户的一组相关的请求线程,基于一对一的原则,同时调度到一组代理服务器上,对该组请求线程进行集中处理。组调度在用户量少时,能够高效处理用户请求。
2.2.3用户量大-动态调度:如图3所示,系统用户量超出系统饱和度时,私有云代理服务器集群协调处理大量用户请求是困难的。为减少用户请求的等待时间,资源调度器对请求线程进行动态调度。资源调度器对用户请求的动态调度过程:
a资源管理器为用户请求线程维护一个动态的请求就绪队列;
b资源管理器为就绪队列中的用户请求线程设置合理的优先级,第一个线程(根据队列从前往后的顺序的第一个)的优先级最高,最后一个线程的优先级最低,线程的优先级由高到低递减;
c资源管理器设定请求线程执行的时间片,根据请求线程的优先级对其进行调度。
d当某个线程执行时,若该线程在固定时间片内完成,资源管理器即将其退出系统;若该线程未能在固定时间片内完成,资源管理器即将其优先级减一,等待下一次调度。
动态调度在用户量大时,能够减轻私有云代理服务器集群的负载,同时减少用户请求的等待时间,有效的处理用户的请求。
2.3资源调度方案
本系统在处理用户请求时具体有两个场景,场景一是用户端上传数据到私有云端,私有云端对用户端上传的数据进行加密处理,再上传到公有云端;场景二是用户端向私有云端请求数据查询,私有云端从公有云端获得密文数据,再对密文数据进行解密处理后发送回用户端。本系统针对这两个场景的资源调度方案是不同的,下面分别对这两种场景下的资源调度方案进行介绍。
2.3.1用户端上传数据场景:用户端将数据成功上传到私有云端后,用户即可下线,无需再与私有云端进行交互,此时私有云端调度代理服务器对上传数据进行处理是批处理调度。由于每个用户上传的数据量是不同的,私有云代理服务器处理数据的时间也不同。为了提高系统批处理数据的效率,资源调度器在对数据进行批处理调度时,对用户的请求线程进行标记处理。资源调度器在处理用户请求线程时,首先计算每个线程的等待时间T1和处理时间T2,再计算该线程的响应比R,最后根据线程的响应比高低对线程进行调度,响应比高的进程优先调度,计算公式:R=(T1+T2)/T2
2.3.2用户端请求数据查询场景:用户对私有云端发起数据查询请求时,私有云端对用户请求重写,再从公有云端获取密文数据,对密文数据进行解密后,将明文数据返回给请求用户。此用户请求数据查询过程即一个实时交互式调度过程,资源管理器调度线程是动态的。本系统为减少实时交互式调度的响应时间、提高其响应效率,资源调度器对请求线程进行以下调度:
a为请求线程设置多个就绪队列,并为各个队列赋予不同的优先级。第一个队列的优先级最高,队列的优先级由高到低递减;
b每个队列中线程执行时间片大小不同,优先级越高的队列分配到的时间片越少;
c当第一队列中的请求线程执行完后,再第二队列中的请求线程调度,依此类推,各个队列按照时间片轮转方式对请求线程进行调度。
d当一个请求线程发起后,先将其挂载在第一队列的末尾。轮到该线程执行时,若该线程在固定时间片内执行完成,资源度器即将该线程调度退出系统;若该线程在固定时间片内执行未能完成,资源调度器即将该线程调度到第二队列末尾,依次类推。
本系统的资源调度方案如图4所示,资源调度器在用户端上传数据场景和用户端请求数据查询场景中合理协调的进行资源调度。
3.私有云密钥的管理与分发
3.1密钥管理器原理
本系统私有云端密钥管理器专用于存储管理用户注册后产生的一组密钥,当用户向私有云发起数据请求时,密钥管理器会将用户唯一特定的一组密钥分发给用于解密处理的代理服务器,配合其对数据进行解密。本系统通过优化密钥管理器存储密钥的方式,有效减少了密钥的存储空间,同时提高了密钥匹配速度。密文数据与密钥能够高效匹配,加快了私有云对密文数据的处理速度,提高了系统处理请求的效率。
3.2密钥管理分发过程
密钥管理器对用户组密钥的管理分发具体有两个操作,其一是用户注册时会产生一组与用户唯一特定匹配的密钥,这组密钥被存储在私有云密钥管理器中;其二是将该组密钥发送给私有云代理服务器,配合代理服务器进行解密服务。
操作的具体过程是,当用户向私有云发起数据查询请求时,私有云资源调度器为该用户请求调度代理服务器资源,同时密钥管理器根据用户名快速匹配到该用户的组密钥,并将该组密钥发送给处理用户请求的代理服务器。代理服务器使用该组密钥,对公有云端返回的密文数据进行解密处理服务。
3.3密钥分发管理方案
本系统针对的是大规模用户多密钥场景,系统的使用用户多,用户上传的数据量大,而与用户唯一特定匹配的密钥组也将是海量的,这对密钥管理器的分发管理工作也是巨大的挑战。为了解决多用户场景下海量用户密钥组分发管理困难问题,本系统对私有云密钥管理器进行了优化处理。相对于常见数据库数据的存储模式,本系统的优化方案能够做到操作更加简单、管理更加便捷、分发更加高效。
本系统的优化方案如图5所示,用户在注册时系统会为该用户生成一个特定值作为该用户唯一特定的用户认证码,同时本系统内置一套固定的密钥生成器,密钥生成器属于私有云端部分,存储管理用户对应生成的特定组密钥,为代理服务器分发组密钥配合其解密。该密钥生成器由各密钥生成函数组成。通过向这套固定密钥生成器传入用户唯一特定认证码,会为该用户生成一组唯一特定密钥,该组密钥以散列方式存储在密钥管理器中。本系统的密钥管理器只需要分发管理这组唯一特定密钥即可达到用户与密钥配对的功能。当用户向私有云端发起数据查询请求时,资源管理器向私有云代理服务器发起响应询问,同时密钥管理器将该用户的认证码传递给密钥生成器,快速匹配到用户组密钥,再将该组密钥传递给代理服务器,配合其解密数据。由于密钥管理器只需要存储用户唯一特定的组密钥,且匹配用户密钥是立即匹配,因此本系统能够做到操作简单、管理便捷、分发高效。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (9)

1.一种大规模用户多密钥场景云加密数据库系统,其特征在于,包括用户端、私有云端和公有云端,所述用户端和私有云端双向通讯连接,所述私有云端和公有云端双向通讯连接;所述用户端用于实现用户系统注册、数据上传和数据查询功能;所述私有云端用于提供数据加解密处理和密钥分发管理服务,所述公有云端用于提供密文数据的存储管理资源;
用户在注册时,为该用户生成一个特定值作为该用户唯一特定的用户认证码;本系统内置有固定的密钥生成器,所述该密钥生成器由各密钥生成函数组成;通过向所述固定密钥生成器传入用户唯一特定认证码,为用户生成一组唯一特定密钥,该特定密钥以散列方式存储在密钥管理器中。
2.根据权利要求1所述的一种大规模用户多密钥场景云加密数据库系统,其特征在于,私有云端包括密钥管理器、代理服务器集群和资源调度器;所述代理服务器集群包括若干代理服务器,所述资源调度器为代理服务器集群调度请求线程,密钥管理器为代理服务器集群分发用户特定组密钥,代理服务器集群中若干代理服务器以并行处理方式处理请求线程。
3.一种基于权利要求2所述的大规模用户多密钥场景云加密数据库系统的数据存储方法,其特征在于,包括以下步骤:
步骤一、私有云端接收用户在用户端的注册信息;
步骤二、私有云端为注册用户生成一组唯一特定匹配的密钥,并将该组密钥存储在密钥管理器中;
步骤三、向私有云端发起数据上传请求,并经由用户端向私有云端上传数据;
步骤四、私有云端接收到数据上传请求后,资源调度器先为该请求发起请求线程,再将该请求线程挂载在请求就绪队列的末尾,并为该请求线程设置优先级;此时该请求线程进入等待状态,等待资源调度器唤醒后执行;
步骤五、资源调度器实时调度请求就绪队列中的线程,同时监控代理服务器集群中执行完成的线程,并将该执行完成的线程退出代理服务器;
步骤六、资源调度器监控到空闲的代理服务器后,即唤醒等待的请求线程,将该请求线程调度到空闲的代理服务器进行处理;
步骤七、代理服务器接收到用户上传的数据;
步骤八、密钥管理器接收到用户请求线程被调度的信息后,立即通过该用户的认证码匹配到其唯一特定组密钥,并将该特定组密钥分发给代理服务器;
步骤九、代理服务器使用该特定组密钥对接收到的数据进行加密处理;
步骤十、代理服务器由私有云端将加密后的密文数据上传到公有云端进行存储。
4.根据权利要求3所述的一种大规模用户多密钥场景云加密数据的存储方法,其特征在于,资源管理器对集群中代理服务器的调度有下述三种方式:
用户量正常-负载分配:当系统用户量在系统饱和度内时,此时,私有云端代理服务器集群能够满足用户的请求和数据处理服务;所述云加密数据库系统维护一个请求就绪全局队列,每个代理服务器只要处于空闲,资源调度器就从就绪请求队列中选择一个线程,将该空闲的代理服务器分配给此线程进行请求处理;
用户量少-组调度:当系统用户量只需部分私有云代理服务器进行处理时,私有云代理服务器将对用户请求进行集中处理,此时资源调度器对请求线程进行组调度;资源调度器将用户的一组相关的请求线程,基于一对一的原则,同时调度到一组代理服务器上,对该组请求线程进行集中处理;
用户量大-动态调度:当系统用户量超出系统饱和度时,资源调度器对请求线程进行动态调度。
5.根据权利要求4所述的一种大规模用户多密钥场景云加密数据的存储方法,其特征在于,资源调度器对用户请求的动态调度过程如下:
步骤一、资源管理器为用户请求线程维护一个动态的请求就绪队列;
步骤二、资源管理器为就绪队列中的用户请求线程设置优先级,第一个线程的优先级最高,最后一个线程的优先级最低,线程的优先级由高到低递减;
步骤三、设定请求线程执行的时间片,根据请求线程的优先级对请求线程进行调度;
步骤四、当某个线程执行时,若该线程在设定时间片内完成,资源管理器即将该线程退出系统;若该线程未能在设定时间片内完成,资源管理器即将其优先级减一,等待下一次调度。
6.根据权利要求3所述的一种大规模用户多密钥场景云加密数据的存储方法,其特征在于,用户端将数据成功上传到私有云端后,用户即可下线,无需再与私有云端进行交互,此时私有云端调度代理服务器对上传数据进行处理是批处理调度;资源调度器在对数据进行批处理调度时,对用户的请求线程进行标记;资源调度器在处理用户请求线程时,首先计算每个线程的等待时间T1和处理时间T2,再计算该线程的响应比R,最后根据线程的响应比高低对线程进行调度,响应比高的进程优先调度,计算公式:R=(T1+T2)/T2
7.一种基于权利要求2所述的大规模用户多密钥场景云加密数据库系统的数据查询方法,其特征在于,包括以下步骤:
步骤一、私有云端接收用户端发起数据查询请求;
步骤二、私有云端接收到数据查询请求后,资源调度器先为该请求发起请求线程,再将该请求线程挂载在请求就绪队列的末尾,并为该请求线程设置优先级;此时该请求线程进入等待状态,等待资源调度器唤醒后执行;
步骤三、资源调度器实时调度请求就绪队列中的线程,同时监控私有云代理服务器集群中执行完成的线程,并将该执行完成的线程退出代理服务器;
步骤四、资源调度器监控到空闲的代理服务器后,即唤醒等待的请求线程,将该请求线程调度到空闲的代理服务器进行处理;
步骤五、代理服务器对该用户请求线程进行数据库重写;
步骤六、代理服务器对该请求线程重写后,经由私有云端向公有云端请求用户查询的密文数据,此时该请求线程被挂起,进入等待状态;
步骤七、私有云端将密文数据请求发送至公有云端,并接收公有云端返回的该密文数据;
步骤八、私有云端的资源调度器监控到公有云端返回的密文数据,即将该被挂起进入等待状态的用户请求线程唤醒,并为该请求线程调度空闲的代理服务器对其进行处理;
步骤九、资源管理器调度空闲的代理服务器接收到公有云端返回的密文数据;
步骤十、密钥管理器接收到用户请求线程被调度的信息后,立即通过该用户的认证码匹配到其唯一特定组密钥,并将该组密钥分发给代理服务器;
步骤十一、代理服务器使用该组密钥对接收到的密文数据进行解密;
步骤十二、代理服务器将解密后的明文数据返回给请求查询数据的用户。
8.根据权利要求7所述的一种大规模用户多密钥场景云加密数据查询方法,其特征在于,步骤三中,资源调度器对请求线程进行以下调度:
为请求线程设置多个就绪队列,并为各个队列赋予不同的优先级;第一个队列的优先级最高,队列的优先级由高到低递减;
每个队列中线程执行时间片大小不同,优先级越高的队列分配到的时间片越少;
第一队列中的请求线程执行完后,再第二队列中的请求线程调度,各个队列按照时间片轮转方式对请求线程进行调度;
当一个请求线程发起后,先将其挂载在第一队列的末尾;轮到该线程执行时,若该线程在固定时间片内执行完成,资源度器即将该线程调度退出系统;若该线程在固定时间片内执行未能完成,资源调度器即将该线程调度到第二队列末尾。
9.根据权利要求7所述的一种大规模用户多密钥场景云加密数据查询方法,其特征在于,当私有云接收到数据查询请求时,资源调度器为该请求调度代理服务器资源,同时密钥管理器根据用户名匹配到该用户的组密钥,并将该组密钥发送给处理用户请求的代理服务器;代理服务器使用该组密钥,对公有云端返回的密文数据进行解密处理服务。
CN201910222074.2A 2019-03-22 2019-03-22 大规模用户多密钥场景云加密数据库系统及存储查询方法 Active CN109981267B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910222074.2A CN109981267B (zh) 2019-03-22 2019-03-22 大规模用户多密钥场景云加密数据库系统及存储查询方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910222074.2A CN109981267B (zh) 2019-03-22 2019-03-22 大规模用户多密钥场景云加密数据库系统及存储查询方法

Publications (2)

Publication Number Publication Date
CN109981267A CN109981267A (zh) 2019-07-05
CN109981267B true CN109981267B (zh) 2021-06-08

Family

ID=67080113

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910222074.2A Active CN109981267B (zh) 2019-03-22 2019-03-22 大规模用户多密钥场景云加密数据库系统及存储查询方法

Country Status (1)

Country Link
CN (1) CN109981267B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112446013A (zh) * 2019-08-30 2021-03-05 中移物联网有限公司 一种云盘管理方法及系统
CN110730158B (zh) * 2019-09-03 2021-07-02 郑州轻工业学院 混合云安全调度方法及混合云安全调度系统
CN111314385B (zh) * 2020-03-23 2022-06-28 郑州悉知信息科技股份有限公司 数据访问方法及装置
CN111756811B (zh) * 2020-05-29 2022-05-13 苏州浪潮智能科技有限公司 一种分布式系统的主动推送的方法、系统、设备及介质
CN111897540B (zh) * 2020-07-23 2024-04-02 平安证券股份有限公司 基于私有云的数据收集方法、装置、服务器及存储介质
CN111984995A (zh) * 2020-08-14 2020-11-24 杭州视洞科技有限公司 一种基于私有云的网络摄像机的数据加密方法
CN116192853B (zh) * 2023-04-25 2023-07-21 安元科技股份有限公司 一种多集群管理的方法

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722576A (zh) * 2012-06-05 2012-10-10 西安未来国际信息股份有限公司 一种云计算环境下数据库加密保护系统和加密保护方法
CN103051455A (zh) * 2012-12-22 2013-04-17 中国船舶重工集团公司第七0九研究所 一种云计算环境下的可信密码模块密码功能授权代理的实现方法
CN103283209A (zh) * 2011-04-18 2013-09-04 北京新媒传信科技有限公司 一种应用服务平台系统及其实现方法
CN103595730A (zh) * 2013-11-28 2014-02-19 中国科学院信息工程研究所 一种密文云存储方法和系统
CN104202421A (zh) * 2014-09-19 2014-12-10 浪潮电子信息产业股份有限公司 一种基于云计算的密码服务系统
CN106209823A (zh) * 2016-07-08 2016-12-07 西安电子科技大学 一种移动云计算环境下的轻量级文件远程加密方法
CN106529327A (zh) * 2016-10-08 2017-03-22 西安电子科技大学 混合云环境下面向加密数据库的数据存取系统及方法
US9608809B1 (en) * 2015-02-05 2017-03-28 Ionic Security Inc. Systems and methods for encryption and provision of information security using platform services
CN106559422A (zh) * 2016-11-10 2017-04-05 西安电子科技大学 基于密钥协商的多维密文区间查询方法
CN106599719A (zh) * 2016-12-12 2017-04-26 西安电子科技大学 支持高效密钥管理的密文检索方法
CN108156139A (zh) * 2017-12-13 2018-06-12 西安电子科技大学 无证书的可验证多关键字密文查询系统及方法
CN108600149A (zh) * 2018-01-22 2018-09-28 成都汇智远景科技有限公司 云计算高可用性集群资源管理方法
CN108881195A (zh) * 2018-06-07 2018-11-23 蒋云 基于云环境的数据安全共享方法和装置

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103283209A (zh) * 2011-04-18 2013-09-04 北京新媒传信科技有限公司 一种应用服务平台系统及其实现方法
CN102722576A (zh) * 2012-06-05 2012-10-10 西安未来国际信息股份有限公司 一种云计算环境下数据库加密保护系统和加密保护方法
CN103051455A (zh) * 2012-12-22 2013-04-17 中国船舶重工集团公司第七0九研究所 一种云计算环境下的可信密码模块密码功能授权代理的实现方法
CN103595730A (zh) * 2013-11-28 2014-02-19 中国科学院信息工程研究所 一种密文云存储方法和系统
CN104202421A (zh) * 2014-09-19 2014-12-10 浪潮电子信息产业股份有限公司 一种基于云计算的密码服务系统
US9608809B1 (en) * 2015-02-05 2017-03-28 Ionic Security Inc. Systems and methods for encryption and provision of information security using platform services
CN106209823A (zh) * 2016-07-08 2016-12-07 西安电子科技大学 一种移动云计算环境下的轻量级文件远程加密方法
CN106529327A (zh) * 2016-10-08 2017-03-22 西安电子科技大学 混合云环境下面向加密数据库的数据存取系统及方法
CN106559422A (zh) * 2016-11-10 2017-04-05 西安电子科技大学 基于密钥协商的多维密文区间查询方法
CN106599719A (zh) * 2016-12-12 2017-04-26 西安电子科技大学 支持高效密钥管理的密文检索方法
CN108156139A (zh) * 2017-12-13 2018-06-12 西安电子科技大学 无证书的可验证多关键字密文查询系统及方法
CN108600149A (zh) * 2018-01-22 2018-09-28 成都汇智远景科技有限公司 云计算高可用性集群资源管理方法
CN108881195A (zh) * 2018-06-07 2018-11-23 蒋云 基于云环境的数据安全共享方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"安全服务系统的模块化可组合机制研究";苏雅迪;《中国优秀硕士学位论文全文数据库信息科技辑》;20180415;第I138-209页 *
"密码服务云管理与调度技术研究";王泽武;《中国优秀硕士学位论文全文数据库信息科技辑》;20181215;第I136-197页 *

Also Published As

Publication number Publication date
CN109981267A (zh) 2019-07-05

Similar Documents

Publication Publication Date Title
CN109981267B (zh) 大规模用户多密钥场景云加密数据库系统及存储查询方法
CN107145791B (zh) 一种具有隐私保护的K-means聚类方法及系统
CN107948156B (zh) 一种基于身份的封闭式密钥管理方法及系统
EP2993864A1 (en) Public and private hybrid distributed cloud storage system and cloud storage method
CN106487506B (zh) 一种支持预加密和外包解密的多机构kp-abe方法
CN102710419B (zh) 一种用户认证的方法及装置
CN111680307A (zh) 分布式数据加密方法、装置、云存储服务器及存储介质
US10862872B1 (en) Message-based database replication
CN108776758B (zh) 一种雾存储中支持动态所有权管理的块级数据去重方法
Li et al. A distributed QoS-constraint task scheduling scheme in cloud computing environment: model and algorithm
WO2020192649A1 (zh) 一种数据中心管理系统
CN112835977B (zh) 一种基于区块链的数据库管理方法及系统
CN102722576A (zh) 一种云计算环境下数据库加密保护系统和加密保护方法
Sermakani et al. Effective data storage and dynamic data auditing scheme for providing distributed services in federated cloud
CN104519140A (zh) 一种分布式并行计算的服务器系统及其管理方法
CN109298937A (zh) 文件解析方法及网络设备
CN111414381A (zh) 数据处理方法、装置、电子设备及存储介质
CN103345598B (zh) 基于超算云服务的多商业软件License管理方法
CN105227577A (zh) 一种多客户端下的统一数据库访问代理均衡方法
CN113645195A (zh) 基于cp-abe和sm4的密文访问控制系统及方法
CN109995524A (zh) 一种基于加解密资源调度和密钥管理的加密数据库及方法
CN106302699B (zh) 一种处理多解密机pc端解密任务的方法
CN114595053A (zh) 一种面向mnss的安全动态资源管理系统
WO2021073405A1 (zh) 数据分发方法、电子设备及存储介质
CN110570197B (zh) 一种基于区块链的数据处理方法以及设备

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