空气态隐形加密保护方法和装置与流程

文档序号:11778147阅读:195来源:国知局
空气态隐形加密保护方法和装置与流程

本公开一般涉及计算机技术领域,具体涉及信息安全领域,尤其涉及一种空气态隐形加密保护方法和装置。



背景技术:

目前,关于数据的本地或云端的存储方式主要是直接存储方式,即将数据直接存储在本地服务器或云端服务器。这样,其它用户可能通过攻击本地服务器或云端服务器的方式轻易读取到用户在本地或云端存储的数据,因此数据存储安全性差。如果要求用户自己将数据加密再发到本地服务器或云端服务器,虽然提高了数据安全性,但增加了用户操作,用户操作很繁琐。

因此,需要一种减轻用户操作、却又能提高数据存储安全性的方案。



技术实现要素:

鉴于现有技术中的上述缺陷或不足,期望提供一种减轻用户操作、却又能提高数据存储安全性的技术。

第一方面,本申请实施例提供了一种空气态隐形加密保护方法,所述方法包括:接收待存储的数据;识别数据存储请求端标识;为待存储的数据分配加密分组方案、每个分组的加密密钥、以及与加密分组方案对应的加密流水号;将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表;根据分配的加密分组方案、每个分组的加密密钥,加密待存储的数据成加密数据;存储加密数据;接收带有加密流水号的数据访问请求;根据数据访问请求中的加密流水号,从对应关系表查找相对应的数据存储请求端标识;判断查找到的数据存储请求端标识与数据访问请求的请求端标识是否一致;如果一致,从对应关系表中查找与数据访问请求中的加密流水号相对应的加密分组方案、每个分组的加密密钥;按照查找到的加密分组方案、每个分组的加密密钥将加密数据解密成所述待存储的数据;发送解密出的所述待存储的数据回数据访问请求的请求端。

第二方面,本申请实施例提供了一种空气态隐形加密保护装置,所述装置包括:待存储的数据接收单元,用于接收待存储的数据;数据存储请求端标识识别单元,用于识别数据存储请求端标识;分配单元,用于为待存储的数据分配加密分组方案、每个分组的加密密钥、以及与加密分组方案对应的加密流水号;对应关系存储单元,用于将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储成对应关系表;加密单元,用于根据分配的加密分组方案、每个分组的加密密钥,加密待存储的数据成加密数据;加密数据存储单元,用于存储加密数据;数据访问请求接收单元,用于接收带有加密流水号的数据访问请求;数据存储请求端标识查找单元,用于根据数据访问请求中的加密流水号,从对应关系表查找相对应的数据存储请求端标识;判断单元,用于判断查找到的数据存储请求端标识与数据访问请求的请求端标识是否一致;加密分组方案及加密密钥查找单元,用于如果一致,从对应关系表中查找与数据访问请求中的加密流水号相对应的加密分组方案、每个分组的加密密钥;解密单元,用于按照查找到的加密分组方案、每个分组的加密密钥将加密数据解密成所述待存储的数据;发送单元,用于发送解密出的所述待存储的数据回数据访问请求的请求端。

第三方面,本申请实施例提供了一种设备,包括处理器、存储器和显示器;所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:接收待存储的数据;识别数据存储请求端标识;为待存储的数据分配加密分组方案、每个分组的加密密钥、以及与加密分组方案对应的加密流水号;将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表;根据分配的加密分组方案、每个分组的加密密钥,加密待存储的数据成加密数据;存储加密数据;接收带有加密流水号的数据访问请求;根据数据访问请求中的加密流水号,从对应关系表查找相对应的数据存储请求端标识;判断查找到的数据存储请求端标识与数据访问请求的请求端标识是否一致;如果一致,从对应关系表中查找与数据访问请求中的加密流水号相对应的加密分组方案、每个分组的加密密钥;按照查找到的加密分组方案、每个分组的加密密钥将加密数据解密成所述待存储的数据;发送解密出的所述待存储的数据回数据访问请求的请求端。

第四方面,本申请实施例提供了一种机器可读介质,包含计算机程序,所述计算机程序包括用于执行以下的程序代码:接收待存储的数据;识别数据存储请求端标识;为待存储的数据分配加密分组方案、每个分组的加密密钥、以及与加密分组方案对应的加密流水号;将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表;根据分配的加密分组方案、每个分组的加密密钥,加密待存储的数据成加密数据;存储加密数据;接收带有加密流水号的数据访问请求;根据数据访问请求中的加密流水号,从对应关系表查找相对应的数据存储请求端标识;判断查找到的数据存储请求端标识与数据访问请求的请求端标识是否一致;如果一致,从对应关系表中查找与数据访问请求中的加密流水号相对应的加密分组方案、每个分组的加密密钥;按照查找到的加密分组方案、每个分组的加密密钥将加密数据解密成所述待存储的数据;发送解密出的所述待存储的数据回数据访问请求的请求端。

本发明实施例中,用户的待存储的数据不是直接存储在本地服务器或云端服务器,而是为待存储的数据自动加密,保证存储在本地服务器或云端服务器的安全性。由于该加密是自动的,用户完全觉察不到,对用户来说是隐形的,即“空气态“的,这种隐形加密的方式既减轻了用户操作,又提高了数据存储安全性。另外,本发明实施例不是用一个密钥将待存储的数据直接加密,而是把待存储的数据分组,对每个分组用该分组的加密密钥加密。这样,即使黑客接触到了服务器上的加密数据,由于其不知道加密分组方案,也不知道每个分组的密钥,因此很难正确解密,从而进一步提高了存储的加密数据被破解的难度,提高了数据存储的安全性。由于本发明实施例中,将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号相对应地存储,且用户想访问数据时,其发送的访问请求中带有加密流水号,这样就可以找到当时为访问的待存储的数据分配的加密分组方案、每个分组的加密密钥,从将加密数据解密。而且,当接收到用户的数据访问请求时,还会验证发送数据访问请求的用户的标识是否与存入待存储的数据的用户的标识一致,从而保证了非存入数据的用户不能访问该数据,进一步提高了数据存储访问的安全性。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1示出了其中可以应用本申请实施例的示例性系统架构;

图2示出了根据本申请一个实施例的空气态隐形加密保护方法的示例性流程图;

图3示出了根据本申请一个实施例的空气态隐形加密保护装置的示例性结构框图;

图4示出了适于用来实现本申请实施例的计算机系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

请参考图1,其示出了可以应用本申请实施例的示例性系统架构。

如图1所示,系统架构可以包括请求端110、存储服务器120。请求端110是请求存储待存储的数据的终端,也是请求访问存储的数据的终端。这里的终端包括通用计算机、移动终端、pda、车载设备等各种形式的终端。存储服务器120是请求端110要将待存储的数据存入的本地服务器或云端服务器。存储服务器120包括空气态隐形加密保护装置121和存储位置122。空气态隐形加密保护装置121是执行本发明实施例的空气态隐形加密保护方法的模块。存储位置122是存储待存储的数据的位置。它有可能是存储服务器120内部的存储空间,也有可能是插入存储服务器120的存储盘等。

如背景技术中提到的,目前,关于数据的本地或云端的存储方式主要是直接存储方式,即将数据直接存储在本地服务器或云端服务器。这样,其它用户可能通过攻击本地服务器或云端服务器的方式轻易读取到用户在本地或云端存储的数据,因此数据存储安全性差。如果要求用户自己将数据加密再发到本地服务器或云端服务器,虽然提高了数据安全性,但增加了用户操作,用户操作很繁琐。因此,需要一种减轻用户操作、却又能提高数据存储安全性的方案。

本发明实施例中,用户的待存储的数据不是直接存储在本地服务器或云端服务器,而是为待存储的数据自动加密,保证存储在本地服务器或云端服务器的安全性。由于该加密是自动的,用户完全觉察不到,对用户来说是隐形的,即“空气态“的,这种隐形加密的方式既减轻了用户操作,又提高了数据存储安全性。另外,本发明实施例不是用一个密钥将待存储的数据直接加密,而是把待存储的数据分组,对每个分组用该分组的加密密钥加密。这样,即使黑客接触到了服务器上的加密数据,由于其不知道加密分组方案,也不知道每个分组的密钥,因此很难正确解密,从而进一步提高了存储的加密数据被破解的难度,提高了数据存储的安全性。由于本发明实施例中,将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号相对应地存储,且用户想访问数据时,其发送的访问请求中带有加密流水号,这样就可以找到加密时为访问的待存储的数据分配的加密分组方案、每个分组的加密密钥,从将加密数据解密。而且,当接收到用户的数据访问请求时,还会验证发送数据访问请求的用户的标识是否与存入待存储的数据的用户的标识一致,从而保证了非存入数据的用户不能访问该数据,进一步提高了数据存储访问的安全性。

参考图2,其示出了根据本申请一个实施例的空气态隐形加密保护方法的示例性流程图。这里的保护方法是指对数据在服务器上的存储的安全保护方法。隐形加密是指将用户数据加密存储在存储服务器上,但这种加密对于用户来说是不知道的,是隐形的。空气态是指加密对于用户来说感觉不到,象空气一样。图2所示的方法可以在图1中的空气态隐形加密保护装置121执行。

如图2所示,在步骤201中,接收待存储的数据。

待存储的数据即来自请求端110的待存储到存储位置122的数据,包括程序、文件、资料等。

在步骤202中,识别数据存储请求端标识。

数据存储请求端即请求存储待存储的数据的终端,即请求端110。数据存储请求端标识即用于识别数据存储请求端的标志,如为其分配的终端序列号。数据存储请求端标识是互不相同的。

在一个实施例中,识别数据存储请求端标识可以通过读取数据存储请求端向存储服务器120发送待存储的数据之前向存储服务器120发的握手消息中的数据存储请求端的标识实现的。

在步骤203中,为待存储的数据分配加密分组方案、每个分组的加密密钥、以及与加密分组方案对应的加密流水号。

在一个实施例中,分配加密分组方案包括:从预先设定的包括多个加密分组方案的方案集合中随机选取加密分组方案。

也就是说,预先设定多个分组方案,将它们放在一个方案集合中。当需要为待存储的数据分配加密分组方案时,随机从方案集合中选取一个方案。

例如,集合中有四种加密分组方案:

方案1:按照数据量1:1:1:1等分要加密的数据;

方案2:按照数据量1:2:1:2分割要加密的数据;

方案3:按照数据量1:3:1:3分割要加密的数据;

方案4:按照数据量1:2:3:4分割要加密的数据。

当需要为待存储的数据分配加密分组方案时,随机从方案集合中选,出方案4,这时意味着要把待存储的数据按照数据量1:2:3:4分成四份。

从预先设定的包括多个加密分组方案的方案集合中随机选取加密分组方案的好处是:由于分组方案不是固定不变的,而是每次从方案集合中随机选出的,这样就减少了攻击者破解出分组方案的可能性,进一步提高了数据存储的安全性。

在一个实施例中,分配每个分组的加密密钥包括:为每个分组,从预先设定的包括多个加密密钥的密钥集合中随机选取加密密钥。

也就是说,预先设定多个加密密钥,将它们放在密钥集合中。当需要分配分组的加密密钥时,就从密钥集合中随机选取一个加密密钥。例如,预先设定100个加密密钥,把它们放在密钥集合中。当需要分配加密密钥时,从100个加密密钥中随机选取一个。

从预先设定的包括多个加密密钥的密钥集合中随机选取加密密钥的好处是:由于加密密钥不是固定不变的,而是每次从密钥集合中随机选出的,这样,即使攻击者破解出分组方案,也很难一一破解各分组的加密密钥,进一步提高了数据存储的安全性。

在一个实施例中,为待存储的数据分配与加密分组方案对应的加密流水号时,每次为待存储的数据分配的加密流水号互不相同。这样做的好处是:在后续根据数据访问请求中的加密流水号来查找与其相对应的数据存储请求端标识、加密分组方案、以及每个分组的加密密钥时,由于每次为待存储的数据分配的加密流水号互不相同,就会查找到唯一的数据存储请求端标识、加密分组方案、以及每个分组的加密密钥,避免了依赖其它参数(例如加密时间等)来进一步识别对应的数据存储请求端标识、加密分组方案、以及每个分组的加密密钥,提高了访问请求处理的效率。

在一个实施例中,在分配完加密流水号后,将分配的加密流水号返回数据存储请求端,以便数据存储请求端在需要访问存储的数据时,将加密流水号放在数据访问请求中进行请求。

在步骤204中,将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表。

对应关系表是相对应地存储加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与数据存储请求端标识的表。它存储于存储服务器120的高度机密的存储空间。即使存储在存储服务器120的一般数据被攻击者接触到,这个表也很难被读取。

在步骤205中,根据分配的加密分组方案、每个分组的加密密钥,加密待存储的数据成加密数据。

即,先根据分配的加密分组方案,把待存储的数据分组。然后,对每个分组,利用其加密密钥加密。然后,将加密后的各分组按照加密分组方案中的分组顺序再组合到一起,成为加密数据。

在步骤206中,存储加密数据。

即,将步骤205中得到的加密数据存储到存储位置122。

在步骤207中,接收带有加密流水号的数据访问请求。

如前面提到的,在分配完加密流水号后,将分配的加密流水号返回数据存储请求端,即请求端110。这样,当请求端110需要访问存储的数据时,将加密流水号放在数据访问请求中,将数据访问请求发送到存储服务器120。数据访问请求是访问其存储在存储服务器120上的数据的请求。

在步骤208中,根据数据访问请求中的加密流水号,从对应关系表查找相对应的数据存储请求端标识。

由于在步骤204中,将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表,因此,根据数据访问请求中的加密流水号,就可以从对应关系表查找到相对应的数据存储请求端标识。

在步骤209中,判断查找到的数据存储请求端标识与数据访问请求的请求端标识是否一致。

如果一致,就说明请求访问数据的请求端就是将该数据存储到存储服务器120的请求端,可以允许访问。如果不一致,就说明请求访问数据的请求端不是将该数据存储到存储服务器120的请求端,不允许访问。

在步骤210中,如果一致,从对应关系表中查找与数据访问请求中的加密流水号相对应的加密分组方案、每个分组的加密密钥。

由于在步骤204中,将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表,因此,根据数据访问请求中的加密流水号,就可以从对应关系表查找到相对应的加密分组方案、每个分组的加密密钥。

在步骤211中,按照查找到的加密分组方案、每个分组的加密密钥将加密数据解密成所述待存储的数据。

即,按照查找到的加密分组方案,将加密数据分组。然后,对于每个分组,用每个分组的加密密钥解密,得到解密后的该分组。在这里,假设加密与解密密钥相同。然后,按照查找到的加密分组方案中的分组顺序,将解密后的各分组组合,得到的数据与所述待存储的数据一样。

在步骤212中,发送解密出的所述待存储的数据回数据访问请求的请求端。

另外,在一个实施例中,所述方法还包括:为待存储的数据分配加密后的每个分组的存储位置。它可以作为步骤203的一部分,也可以作为在步骤204之前的单独的一个步骤。

例如,将待存储的数据分成4个分组。在存储服务器120上有4个存储分区a、b、c、d。可以为4个加密的分组分别分配a、b、c、d四个分区。

在该实施例中,在步骤204中,将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表时,所述加密后的每个分组的存储位置也与识别出的数据存储请求端标识相对应地存储在对应关系表。

在该实施例中,步骤206包括:将加密后的每个分组按照分配的加密后的每个分组的存储位置存储。

在上述例子中,可以将4个加密的分组分别存储到a、b、c、d四个分区中。

在该实施例中,所述方法还包括:如果查找到的数据存储请求端标识与数据访问请求的请求端标识一致,从对应关系中还查找与数据访问请求中的加密流水号相对应的加密后的每个分组的存储位置。该步骤可以作为步骤210的一部分,也可以作为步骤209之后、步骤211之前的单独一个步骤。

在该实施例中,步骤211包括:按照查找到的加密分组方案,从查找到的加密后的每个分组的存储位置取加密数据,并将取回的加密数据按照查找到的每个分组的加密密钥解密。

例如,加密分组方案是按照数据量1:2:3:4分成4组,加密后的每个分组的存储位置分别是a、b、c、d四个分区,则分别从a、b、c、d四个分区取加密数据,并将取回的加密数据按照查找到的每个分组的加密密钥解密。然后,将解密后的分组按照加密分组方案中的顺序组合,成为解密数据,即待存储的数据。

为待存储的数据除分配加密分组方案、每个分组的加密密钥外,还分配加密后的每个分组的存储位置的好处是,使得加密后的分组不存储在一个位置,这样,攻击方破解存储服务器120上存储的数据的可能性更小,增强数据存储安全性。

在一个实施例中,为待存储的数据分配加密后的每个分组的存储位置包括:从预先设定的包括多个存储位置的位置集合中随机选取加密后的每个分组的存储位置。

也就是说,预先设定多个存储位置,将它们放在位置集合中。当需要分配存储位置时,就从位置集合中随机选取一个存储位置。例如,预先设定20个存储位置,把它们放在位置集合中。当需要分配存储位置时,从100个存储位置中随机选取一个。

从预先设定的包括多个存储位置的位置集合中随机选取存储位置的好处是:由于存储位置不是固定不变的,而是每次从位置集合中随机选出的,这样,即使攻击者破解出分组方案和每个分组的加密密钥,也不知道到哪些位置取加密数据,进一步提高了数据存储的安全性。

应当注意,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

进一步参考图3,其示出了根据本申请一个实施例的空气态隐形加密保护装置300的示例性结构框图。

如图3所示,空气态隐形加密保护装置300可以包括待存储的数据接收单元301、数据存储请求端标识识别单元302、分配单元303、对应关系存储单元304、加密单元305、加密数据存储单元306、数据访问请求接收单元307、数据存储请求端标识查找单元308、判断单元309、加密分组方案及加密密钥查找单元310、解密单元311、发送单元312。

如图2所示,待存储的数据接收单元301接收待存储的数据。

待存储的数据即来自请求端110的待存储到存储位置122的数据,包括程序、文件、资料等。

数据存储请求端标识识别单元302识别数据存储请求端标识。

数据存储请求端即请求存储待存储的数据的终端,即请求端110。数据存储请求端标识即用于识别数据存储请求端的标志,如为其分配的终端序列号。数据存储请求端标识是互不相同的。

在一个实施例中,识别数据存储请求端标识可以通过读取数据存储请求端向存储服务器120发送待存储的数据之前向存储服务器120发的握手消息中的数据存储请求端的标识实现的。

分配单元303为待存储的数据分配加密分组方案、每个分组的加密密钥、以及与加密分组方案对应的加密流水号。

在一个实施例中,分配加密分组方案包括:从预先设定的包括多个加密分组方案的方案集合中随机选取加密分组方案。

也就是说,预先设定多个分组方案,将它们放在一个方案集合中。当需要为待存储的数据分配加密分组方案时,随机从方案集合中选取一个方案。

例如,集合中有四种加密分组方案:

方案1:按照数据量1:1:1:1等分要加密的数据;

方案2:按照数据量1:2:1:2分割要加密的数据;

方案3:按照数据量1:3:1:3分割要加密的数据;

方案4:按照数据量1:2:3:4分割要加密的数据。

当需要为待存储的数据分配加密分组方案时,随机从方案集合中选,出方案4,这时意味着要把待存储的数据按照数据量1:2:3:4分成四份。

从预先设定的包括多个加密分组方案的方案集合中随机选取加密分组方案的好处是:由于分组方案不是固定不变的,而是每次从方案集合中随机选出的,这样就减少了攻击者破解出分组方案的可能性,进一步提高了数据存储的安全性。

在一个实施例中,分配每个分组的加密密钥包括:为每个分组,从预先设定的包括多个加密密钥的密钥集合中随机选取加密密钥。

也就是说,预先设定多个加密密钥,将它们放在密钥集合中。当需要分配分组的加密密钥时,就从密钥集合中随机选取一个加密密钥。例如,预先设定100个加密密钥,把它们放在密钥集合中。当需要分配加密密钥时,从100个加密密钥中随机选取一个。

从预先设定的包括多个加密密钥的密钥集合中随机选取加密密钥的好处是:由于加密密钥不是固定不变的,而是每次从密钥集合中随机选出的,这样,即使攻击者破解出分组方案,也很难一一破解各分组的加密密钥,进一步提高了数据存储的安全性。

在一个实施例中,为待存储的数据分配与加密分组方案对应的加密流水号时,每次为待存储的数据分配的加密流水号互不相同。这样做的好处是:在后续根据数据访问请求中的加密流水号来查找与其相对应的数据存储请求端标识、加密分组方案、以及每个分组的加密密钥时,由于每次为待存储的数据分配的加密流水号互不相同,就会查找到唯一的数据存储请求端标识、加密分组方案、以及每个分组的加密密钥,避免了依赖其它参数(例如加密时间等)来进一步识别对应的数据存储请求端标识、加密分组方案、以及每个分组的加密密钥,提高了访问请求处理的效率。

在一个实施例中,在分配完加密流水号后,将分配的加密流水号返回数据存储请求端,以便数据存储请求端在需要访问存储的数据时,将加密流水号放在数据访问请求中进行请求。

对应关系存储单元304将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表。

对应关系表是相对应地存储加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与数据存储请求端标识的表。它存储于存储服务器120的高度机密的存储空间。即使存储在存储服务器120的一般数据被攻击者接触到,这个表也很难被读取。

加密单元305根据分配的加密分组方案、每个分组的加密密钥,加密待存储的数据成加密数据。

即,先根据分配的加密分组方案,把待存储的数据分组。然后,对每个分组,利用其加密密钥加密。然后,将加密后的各分组按照加密分组方案中的分组顺序再组合到一起,成为加密数据。

加密数据存储单元306存储加密数据。

即,将上述得到的加密数据存储到存储位置122。

数据访问请求接收单元307接收带有加密流水号的数据访问请求。

如前面提到的,在分配完加密流水号后,将分配的加密流水号返回数据存储请求端,即请求端110。这样,当请求端110需要访问存储的数据时,将加密流水号放在数据访问请求中,将数据访问请求发送到存储服务器120。数据访问请求是访问其存储在存储服务器120上的数据的请求。

数据存储请求端标识查找单元308根据数据访问请求中的加密流水号,从对应关系表查找相对应的数据存储请求端标识。

由于加密时,将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表,因此,根据数据访问请求中的加密流水号,就可以从对应关系表查找到相对应的数据存储请求端标识。

判断单元309判断查找到的数据存储请求端标识与数据访问请求的请求端标识是否一致。

如果一致,就说明请求访问数据的请求端就是将该数据存储到存储服务器120的请求端,可以允许访问。如果不一致,就说明请求访问数据的请求端不是将该数据存储到存储服务器120的请求端,不允许访问。

如果一致,加密分组方案及加密密钥查找单元310从对应关系表中查找与数据访问请求中的加密流水号相对应的加密分组方案、每个分组的加密密钥。

由于加密时,将分配的加密分组方案、每个分组的加密密钥、与加密分组方案对应的加密流水号与识别出的数据存储请求端标识相对应地存储在对应关系表,因此,根据数据访问请求中的加密流水号,就可以从对应关系表查找到相对应的加密分组方案、每个分组的加密密钥。

解密单元311按照查找到的加密分组方案、每个分组的加密密钥将加密数据解密成所述待存储的数据。

即,按照查找到的加密分组方案,将加密数据分组。然后,对于每个分组,用每个分组的加密密钥解密,得到解密后的该分组。在这里,假设加密与解密密钥相同。然后,按照查找到的加密分组方案中的分组顺序,将解密后的各分组组合,得到的数据与所述待存储的数据一样。

发送单元312发送解密出的所述待存储的数据回数据访问请求的请求端。

另外,在一个实施例中,所述装置还包括:存储位置分配单元,用于为待存储的数据分配加密后的每个分组的存储位置。

例如,将待存储的数据分成4个分组。在存储服务器120上有4个存储分区a、b、c、d。可以为4个加密的分组分别分配a、b、c、d四个分区。

在该实施例中,加密数据存储单元306进一步用于:将加密后的每个分组按照分配的加密后的每个分组的存储位置存储。

在上述例子中,可以将4个加密的分组分别存储到a、b、c、d四个分区中。

在该实施例中,所述装置还包括:存储位置查找单元,用于如果查找到的数据存储请求端标识与数据访问请求的请求端标识一致,从对应关系中还查找与数据访问请求中的加密流水号相对应的加密后的每个分组的存储位置。

在该实施例中,解密单元进一步用于:按照查找到的加密分组方案,从查找到的加密后的每个分组的存储位置取加密数据,并将取回的加密数据按照查找到的每个分组的加密密钥解密。

例如,加密分组方案是按照数据量1:2:3:4分成4组,加密后的每个分组的存储位置分别是a、b、c、d四个分区,则分别从a、b、c、d四个分区取加密数据,并将取回的加密数据按照查找到的每个分组的加密密钥解密。然后,将解密后的分组按照加密分组方案中的顺序组合,成为解密数据,即待存储的数据。

为待存储的数据除分配加密分组方案、每个分组的加密密钥外,还分配加密后的每个分组的存储位置的好处是,使得加密后的分组不存储在一个位置,这样,攻击方破解存储服务器120上存储的数据的可能性更小,增强数据存储安全性。

在一个实施例中,为待存储的数据分配加密后的每个分组的存储位置包括:从预先设定的包括多个存储位置的位置集合中随机选取加密后的每个分组的存储位置。

也就是说,预先设定多个存储位置,将它们放在位置集合中。当需要分配存储位置时,就从位置集合中随机选取一个存储位置。例如,预先设定20个存储位置,把它们放在位置集合中。当需要分配存储位置时,从100个存储位置中随机选取一个。

从预先设定的包括多个存储位置的位置集合中随机选取存储位置的好处是:由于存储位置不是固定不变的,而是每次从位置集合中随机选出的,这样,即使攻击者破解出分组方案和每个分组的加密密钥,也不知道到哪些位置取加密数据,进一步提高了数据存储的安全性。

下面参考图4,其示出了适于用来实现本申请实施例的计算机系统400的结构示意图。

如图4所示,计算机系统400包括中央处理单元(cpu)401,其可以根据存储在只读存储器(rom)402中的程序或者从存储部分408加载到随机访问存储器(ram)403中的程序而执行各种适当的动作和处理。在ram403中,还存储有系统400操作所需的各种程序和数据。cpu401、rom402以及ram403通过总线404彼此相连。输入/输出(i/o)接口405也连接至总线404。

以下部件连接至i/o接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至i/o接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。

特别地,根据本公开的实施例,上文参考图2描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行图2的方法的程序代码。

在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中。这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。

作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本申请的公式输入方法。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1