一种数据加密、解密方法和设备与流程

文档序号:11410646阅读:201来源:国知局
本申请涉及数据安全领域,尤其涉及一种数据加密、解密方法和设备。
背景技术
::随着互联网技术的飞速发展,基于互联网技术为用户提供的网络服务也越来越多,例如,基于互联网技术可以为用户提供电子支付服务,使得用户可以通过网络实现支付,为用户提供网络银行服务,使得用户可以通过网络实现资金的转账、汇款等。在为用户提供网络服务的过程中,网络服务器会产生大量的用户数据,例如,用户的用户名、用户密码、用户的消费记录,等。通常,网络服务器通常会将这些用户数据进行存储,并在对用户数据进行存储之前,为了保证存储的用户数据的安全性,可以对用户数据进行加密,并对加密后的用户数据进行存储。这样,可以有效保证存储的用户数据的安全性。随着互联网用户的不断增加,网络服务器中存储的用户数据也越来越多,对用户数据进行加密时的安全性要求也越来越高。然而,在对大量的用户数据进行加密时,现有的加密方法普遍存在安全性较低的问题,不能满足对用户数据加密时的高安全性的需求。由此可见,亟需一种数据加密方法,能够解决上述问题。技术实现要素:本申请实施例提供一种数据加密、解密方法和设备,用于解决现有技术中,在对大量的用户数据进行加密时,现有的加密方法安全性较低,不能满足高安全性需求的问题。本申请实施例提供一种数据加密方法,包括:确定包含密钥标识的待加密数据,所述密钥标识对应的密钥用于对所述待加密数据进行加密,所述密钥标识由服务器动态分配得到;根据所述密钥标识,确定与所述密钥标识对应的密钥;根据所述密钥,对所述待加密数据进行加密,得到加密后的数据。本申请实施例提供一种数据解密方法,包括:确定包含密钥标识的待解密数据,所述密钥标识对应的密钥用于对所述待解密数据进行解密,所述密钥标识由服务器动态分配得到;根据所述密钥标识,确定与所述密钥标识对应的密钥;根据所述密钥,对所述待解密数据进行解密,得到解密后的数据。本申请实施例提供一种数据加密设备,包括:确定单元,确定包含密钥标识的待加密数据,所述密钥标识对应的密钥用于对所述待加密数据进行加密,所述密钥标识由服务器动态分配得到;密钥确定单元,根据所述密钥标识,确定与所述密钥标识对应的密钥;加密单元,根据所述密钥,对所述待加密数据进行加密,得到加密后的数据。本申请实施例提供一种数据解密设备,包括:确定单元,确定包含密钥标识的待解密数据,所述密钥标识对应的密钥用于对所述待解密数据进行解密,所述密钥标识由服务器动态分配得到;密钥确定单元,根据所述密钥标识,确定与所述密钥标识对应的密钥;解密单元,根据所述密钥,对所述待解密数据进行解密,得到解密后的数据。本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:本申请实施例提供的技术方案,确定包含密钥标识的待加密数据,所述密钥标识对应的密钥用于对所述待加密数据进行加密,所述密钥标识由服务器动态分配得到;根据所述密钥标识,确定与所述密钥标识对应的密钥;根据所述密钥,对所述待加密数据进行加密,得到加密后的数据。在对待加密数据进行加密之前,为所述待加密数据随机分配用于对所述待加密数据进行加密的密钥对应的密钥标识,这样,在对待加密数据进行加密时,可以根据待加密数据中的密钥标识确定其对应的密钥,进而根据确定的密钥对待加密数据进行加密,由于对待加密数据中包含的密钥标识随机分配得到,即对待加密数据进行加密的密钥是随机分配,因此,相较于现有技术而言,可以提高对数据进行加密的安全性。除此之外,由于本申请实施例将密钥对应的标识保存至待加密数据中,使得待加密数据可以与密钥可以分开存储,这样,即使获取到密钥标识以及加密后的数据,也无法获取到密钥进而对加密后的数据进行解密,可以进一步提高数据加密的安全性。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1为本申请实施例提供的一种数据加密方法的流程示意图;图2为本申请实施例提供的一种数据加密存储的场景示意图;图3为本申请实施例提供的一种数据解密方法的流程示意图;图4为本申请实施例提供的一种数据加密设备的结构示意图;图5为本申请实施例提供的另一种数据加密设备的结构示意图;图6为本申请实施例提供的一种数据解密设备的结构示意图;图7为本申请实施例提供的一种数据存储的结构示意图。具体实施方式在现有技术中,网路服务器在对用户数据进行加密时,通常可以采用对称加密或非对称加密。其中,对称加密主要基于des算法以及aes算法,具有加密、解密速度快的优点,被广泛应用于数据的传输以及存储中,非对称加密主要基于ecc算法以及rsa算法,由于其公钥和私钥更加灵活,因此,其安全性高于对称加密。然而,在对大量的用户数据进行加密时,采用对称加密或非对称加密至少存在以下问题:(1)对称加密中,加密和解密均采用同一个密钥,导致密钥容易泄露,用户数据的安全性得不到保障;(2)采用非对称加密对数据进行加密时的运算量比较大,这样,在对大量的用户数据进行加密时,加密的效率较低。本申请实施例提供的数据加密方法,通过采用不同的加密方法,相对于现有技术而言,在对大量的用户数据进行加密时,可以保证数据加密的高安全性以及高效性,满足对大量用户数据进行加密的需求。下面结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。需要说明的是,本申请实施例提供的数据加密、解密方法可以适用于互联网中分布式云存储平台的应用场景,其中,分布式云存储平台是将文件存储在网络云中,对文件的安全性以及隐私性的要求较高,本申请实施例提供的数据加密、解密方法,在分布式云存储平台对待存储的数据加密存储时,可以有效提高对数据进行加密的效率以及安全性。还需要说明的是,本申请实施例提供的数据加密方法,可以用于对数据传输过程中的加密,也可以用于将数据进行存储时的加密,不做具体限定,本申请实施例可以以数据进行存储时的加密为例进行说明。以下结合附图,详细说明本申请各实施例提供的技术方案。图1为本申请实施例提供的一种数据加密方法的流程示意图。所述方法如下所述。本申请实施例的直行主体可以是分布式云存储平台对应的服务器(以下简称云服务器)。步骤101:确定包含密钥标识的待加密数据。其中,所述密钥标识对应的密钥用于对所述待加密数据进行加密,所述密钥标识由服务器动态分配得到。在步骤101中,用户在将数据存储至分布式云存储平台中时,可以将待存储的数据发送给云服务器,云服务器可以接收用户发送的待存储的数据,云服务器在接收到所述待存储数据时,可以对所述待存储数据进行加密,此时,可以将所述待存储数据视为所述待加密数据。需要说明的是,本申请实施例中所述待加密数据中可以包含用于对所述待加密数据进行加密的密钥对应的密钥标识。云服务器确定包含所述密钥标识的待加密数据,具体包括:接收用户发送的待加密数据;根据线程的使用情况,将所述密钥标识分配给所述待加密数据;将所述密钥标识保存至所述待加密数据中。本申请实施例中,用户在于云服务器建立连接后,该用户的用户数据可以对应云服务器中的一个线程,也可以对应云服务器中的多个线程,云服务器在接收到该用户发送的待加密数据后,可以根据线程的使用情况,为该用户的待加密数据随机分配密钥标识。其中,所述密钥标识可以是密钥的身份标识,用于区分不同的密钥。本申请实施例中,所述密钥标识可以存储在独立动态缓存空间中,云服务器在为所述待加密数据分配密钥时,可以从所述独立缓存空间中随机选取密钥标识,并将随机选取的密钥标识分配给所述待加密数据。其中,所述独立动态缓存空间可以允许并支持高并发的密钥标识的分配操作。具体允许的密钥标识分配操作的个数可以根据独立动态缓存空间的空间大小确定。例如,独立缓存空间的容量为8g,那么,密钥的标识的长度为32位(可以标记232个密钥),则可以允许并发8*1024*1024*1024/32=268435456(2.6亿)个分配密钥的标识的操作。这样,云服务器可以为每个线程分配单独的密钥,实现一个用户对应一个密钥,并可以同时分配算法、算法执行部件等,这样,可以实现有效的密钥的分配制度,既能保证数据存储的安全性,又能保证加密性能不受影响。在实际应用中,分布式云存储平台中包含的存储空间可以分为多个存储区域,每一个存储区域可以用于存储一个用户的数据,也可以用于存储多个用户的数据,那么,云服务器在为待加密数据分配密钥时,可以首先确定用户存储该待加密数据的存储区域对应的用户的个数,若该存储区域对应的用户个数为一个,那么,云服务器可以直接根据线程为所述待加密数据分配密钥标识;若该存储区域对应的用户的个数为多个,那么,云服务器可以根据所述存储区域对应的密钥标识(存储区域对应的密钥标识的个数也为多个),为所述待加密数据分配密钥标识。云服务器在为待存储数据分配密钥标识后,可以将该密钥标识保存至待存储数据中,并确定得到待加密数据,其中,所述密钥标识对应的密钥用于对所述待加密数据进行加密。例如,如果所述待存储数据为文件,那么,可以将密钥的标识保存在文件节点中,如果所述待存储数据为虚拟块设备,那么,可以将密钥的标识作为该虚拟块设备的属性进行保存。在步骤101中,云服务器在确定得到待加密数据后,可以进一步确定得到所述待加密数据中的密钥标识,此时,可以执行步骤102。步骤102:根据所述密钥标识,确定与所述密钥标识对应的密钥。在步骤102中,云服务器在确定所述待加密数据中包含的密钥标识后,可以根据所述密钥标识,从密钥库中查找与所述密钥标识对应的密钥,以便于使用所述密钥对所述待加密数据进行加密。本申请实施例中,所述密钥库可以预先存储有不同密钥标识对应的密钥,这样,云服务器在确定所述密钥标识后,可以从所述密钥库中查找得到与所述密钥标识对应的密钥。步骤103:根据所述密钥,对所述待加密数据进行加密,得到加密后的数据。在步骤103中,云服务器在查找得到所述标识对应的密钥后,可以使用所述密钥,对所述待加密数据进行加密,并得到加密后的数据。具体地,云服务器根据所述密钥,对所述待加密数据进行加密,包括:确定对所述待加密数据进行加密的加密算法,所述加密算法由所述服务器预先分配得到;根据所述密钥,使用所述加密算法对所述待加密数据进行加密。云服务器在确定用于存储不同用户的用户数据的多个存储区域后,可以针对每一个存储区域预先分配加密算法,在将加密算法分配给存储区域后,云服务器在对所述待加密数据进行加密时,可以确定预先分配给用于存储该用户的待加密数据的存储区域,并确定预先分给该存储区域的加密算法,这样,云服务器可以根据所述密钥,使用所述加密算法对所述待加密数据进行加密,得到加密后的数据。需要说明的是,基于上述记载的内容,云服务器在分配密钥的标识时,可以基于线程分配密钥的标识,这样,在对待加密数据进行加密时,一方面,可以支持高并发的密钥请求,提高对数据加密的效率,另一方面,可以实现一个用户的待加密数据对应一个密钥,由于每个用户的待加密数据库使用的加密密钥不同,因此,可以有效保证待加密数据的安全性。在本申请提供的另一实施例中,云服务器在根据所述密钥,对所述待加密数据进行加密后,所述方法还包括:对所述密钥进行加密操作,得到加密后的密钥;将所述加密后的密钥进行存储。也就是说,云服务器在使用所述密钥对所述待加密数据进行加密后,为了保证所述密钥的安全性,可以将所述密钥进行加密,并将所述密钥进行存储,存储的位置可以是所述密钥库中,存储的方式可以是将所述密钥的标识与所述加密后的密钥之间的对应关系进行存储。其中,在对所述密钥加密后,所述密钥的标识可以不变,即所述加密后的密钥的标识可以与所述未加密时的密钥的标识相同。在本申请提供的另一实施例中,在加密得到所述加密后的数据后,可以将所述加密后的数据存储至存储阵列中。具体地,本申请实施例可以将存储阵列的存储空间以pool(存储池)为单位进行安全域隔离,所述安全域可以视为上述记载的用于存储用户数据的存储区域。这样,以pool为单位进行隔离,由于不同的pool之间是逻辑隔离的,不能相互交换数据,因此,可以保证数据存储的安全性。图2为本申请实施例提供的一种数据加密存储的场景示意图。如图2所示,云服务网络(即分布云存储平台)可以用于存储用户数据,用户在访问云服务网络中的数据时,可以通过计算机、手机等终端进行访问。云服务网络中的数据可以采用统一存储架构进行存储,既可以提供基于块的san(英文名称:storageareanetwork,中文名称:存储局域网络)存储服务,也可以提供基于文件的nas(英文全称:networkattachedstorage,中文名称:网络附加存储)存储服务。图2中云服务网络中的数据可以以三种存储方式进行存储,分别为:nas的存储服务,san的存储服务,nas以及san的统一存储服务。在实际应用中,云服务网络中的用户数据可以以上述记载的三种存储方式中的任意一种或两种存储方式进行存储。图2中,云服务器在接收到用户发送的用户数据时,可以确定所述用户数据的存储区域,并为存储区域分配对应的密钥的标识。其中,分布式云存储平台的存储区域可以包含多个,云服务器可以针对每一个存储区域分配多个密钥的标识,也就是说,针对一个存储区域而言,其包含的多个标识对应的密钥可以将该存储区域进行分区,每一个分区可以用于存储用户数据。云服务网络在对用户数据进行存储时,为了保证存储的用户数据的安全性,可以将存储区域以pool的形式进行安全域隔离。其中,针对san存储服务,可以将用户数据以lun(英文全称:logicalunitnumber,中文名称:逻辑单元)的为单位进行加密,针对nas服务,可以将用户数据以文件为单位进行加密。如图2所示,可以采用高速安全固态盘阵对用户数据进行存储,其中,针对,nas存储服务,在将存储区域以pool(存储池)的形式进行安全域隔离后,可以将用户数据以文件的形式存储在raid(英文全称:redundantarraysofindependentdisks,中文名称:磁盘阵列)组中;针对san存储服务,在将存储区域以pool的形式进行安全域隔离后,可以将用户数据以lun的形式存储在raid(英文全称:redundantarraysofindependentdisks,中文名称:磁盘阵列)组中。这样,一方面可以提高存储的用户数据的安全性,另一方面也可以提高系统性能。本申请实施例提供的技术方案,在对待加密数据进行加密之前,为所述待加密数据随机分配用于对所述待加密数据进行加密的密钥对应的密钥标识,这样,在对待加密数据进行加密时,可以根据待加密数据中的密钥标识确定其对应的密钥,进而根据确定的密钥对待加密数据进行加密,由于对待加密数据中包含的密钥标识随机分配得到,即对待加密数据进行加密的密钥是随机分配,因此,相较于现有技术而言,可以提高对数据进行加密的安全性。除此之外,由于本申请实施例将密钥对应的标识保存至待加密数据中,使得待加密数据可以与密钥可以分开存储,这样,即使获取到密钥标识以及加密后的数据,也无法获取到密钥进而对加密后的数据进行解密,可以进一步提高数据加密的安全性。图3为本申请实施例提供的一种数据解密方法的流程示意图。所述方法如下所述。本申请实施例的执行主体可以是图1所记载的实施例中的所述云服务器。步骤301:确定包含密钥标识的待解密数据。其中,所述密钥标识对应的密钥用于对所述待解密数据进行解密,所述密钥标识由服务器动态分配得到。在步骤301中,用户在需要访问分布式云存储平台存储的加密后的数据时,云服务器需要将存储的加密后的数据进行解密,此时,云服务器可以将用户需要访问的加密后的数据作为待解密数据。本申请实施例中,对分布式云存储平台存储的加密后的数据的加密方法可以是上述图1所示的实施例记载的加密方法。云服务器确定的所述待解密数据中可以包含用于对所述待解密数据进行解密的密钥对应的密钥标识,其中,所述密钥标识可以是在对所述待解密数据进行加密时,由云服务器随机动态分配,并保存至所述待解密数据中的。具体方法可以参见上述图1所示的实施例记载的内容,这里不再重复描述。步骤302:根据所述密钥标识,确定与所述密钥标识对应的密钥。在步骤302中,云服务器可以根据所述密钥标识,在密钥库中查找与所述密钥标识对应的密钥,其中,所述密钥库中可以存储不同密钥标识对应的密钥,所述密钥用于对待解密进行解密。需要说明的是,为了提高数据在解密过程中的安全性,所述密钥库库中存储的密钥可以是加密后的密钥。具体地,在对所述待解密数据进行加密时,加密成功后,可以将加密时使用的密钥进行加密,并存储在所述密钥库中。其中,所述密钥库可以与图1所示实施例记载的所述密钥库为相同的密钥库,也可以是不同的密钥库,不做具体限定。步骤303:根据所述密钥,对所述待解密数据进行解密,得到解密后的数据。在步骤303中,云服务器在确定与所述标识对应的密钥后,可以根据该密钥对所述待解密数据进行解密。在本申请提供的另一实施例中,所述密钥库中的密钥可以为加密后的密钥,因此,云服务器根据所述密钥,对所述待解密数据进行解密时,具体包括:对所述密钥进行解密,得到解密后的密钥,其中,所述密钥库中包含的密钥为加密后的密钥;根据所述解密后的密钥,对所述待解密数据进行解密。这样,云服务器在使用所述密钥对所述待解密数据解密时,可以对所述密钥进行解密操作,并使用解密后的密钥对所述待解密数据进行解密,并得到解密后的数据。云服务器在得到所述解密后的数据后,可以将所述解密后的数据提供给用户,便于用户访问。本申请实施例提供的技术方案,在对加密后的数据进行解密时,确定待解密数据中包含的密钥标识,该密钥标识由云服务器预先随机动态分配得到,根据待解密数据中包含的密钥标识,查找用于对待解密数据进行解密的密钥,根据所述密钥,对所述待解密数据进行解密。这样,通过将用于解密的密钥对应的密钥标识随机分配并保存至待解密数据中,用于对待解密数据进行解密的密钥为随机分配得到,因此,相较于现有技术而言,可以提高对数据进行加密的安全性。。图4为本申请实施例提供的一种数据加密设备的结构示意图。所述数据加密设备包括:确定单元41、密钥确定单元42以及加密单元43,其中:确定单元41,确定包含密钥标识的待加密数据,所述密钥标识对应的密钥用于对所述待加密数据进行加密,所述密钥标识由服务器动态分配得到;密钥确定单元42,根据所述密钥标识,确定与所述密钥标识对应的密钥;加密单元43,根据所述密钥,对所述待加密数据进行加密,得到加密后的数据。所述确定单元41包含密钥标识的待加密数据,包括:接收用户发送的待加密数据;根据线程的使用情况,将所述密钥标识分配给所述待加密数据;将所述密钥标识保存至所述待加密数据中。本申请实施例中,所述密钥标识存储在独立动态缓存空间,所述独立动态存储空间允许高并发的密钥标识的分配操作。所述加密单元43,根据所述密钥,对所述待加密数据进行加密,包括:确定对所述待加密数据进行加密的加密算法,所述加密算法由所述服务器预先分配得到;根据所述密钥,使用所述加密算法对所述待加密数据进行加密。所述加密单元43根据所述密钥,对所述待加密数据进行加密后,对所述密钥进行加密操作,得到加密后的密钥;并将所述加密后的密钥进行存储。在本申请提供的另一实施例中,所述数据加密设备还包括:存储单元44,其中:所述存储单元44,将所述加密后的数据存储至预先进行安全域隔离的存储阵列中。图5为本申请实施例提供的另一种数据加密设备的结构示意图。本申请实施例提供的另一种数据加密设备可以是图5所示的密码模块。如图5所示,密码模块内置高容量内存,用于存储该密码模块当前所处理的用于加解密的连接信息。图5所示的密码模块可以用于建立发送队列,具体地,可以根据cpucores个数建立数据发送队列,队列的初始键值在配置文件中设定。所述密码模块还用于数据的发送和接收,具体地,发送线程负责将发送队列的数据读出,引擎发送线程首先从下行消息队列中读取作业包数据,通过socket将数据发送给业务板;接收线程通过socket负责接收业务板回送的数据,并将数据发送到用户对应的接收队列中。密码服务引擎是部署在应用服务器上的一个守护程序,逻辑上位于应用接口的下层,负责与密码机业务板之间的通信,及业务分发。与密码机业务板建立socket连接并进行通信,支持线程级粒度的加解密操作。以对文件和虚拟块设备进行加密为例:文件系统中的每个文件都分配有自己的密钥。创建文件时,读取创建文件所在的pool(存储池)的所属安全域,通过密码模块向加密卡/高性能加密机申请所属安全域的加解密的密钥标识,将申请的密钥标识保存到文件的节点中。文件加解密时,使用文件的密钥标识,向密码模块发送加解密请求,密码模块选择加密卡/高性能加密机完成加解密工作。创建虚拟块设备时,读取虚拟块设备所在的pool(存储池)的所属安全域,通过密码模块向加密卡/高性能加密机申请所属安全域的加解密的密钥标识,将申请的密钥标识作为虚拟块设备的属性保存,在虚拟块设备创建完成后不能做任何修改。对虚拟块设备加解密时,虚拟块设备的所有加解密都使用保存的密钥标识,向密码模块发送加解密请求,密码模块选择加密卡/高性能加密机完成加解密工作。图6为本申请实施例提供的一种数据解密设备的结构示意图。所述数据解密设备包括:确定单元61、密钥确定单元62以及解密单元63,其中:确定单元61,确定包含密钥标识的待解密数据,所述密钥标识对应的密钥用于对所述待解密数据进行解密,所述密钥标识由服务器动态分配得到;密钥确定单元62,根据所述密钥标识,确定与所述密钥标识对应的密钥;解密单元63,根据所述密钥,对所述待解密数据进行解密,得到解密后的数据。本申请提供的另一实施例中,所述密钥为加密后的密钥;所述解密单元63根据所述密钥,对所述待解密数据进行解密,包括:对所述密钥进行解密,得到解密后的密钥;根据所述解密后的密钥,对所述待解密数据进行解密。图7为本申请实施例提供的一种数据存储的结构示意图。图7所示的数据存储结构可以用于存储加密后的数据,该加密后的数据可以是通过上述图1所示的实施例记载的加密方法进行加密后得到。如图7所示,该数据存储结构可以分为用户侧以及操作系统侧。针对用户侧而言,该数据存储结构可以包括:文件系统使用者(filesystemconsumers)、设备使用者(deviceconsumers)以及管理程序三部分。其中:文件系统使用者,可以通过posix(英文全称:portableoperatingsysteminterface,中文名称:可移植操作系统接口)文件系统api单独与zfs(英文全称:zettabytefilesystem,中文名称:动态文件系统)交互。实际上,每个应用程序都可归为此类别。系统调用是通过opensolaris(开放源操作系统)vfs层传递到zpl(zfsposixlayer)的。设备使用者,zfs提供了一种创建“仿真卷”的方式,对这些卷的备份可以通过存储池中的存储进行的,但在设备节点下显示为一个普通设备。有少量应用程序直接与这些设备交互,但对设备使用最多的还是位于设备层之上的内核文件系统或目标驱动程序。管理程序,这些应用程序是管理zfs文件系统或存储池的(包括检查属性和数据集分层结构)。针对操作系统侧,该数据存储结构可以包括三个基本层:接口层(interfacelayer)、事物对象层(transactionalobjectlayer)以及存储池层(storagepooledlayer)。interfacelayer可以与zpl对应,用于提供存储访问接口和管理接口,包括zpl、虚拟卷设备驱动和设备节点“/dev/zfs”三个模块。其中,zpl向nfs存储请求和cifs存储请求提供文件访问接口;虚拟卷设备驱动向san存储请求提供数据块访问接口;设备节点/dev/zfs通过用户层的管理动态库向管理子系统提供存储管理接口。transactionalobjectlayer可以与dmu对应,包括zil(日志)、zap(数据映射器)、dmu(数据管理)、dsl(快照/复制管理)以及transactional(对象遍历器)五个模块。storagepooledlayer可以与spa组件对应,包括arc(缓存管理)、zio(存储调度管理)、vdel(虚拟设备管理)三个子模块。其中,缓存管理模块使用系统的内存作为存储子系统的读写缓存,可以提高系统的读写性能;存储调度管理模块负责设备虚拟地址和逻辑地址之间的转换、校验和、压缩和加密等工作;虚拟设备管理模块负责为存储子系统提供访问固态硬盘的统一方法,以raid的形式将多个固态硬盘组织在一起,负责可用空间的管理及固态硬盘上的块格式分布。其中,zio(存储调度管理)连接密码模块(该密码模快可以是图5所示的密码模快),可以向密码模块发送申请密钥、加解密请求,密码模块将处理后的结果传送给zio。通过zio调用密码模块,即在zol中处理加解密,该位置正好是文件节点消失转换为实际虚拟地址,这样,在到达zol时,可以准确读取文件节点所在的位置,进而读取到密钥的标识。storagepooledlayer在存储层将多个固态硬盘组织成一个raid,将多个raid组织成一个pool。在pool上创建多个文件系统,创建的文件系统为nfs存储服务子系统、cifs存储服务子系统提供最底层的文件存储服务;在pool上创建多个虚拟块设备,作为san存储服务子系统逻辑单元对应的块设备。存储子系统中可以创建多个pool,安全域管理以pool作为管理的基本单元,存储层在创建pool时,可以指定pool所属的安全域。其中,所述密码模块可以用于对待加密数据进行加密,以及对待解密数据进行解密,在对密钥进行加密后,可以将加密后的密钥存储至密码模块的flash芯片中。所述密码模块还可以使用独立存缓存空间(动态ram)作为密钥池,在需要使用密钥时,将flash芯片中的加密后的密钥解密进入密钥池,只有fpga(field-programmablegatearray)芯片进行密码运算时使用,除了密码模块的fpga芯片外,其它无法访问密钥池。所述密码模块的动态ram和操作系统的动态ram也是物理分离的,这样,除了fpga密码芯片之外,其他模块无法从操作系统获得密码运算动态ram中的数据,保证了存储的隔离性。本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1