CN108985099B - 一种基于公共密钥池的代理云存储安全控制方法和系统 - Google Patents

一种基于公共密钥池的代理云存储安全控制方法和系统 Download PDF

Info

Publication number
CN108985099B
CN108985099B CN201810856909.5A CN201810856909A CN108985099B CN 108985099 B CN108985099 B CN 108985099B CN 201810856909 A CN201810856909 A CN 201810856909A CN 108985099 B CN108985099 B CN 108985099B
Authority
CN
China
Prior art keywords
key
file
random number
true random
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
CN201810856909.5A
Other languages
English (en)
Other versions
CN108985099A (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.)
Ruban Quantum Technology Co Ltd
Original Assignee
Ruban Quantum 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 Ruban Quantum Technology Co Ltd filed Critical Ruban Quantum Technology Co Ltd
Priority to CN201810856909.5A priority Critical patent/CN108985099B/zh
Publication of CN108985099A publication Critical patent/CN108985099A/zh
Application granted granted Critical
Publication of CN108985099B publication Critical patent/CN108985099B/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/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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于公共密钥池的代理云存储安全控制方法和系统,用户端上传数据文件至密钥池装置,密钥池装置将利用文件密钥加密的数据文件上传至服务器,文件密钥是利用用户端量子密钥卡所产生的真随机数生成,且用户端通过密钥池装置将真随机数上传至服务器;服务器接收并存储来自用户端的数据文件和真随机数;用户端发送读请求至密钥池装置,密钥池装置下载真随机数及数据文件的密文,真随机数生成文件密钥,解密获得数据文件并传至用户端。云存储过程中,服务器无法接触到文件密钥及解密后的数据文件,解决云存储数据安全性的担忧,利用量子密钥卡产生真随机数生成真随机性文件密钥,提高密钥安全性同时保证用户端加密程序执行环境的安全。

Description

一种基于公共密钥池的代理云存储安全控制方法和系统
技术领域
本发明涉及云存储领域,尤其涉及一种基于公共密钥池的代理云存储安全控制方法和系统
背景技术
随着科技的发展,云存储已经越来越成为一种趋势,各种云存储技术层出不穷,为了保证云存储数据的安全,通常会利用各种加密方法来保证数据的安全性,例如,可以通过非对称密钥加密来保证数据的安全性,非对称密钥加密需要使用不同的密钥来分别完成加密和解密操作,一个公开发布,即公钥,另一个由用户自己秘密保存,即私钥。信息发送者用公钥去加密,而信息接收者用私钥去解密。
由于云存储中多采用共享存储,这使得服务商需要对私钥进行控制,导致私钥的安全性较低。公开号为CN103236934A,发明名称为“一种云存储安全控制的方法”的发明专利文献,公开了一种用于解决私钥安全性较低的问题的方法。该发明使用两种不同的加密方式对用户的私钥进行加密并分别存储。
当前企业或事业单位有时有数据上云的需求,而公有云一般不容易受这些单位信任,被认为信息安全可能有问题,或者密钥容易被黑客所获得并破解,因此造成了公有云客户对数据上云有后顾之忧。
现有技术存在的问题:
(1)在云服务端上进行密钥存储有一定的危险性。公有云客户对数据上云有后顾之忧。
(2)文件密钥如果是伪随机密钥,则无法实现密钥的真随机性,可能被预测,安全性不足。
(3)用户端加密程序执行环境不够安全,如有病毒木马则内存中的密钥可能被监控。
发明内容
基于此,有必要针对上述问题,提供一种基于公共密钥池的代理云存储安全控制方法和系统。
一种基于公共密钥池的代理云存储安全控制方法,包括用户端上传数据文件至密钥池装置,所述密钥池装置将利用文件密钥加密的数据文件上传至服务器,所述用户端配置有量子密钥卡,所述文件密钥是利用量子密钥卡所产生的真随机数生成,且用户端通过密钥池装置将所述真随机数上传至服务器。
当前有很多存储云服务,其中包括很多公有云。本发明中,存储云的服务器简称为服务器。
本发明中所述用户端为接入存储云的设备,可为移动终端,或为固定终端。终端均配备有量子密钥卡UKey,UKey中还带有真随机数发生器,真随机数发生器产生真随机数与密钥池装置结合生成文件密钥。利用量子密钥卡内的真随机数生成文件密钥,保证文件密钥的真随机性,大大提高文件密钥的安全性,同时量子密钥卡为独立的硬件隔离设备,被恶意软件或恶意操作窃取密钥的可能性大大降低,真随机数上传至服务器,而非文件密钥存储,解决了密钥存储在服务器上被窃取的危险性。
可选地,所述用户端有一个或多个,所述密钥池装置内存储有供各用户端访问的公共密钥池,所述用户端与所述密钥池装置通信连接,上传数据文件的用户端利用所述公共密钥池提取存储密钥并相应生成文件密钥以加密数据文件,下载数据文件的用户端利用所述公共密钥池结合来自服务器的真随机数相应生成文件密钥以解密出数据文件。
本发明中,属于一个云客户端群组的各个云客户端所匹配的UKey颁发方为UKey的主管方,一般为某企业或事业单位的管理部门;UKey被颁发方为UKey的主管方所管理的成员,一般为某企业或事业单位的各级员工,其使用存储云客户端进行云端数据存取,下文统称成员所使用的存储云客户端为用户端。用户端首先到UKey的主管方申请开户。当用户端进行注册登记获批后,将得到UKey(具有唯一的ID)。UKey存储了客户的公钥和私钥,客户的注册登记信息,还内置有身份认证协议,至少包括密钥生成算法以及认证函数,或其他与身份认证相关的算法。
各用户端拥有存储在所述密钥池装置内的公共密钥池,可实现多个用户端文件共享,同时密钥池的设定,使得下载数据文件的用户端需利用来自服务器的真随机数结合所述公共密钥池相应生成文件密钥,在没有得到密钥池的情况下,即使得到真随机数也无法得到加密文件的文件密钥,进一步提高文件密钥的安全性。
可选地,所述文件密钥生成方法包括:将真随机数结合指定的密钥选择算法得到指针,利用该指针从所述密钥池装置中提取对应的加密密钥,并利用所述密钥池装置生成的真随机数解密得到存储密钥,该存储密钥结合密钥生成算法得到所述文件密钥。
文件密钥根据存储密钥计算所得,组织内不同部门所用计算方法不同,无法获得并解密其他部门的云存储信息,实现了部门间的信息隔离。
可选地,所述用户端将真随机数和数据文件加密后上传至所述密钥池装置,加密方式为使用真随机数加密所述数据文件得到密文,以及使用公钥加密真随机数得到真随机数密文;所述密钥池装置使用私钥解密所述真随机数密文得到真随机数,以及使用所述真随机数解密所述密文得到所述数据文件。
可选地,所述密钥池装置将真随机数加密后再上传至所述服务器,加密方式为使用公钥加密随机数得到个人密钥,以及使用文件特征值加密随机数得到数据密钥;所述密钥池装置将所述个人密钥、所述数据密钥以及所述密钥选择算法的ID以及所述密钥生成算法的ID发送至所述服务器。
本发明采用非对称加密算法得到个人密钥,后续访问中,用户端只需要使用己有私钥对个人密钥进行解密,即可得到真随机数,并进一步得到文件密钥。
可选地,所述密钥生成算法包括:
初级密钥生成算法,用于结合所述存储密钥生成初级文件密钥;
自选密钥生成算法,用于结合所述初级文件密钥生成所述文件密钥;
且自选密钥生成算法ID作为所述服务器是否进行去重判断的标识。
其中,自选密钥生成算法为私有函数,自选密钥生成算法ID为ff0时,服务器需进行去重判断。去重判断,鉴别重复文件有效减轻存储压力。
一种基于公共密钥池的代理云存储安全控制方法,包括服务器接收并存储来自密钥池装置利用文件密钥加密的数据文件,所服务器还接收并存储来自用户端的真随机数,该真随机数用于供用户端下载并生成供解密的文件密钥。
可选地,所述真随机数为密文形式,包括所述密钥池装置使用公钥加密随机数得到的个人密钥,以及所述密钥池装置使用文件特征值加密随机数得到的数据密钥。
在本发明中,所述用户端发起读取文件请求经密钥池装置传递至所述服务器,所述服务器将利用文件密钥加密的数据文件和个人密钥发送至密钥池装置,密钥池装置解密个人密钥得到真随机数,并进一步得到文件密钥。
可选地,所述服务器还接收并存储来自所述密钥池装置的与生成所述文件密钥相关的算法ID,其中一算法ID作为服务器是否进行去重判断的指示标识;
当服务器依据所述指示标识进行去重判断时,所述服务器在接收所述密钥池装置的所述数据文件前进行去重判断;
当服务器依据所述指示标识不进行去重判断时,接受存储来自所述密钥池装置的与生成所述文件密钥相关的算法ID。
一种基于公共密钥池的代理云存储系统,包括用户端、密钥池装置及服务器,用户端上传数据文件至密钥池装置,所述密钥池装置将利用文件密钥加密的数据文件上传至服务器,所述用户端配置有量子密钥卡,所述文件密钥是利用量子密钥卡所产生的真随机数生成,且用户端通过密钥池装置将所述真随机数上传至服务器;
服务器接收并存储来自用户端的数据文件和真随机数;
用户端发送读请求至密钥池装置,密钥池装置下载真随机数以及利用文件密钥加密的数据文件,并利用所述真随机数生成文件密钥,解密获得数据文件,密钥池装置将数据文件传至用户端,完成服务器文件读取。
上述基于公共密钥池的代理云存储安全控制方法和系统,用户端上传数据文件至密钥池装置,所述密钥池装置将利用文件密钥加密的数据文件上传至服务器,所述用户端配置有量子密钥卡,文件密钥是利用量子密钥卡所产生的真随机数生成,且用户端通过密钥池装置将所述真随机数上传至服务器;服务器接收并存储来自用户端的数据文件和真随机数;用户端发送读请求至密钥池装置,密钥池装置下载真随机数以及利用文件密钥加密的数据文件,并利用所述真随机数生成文件密钥,解密获得数据文件,密钥池装置将数据文件传至用户端,完成服务器文件读取。云存储过程中,服务器端无法接触到文件密钥以及解密后的数据文件,解决用户端对云存储数据安全性的担忧,利用量子密钥卡所产生的真随机数生成真随机性的文件密钥,提高密钥安全性的同时保证用户端加密程序执行环境的安全。
附图说明
图1为本发明实施例提供的存储系统的结构示意图;
图2为公共密钥池装置的结构示意图;
图3为随机数产生器产生的随机数的加密方式示意图;
图4为本发明实施例提供的文件密钥生成流程图;
图5为本发明实施例提供的存储方法的时序图;
图6为本发明实施例提供的读取方法的时序图;
图7为本发明实施例1提供的存储方法的流程图;
图8为本发明实施例2提供的存储方法的流程图;
图9为本发明实施例3提供的读取方法的流程图。
具体实施方式
以下步骤中,在各用户端涉及的多处操作,都在匹配的UKey中进行。
图1为本发明实施例提供的存储系统的结构示意图,密钥池装置与云客户端群组CC以及云存储CS分别网络连接。其中云客户端群组CC由多个云客户端组成。在本实施例中,存储云的服务器即云存储CS简称为服务器,云客户端简称为用户端。基于公共密钥池的代理云存储系统包括用户端、密钥池装置及服务器,每个用户端都存有自己的私钥和公钥。图1中KA/KAP即指A的私钥/公钥。用户端有量子密钥卡UKey,用来存储自己的私钥以及进行密码学计算,此外根据设计需要,UKey里面有真随机数发生器。
密钥池装置P的结构示意图如图2所示,密钥池装置P包括:
根密钥区,用于取出根密钥KR;
随机数产生器,用于产生真随机数作为密钥的密钥,该密钥的密钥称为KKP,在本实施例中,随机数发生器优选为量子随机数发生器;
云客户端群组CC所拥有的公共密钥池KP。
其中,公共密钥池KP容量巨大,例如可以从1G~4096G不等,均为真随机数,优选为量子随机数。密钥池装置P可存储多个KP,图中P存储有1~M共M个KP区域。KP用密钥池装置中的随机数产生器产生的KKP加密,KKP的加密方式如图3所示,用KR以及各个云客户端A、B、……N的公钥KAP、KBP、……KNP分别加密。
文件密钥生成方法,如图4所示,将真随机数结合指定的密钥选择算法fp得到指针kp,利用该指针kp从所述密钥池装置中提取对应的加密密钥,并利用所述密钥池装置生成的真随机数KKP解密得到存储密钥ks,该存储密钥ks结合密钥生成算法得到所述文件密钥kf。
具体地,所述用户端将真随机数和数据文件均加密后上传至所述密钥池装置,加密方式为使用真随机数加密所述数据文件得到密文,以及使用公钥加密真随机数得到真随机数密文;所述密钥池装置使用私钥解密所述真随机数密文得到真随机数,以及使用所述真随机数解密所述密文得到所述数据文件。所述密钥池装置根据所述文件密钥生成方法,利用所解密的真随机数进一步得到文件密钥kf。
其中密钥生成算法包括:
初级密钥生成算法fg,用于结合所述存储密钥ks生成初级文件密钥kg;
自选密钥生成算法ff,用于结合所述初级文件密钥kg生成所述文件密钥kf;
在本实施例中,属于一个云客户端群组的各个云客户端所匹配的UKey颁发方为UKey的主管方;UKey被颁发方为UKey的主管方所管理的成员,密钥选择算法fp和初级密钥生成算法fg为公共密钥池主管方定制,通常与云客户端群组客户端的主管方一致。主管方下属的不同部门或组织,其fp和fg至少有一者不同,以确保不同组织之间的云存储信息隔离。
指定的密钥选择算法fp为对随机数进行某种数值变换后取模,例如fp(r)=(r+d)%s,
其中r为输入变量(此处为随机数),d为偏移量,%为取模运算,s为密钥池总大小。当然根据设计需要,特定的密钥选择算法fp不限于此,只要能够实现密钥选择即可。
初级密钥生成算法fg为对输入数据进行某种数值变换后取模,例如fg(x)=(ax+b)%2len
其中x为输入变量,a、b为变换参数,%为取模运算,len为用户指定的密钥长度(单位:bit),当然根据设计需要,初级密钥生成算法fg的算法不限于此,只要能够实现存储密钥ks与初级密钥生成算法fg相结合生成初级文件密钥kg即可。
自选密钥生成算法ff为私有函数,所述自选密钥生成算法ff与初级密钥生成算法fg类似,且以初级密钥生成算法fg的输出作为输入,若不需要仅属于个人的隐私保密功能,可以设置ff(x)=x。
密钥选择算法fp、初级密钥生成算法fg、自选密钥生成算法ff三类函数均带有各自的ID,所有ID均互不相同;特别地,自选密钥生成算法ID作为所述服务器是否进行去重判断的标识,当设置函数ff(x)=x的ID为ff0为服务器需去重的判断标志,且为所有成员所知。
所述密钥池装置将真随机数加密后再上传至所述服务器,加密方式为使用公钥加密随机数得到个人密钥,以及使用文件特征值加密随机数得到数据密钥;所述密钥池装置将所述个人密钥、所述数据密钥以及所述密钥选择算法的ID以及所述密钥生成算法的ID发送至所述服务器。
当然根据设计需要,所述用户端可以通过密钥池装置直接将真随机数上传至服务器,在没有得到密钥池的情况下,即使窃取真随机数也无法得到加密文件的文件秘钥,以下实施例中,均以随机数以加密的两种形式上传至服务器为例说明。
以下结合附图及实施例,对本发明进行进一步详细说明。
实施例1
图5为本发明实施例提供的存储方法的时序图。图7为本实施例提供的一种存储方法的流程图,一种基于公共密钥池的代理云存储安全控制方法的具体步骤如下:
步骤1.1用户端加密文件并发送至密钥池装置:用户端使用随机数发生器生成的真随机数R加密数据文件得到密文M1,并使用密钥池装置P的公钥加密真随机数R,将这两部分发送给密钥池装置P。
步骤1.2密钥池装置解密文件:密钥池装置P使用自己的私钥解密得到真随机数R,使用R解密密文M1得到明文形式的数据文件。
步骤1.3密钥池装置将数据文件的Hash值和各个算法ID上传至云服务端:密钥池装置上传数据文件之前,先计算出数据文件的Hash值,并将该Hash值上传至云服务端。同时上传的还有各个算法的ID(包括密钥选择算法fp、初级密钥生成算法fg以及自选密钥生成算法ff,下文同理)。其中,自选密钥生成算法ff可以选择用户端特有的,也可以选择ff0。本实施例假设选择ff0,即选择ff(x)=x,也就意味着不使用仅属于个人的隐私保密功能。云服务端为了减轻存储压力,将对选择ff0的文件进行密文去重,即鉴别重复文件。
步骤1.4云服务端鉴别重复文件:云服务端根据ff0的信息,对文件的Hash值以及各个算法ID进行综合考虑来鉴别重复文件,即如果两份文件具有相同的Hash值且fp、fg、ff的ID分别相同则认为有相同的数据文件需要去重。若云服务端判断不需要去重,云服务端保存收到的这个Hash值以及各个算法ID,并执行步骤1.5。若需要去重,云服务端执行步骤1.6。步骤1.6与步骤1.5的不同之处在于如果云服务端存在与当前用户端想要上传的文件一致的文件,用户可利用自己的数据文件的文件特征值解密云服务端提供的数据密钥得到真随机数r,使用密钥池装置的公钥加密r可得到该用户的个人密钥并将该个人密钥上传至云服务端保存。后续访问时,用户只需通过使用密钥池装置的私钥对个人密钥进行解密就能得到真随机数r并进一步得到文件密钥,利用该文件密钥得到该数据明文。文件读取的具体流程见实施例3。这样,既实现了防止数据文件在云端的重复存储,也能保证云储存服务商自己(内部员工)不能获取数据内容的明文。
本领域技术人员可以理解,在某些情况下,同一用户可能会先后上传同一数据文件,那么在该用户期待再次以相同fp、fg、ff上传已上传数据文件时,云服务端如果判断该数据文件来源于同一用户,将不执行任何操作。
步骤1.5若云服务端不需要去重:
步骤1.5.1云服务端通知用户端生成随机数:云服务端保存收到的Hash值和算法ID后,将云服务端不存在具有相同数据文件的信息发送给密钥池装置P。
步骤1.5.2密钥池装置处理信息并将需要存储在云服务端上的内容发送给云服务端:密钥池装置收到云服务端不存在具有相同的数据文件的信息后,密钥池装置根据所匹配的真随机数发生器生成真随机数r并进一步得到文件密钥kf,具体步骤如图4所示,文字描述如下:
使用真随机数r结合特定的密钥选择算法fp得到指针kp并从密钥池中提取出相应的加密密钥,使用KKP对密钥进行解密得到存储密钥ks;然后根据ks,结合初级密钥生成算法fg生成初级文件密钥kg;然后根据kg,结合自选密钥生成算法ff生成文件密钥kf。本实施例中ff(x)=x。
得到文件密钥kf后,密钥池装置使用文件密钥加密数据文件得到密文M2,加密算法可为对称加密算法;
密钥池装置使用自己的公钥加密真随机数r得到个人密钥;
密钥池装置生成文件特征值,并使用文件特征值加密真随机数r得到数据密钥;文件特征值的计算方法为预定义的算法,可以是但不限于Hash计算、文件压缩或其他文件特征计算算法;
密钥池装置将密文M2、算法ID、个人密钥以及数据密钥发送至云服务端。
步骤1.5.3云服务端保存相应信息:云服务端将收到的密文、算法ID、个人密钥以及数据密钥进行保存。
步骤1.6.若云服务端需要去重:
步骤1.6.1云服务端向密钥池装置发送数据密钥:云服务端将该文件的数据密钥发送给密钥池装置。
步骤1.6.2密钥池装置处理信息并将需要存储在云服务端上的内容发送给云服务端:密钥池装置收到数据密钥后,根据数据文件生成的文件特征值解密数据密钥得到真随机数r。
密钥池装置使用自己的公钥加密真随机数r得到个人密钥并发送给云服务端。
步骤1.6.3云服务端保存相应信息:云服务端收到该个人密钥后进行保存。
实施例2
图8为本实施例提供的一种存储方法的流程图。本实施例的存储方法的时序图与实施例1一致,一种基于公共密钥池的代理云存储安全控制方法的具体步骤如下:
步骤2.1用户端加密文件并发送至密钥池装置:用户端使用随机数发生器生成的真随机数R加密数据文件得到密文M1,并使用密钥池装置P的公钥加密真随机数R,将这两部分发送给密钥池装置P。
步骤2.2密钥池装置解密文件:密钥池装置P使用自己的私钥解密得到真随机数R,使用R解密密文M1得到明文形式的数据文件。
步骤2.3密钥池装置将数据文件的Hash值和各个算法ID上传至云服务端:密钥池装置上传数据文件之前,先计算出数据文件的Hash值,并将该Hash值上传至云服务端。同时上传的还有各个算法的ID。其中,自选密钥生成算法ff选择用户端特有的,而不选择ff0,即选择ff(x)≠x,也就意味着使用仅属于个人的隐私保密功能,该文件为该用户独有,不参与密文去重。
步骤2.4云服务端保存该Hash值以及各个算法ID:云服务端根据ff的信息,将收到的Hash值保存在与参与鉴别重复文件的文件Hash值不同的地方。一并保存的还有各个算法ID。
步骤2.5密钥池装置生成随机数并将需要存储在服务器上的内容发送给服务器:密钥池装置根据所匹配的真随机数发生器生成真随机数r并进一步得到文件密钥kf,具体步骤如图4所示。
得到文件密钥kf后,密钥池装置使用文件密钥加密数据文件得到密文,加密算法可为对称加密算法;
密钥池装置使用自己的公钥加密真随机数r得到个人密钥;
密钥池装置将密文和个人密钥发送至服务器。
步骤2.6服务器保存相应信息:服务器将收到的密文和个人密钥进行保存。
实施例3
图6为本发明实施例提供的存储方法的时序图。图9为本发明实施例提供的一种文件读取方法的流程图,基于公共密钥池的代理云存储安全控制方法,基于上述实施例,用户端读取文件的具体步骤如下:
步骤3.1用户端发起读取文件请求:用户端将想要读取的文件的HASH值作为一个请求,使用随机数发生器生成的真随机数R加密这个请求,并使用密钥池装置P的公钥加密真随机数R,将这两部分发送给密钥池装置P。
步骤3.2密钥池装置解密文件:密钥池装置P使用自己的私钥解密得到真随机数R,使用R解密请求得到文件的HASH值。
步骤3.3密钥池装置将请求发送至服务端:密钥池装置把作为读取文件请求的文件Hash值和各个算法ID上传至云服务器。
步骤3.4服务器返回相应信息:服务器收到文件Hash值和算法ID后,找到与该Hash值和算法ID对应的信息,将密文和个人密钥发送至密钥池装置。
步骤3.5密钥池装置得到文件密钥:密钥池装置使用自己的私钥解密个人密钥得到真随机数r,并进一步得到文件密钥kf,具体步骤如图4所示。密钥池装置使用文件密钥解密密文后得到明文形式的数据文件,使用随机数发生器生成一个新的真随机数R’对数据文件进行加密得到密文M’,使用用户端的公钥加密真随机数R’,连同密文M’一起发送至用户端。
步骤3.6用户端得到数据文件:用户端使用自己的私钥解密得到R’,使用R’解密密文M’得到数据文件,完成对服务器文件的读取。
本发明基于公共密钥池的代理云存储系统中,服务器端都无法接触到用户端私钥以及解密后的明文数据文件。不仅如此,服务器上存储的个人密钥与数据密钥为使用不同方法加密的真随机数r,该真随机数结合特定的密钥选择算法可得到一个指针。即使破解了个人密钥或数据密钥也无法得到加密文件的文件密钥。文件密钥根据存储密钥计算所得,组织内不同部门所用计算方法不同,无法获得并解密其他部门的云存储信息,实现了部门间的信息隔离。特别地,还可以设置自选密钥生成算法,实现云存储信息的完全私有。本发明使用的存储密钥为量子密钥,是根据量子特性所产生的真随机数,量子密钥的下一个比特是无法预知的,有效的克服了伪随机数的弊端。本发明使用UKey存储用户端密钥而不是用户端存储器,UKey是独立的硬件设备,被恶意软件或恶意操作窃取密钥的可能性大大降低。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (9)

1.一种基于公共密钥池的代理云存储安全控制方法,包括用户端上传数据文件至密钥池装置,所述密钥池装置将利用文件密钥加密的数据文件上传至服务器,其特征在于,所述用户端配置有量子密钥卡,所述文件密钥是利用量子密钥卡所产生的真随机数生成,且用户端通过密钥池装置将所述真随机数上传至服务器;
所述用户端有一个或多个,所述密钥池装置内存储有供各用户端访问的公共密钥池,所述用户端与所述密钥池装置通信连接,上传数据文件的用户端利用所述公共密钥池提取存储密钥并相应生成文件密钥以加密数据文件,下载数据文件的用户端利用所述公共密钥池结合来自服务器的真随机数相应生成文件密钥以解密出数据文件。
2.根据权利要求1所述的基于公共密钥池的代理云存储安全控制方法,其特征在于,所述文件密钥生成方法包括:将真随机数结合指定的密钥选择算法得到指针,利用该指针从所述密钥池装置中提取对应的加密密钥,并利用所述密钥池装置生成的真随机数解密得到存储密钥,该存储密钥结合密钥生成算法得到所述文件密钥。
3.根据权利要求2所述的基于公共密钥池的代理云存储安全控制方法,其特征在于,所述用户端将真随机数和数据文件加密后上传至所述密钥池装置,加密方式为使用真随机数加密所述数据文件得到密文,以及使用公钥加密真随机数得到真随机数密文;所述密钥池装置使用私钥解密所述真随机数密文得到真随机数,以及使用所述真随机数解密所述密文得到所述数据文件。
4.根据权利要求3所述的基于公共密钥池的代理云存储安全控制方法,其特征在于,所述密钥池装置将真随机数加密后再上传至所述服务器,加密方式为使用公钥加密随机数得到个人密钥,以及使用文件特征值加密随机数得到数据密钥;所述密钥池装置将所述个人密钥、所述数据密钥以及所述密钥选择算法的ID以及所述密钥生成算法的ID发送至所述服务器。
5.根据权利要求4所述的基于公共密钥池的代理云存储安全控制方法,其特征在于,所述密钥生成算法包括:
初级密钥生成算法,用于结合所述存储密钥生成初级文件密钥;
自选密钥生成算法,用于结合所述初级文件密钥生成所述文件密钥;
且自选密钥生成算法ID作为所述服务器是否进行去重判断的标识。
6.一种基于公共密钥池的代理云存储安全控制方法,包括服务器接收并存储来自密钥池装置利用文件密钥加密的数据文件,其特征在于,所述服务器还接收并存储来自用户端的量子密钥卡所产生的真随机数,该真随机数用于供用户端下载并生成供解密的文件密钥;
所述用户端有一个或多个,所述密钥池装置内存储有供各用户端访问的公共密钥池,所述用户端与所述密钥池装置通信连接,上传数据文件的用户端利用所述公共密钥池提取存储密钥并相应生成文件密钥以加密数据文件,下载数据文件的用户端利用所述公共密钥池结合来自服务器的真随机数相应生成文件密钥以解密出数据文件。
7.根据权利要求6所述的基于公共密钥池的代理云存储安全控制方法,其特征在于,所述真随机数为密文形式,包括所述密钥池装置使用公钥加密随机数得到的个人密钥,以及所述密钥池装置使用文件特征值加密随机数得到的数据密钥。
8.根据权利要求7所述的基于公共密钥池的代理云存储安全控制方法,其特征在于,所述服务器还接收并存储来自所述密钥池装置的与生成所述文件密钥相关的算法ID,其中一算法ID作为服务器是否进行去重判断的指示标识;
当服务器依据所述指示标识进行去重判断时,所述服务器在接收所述密钥池装置的所述数据文件前进行去重判断;
当服务器依据所述指示标识不进行去重判断时,接受存储来自所述密钥池装置的与生成所述文件密钥相关的算法ID。
9.一种基于公共密钥池的代理云存储系统,包括用户端、密钥池装置及服务器,其特征在于,
用户端上传数据文件至密钥池装置,所述密钥池装置将利用文件密钥加密的数据文件上传至服务器,所述用户端配置有量子密钥卡,所述文件密钥是利用量子密钥卡所产生的真随机数生成,且用户端通过密钥池装置将所述真随机数上传至服务器;
所述用户端有一个或多个,所述密钥池装置内存储有供各用户端访问的公共密钥池,所述用户端与所述密钥池装置通信连接,上传数据文件的用户端利用所述公共密钥池提取存储密钥并相应生成文件密钥以加密数据文件,下载数据文件的用户端利用所述公共密钥池结合来自服务器的真随机数相应生成文件密钥以解密出数据文件;
服务器接收并存储来自用户端的数据文件和真随机数;
用户端发送读请求至密钥池装置,密钥池装置下载真随机数以及利用文件密钥加密的数据文件,并利用所述真随机数生成文件密钥,解密获得数据文件,密钥池装置将数据文件传至用户端,完成服务器文件读取。
CN201810856909.5A 2018-07-31 2018-07-31 一种基于公共密钥池的代理云存储安全控制方法和系统 Active CN108985099B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810856909.5A CN108985099B (zh) 2018-07-31 2018-07-31 一种基于公共密钥池的代理云存储安全控制方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810856909.5A CN108985099B (zh) 2018-07-31 2018-07-31 一种基于公共密钥池的代理云存储安全控制方法和系统

Publications (2)

Publication Number Publication Date
CN108985099A CN108985099A (zh) 2018-12-11
CN108985099B true CN108985099B (zh) 2020-08-11

Family

ID=64552065

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810856909.5A Active CN108985099B (zh) 2018-07-31 2018-07-31 一种基于公共密钥池的代理云存储安全控制方法和系统

Country Status (1)

Country Link
CN (1) CN108985099B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109784917B (zh) * 2018-12-13 2020-11-17 如般量子科技有限公司 基于对称密钥池的抗量子计算区块链保密交易系统和方法
CN109787965B (zh) * 2018-12-29 2021-02-02 如般量子科技有限公司 基于多个非对称密钥池的抗量子计算云存储方法和系统
CN109687960B (zh) * 2018-12-29 2021-08-10 如般量子科技有限公司 基于多个公共非对称密钥池的抗量子计算代理云存储方法和系统
CN109787747B (zh) * 2018-12-29 2022-06-14 如般量子科技有限公司 基于多个非对称密钥池的抗量子计算多重加密云存储方法和系统
CN109587170B (zh) * 2018-12-29 2020-11-17 如般量子科技有限公司 基于多个公共非对称密钥池的抗量子计算云存储方法和系统
CN109919609A (zh) * 2019-01-14 2019-06-21 如般量子科技有限公司 基于公钥池的抗量子计算区块链保密交易方法和系统
CN109919610A (zh) * 2019-01-14 2019-06-21 如般量子科技有限公司 基于p2p公钥池的抗量子计算区块链保密交易方法和系统
CN109687978B (zh) * 2019-01-15 2021-12-07 如般量子科技有限公司 基于私钥池和Elgamal的抗量子计算代理数字签名方法和系统
CN109905229B (zh) * 2019-01-17 2023-05-05 如般量子科技有限公司 基于群组非对称密钥池的抗量子计算Elgamal加解密方法和系统
CN109672537B (zh) * 2019-01-18 2021-08-10 如般量子科技有限公司 基于公钥池的抗量子证书获取系统及获取方法
CN112242899B (zh) * 2019-07-17 2022-09-09 科大国盾量子技术股份有限公司 使用量子密钥对存储文件进行加解密的nas存储系统及方法
CN112436936B (zh) * 2020-11-11 2022-11-01 安徽量安通信息科技有限公司 一种具备量子加密功能的云存储方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546181A (zh) * 2012-01-09 2012-07-04 西安电子科技大学 基于密钥池的云存储加解密方法
CN105024807A (zh) * 2014-04-30 2015-11-04 宇龙计算机通信科技(深圳)有限公司 数据处理方法及系统
CN105320896A (zh) * 2015-10-21 2016-02-10 成都卫士通信息产业股份有限公司 一种云存储加密以及其密文检索方法与系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9135462B2 (en) * 2012-08-29 2015-09-15 Box, Inc. Upload and download streaming encryption to/from a cloud-based platform
CN107959569B (zh) * 2017-11-27 2020-11-17 浙江神州量子网络科技有限公司 一种基于对称密钥池的密钥补充方法和密钥补充装置、密钥补充系统
CN108134671A (zh) * 2018-02-07 2018-06-08 浙江神州量子通信技术有限公司 一种基于量子真随机数的透明加密系统及其加解密方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546181A (zh) * 2012-01-09 2012-07-04 西安电子科技大学 基于密钥池的云存储加解密方法
CN105024807A (zh) * 2014-04-30 2015-11-04 宇龙计算机通信科技(深圳)有限公司 数据处理方法及系统
CN105320896A (zh) * 2015-10-21 2016-02-10 成都卫士通信息产业股份有限公司 一种云存储加密以及其密文检索方法与系统

Also Published As

Publication number Publication date
CN108985099A (zh) 2018-12-11

Similar Documents

Publication Publication Date Title
CN108985099B (zh) 一种基于公共密钥池的代理云存储安全控制方法和系统
CN108989033B (zh) 一种基于公共密钥池的云存储安全控制方法和系统
CN109104276B (zh) 一种基于密钥池的云存储安全控制方法和系统
CN109151053B (zh) 基于公共非对称密钥池的抗量子计算云存储方法和系统
CN109150519B (zh) 基于公共密钥池的抗量子计算云存储安全控制方法和系统
TWI748853B (zh) 用於基於區塊鏈的系統結合錢包管理系統中的安全多方防遺失儲存及加密金鑰轉移
US20180013555A1 (en) Data transmission method and apparatus
CN109981255B (zh) 密钥池的更新方法和系统
US20110145576A1 (en) Secure method of data transmission and encryption and decryption system allowing such transmission
CN110519046B (zh) 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和系统
EP2984781A1 (en) Secure backup and recovery system for private sensitive data
JP2009103774A (ja) 秘密分散システム
CN109543443A (zh) 基于区块链的用户数据管理方法、装置、设备和存储介质
CN109347923B (zh) 基于非对称密钥池的抗量子计算云存储方法和系统
CN109299618B (zh) 基于量子密钥卡的抗量子计算云存储方法和系统
CN109787747B (zh) 基于多个非对称密钥池的抗量子计算多重加密云存储方法和系统
CN115001681A (zh) 密钥恢复方法、装置、系统、存储介质及电子装置
CN109412788B (zh) 基于公共密钥池的抗量子计算代理云存储安全控制方法和系统
CN109302283B (zh) 基于公共非对称密钥池的抗量子计算代理云存储方法和系统
CN109687960B (zh) 基于多个公共非对称密钥池的抗量子计算代理云存储方法和系统
CN115412236A (zh) 一种密钥管理和密码计算的方法、加密方法及装置
JP5605452B2 (ja) 通信装置
CN110086627B (zh) 基于非对称密钥池对和时间戳的量子通信服务站密钥协商方法和系统
Emdad et al. A standard data security model using AES algorithm in cloud computing
CN109587170B (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