一种用户资源的加密、解密方法和设备与流程

文档序号:12600588阅读:309来源:国知局
一种用户资源的加密、解密方法和设备与流程

本申请涉及网络信息安全领域,尤其涉及一种用户资源的加密、解密方法和设备。



背景技术:

随着互联网技术的飞速发展,出现了各种各样的应用平台。为了更好地为用户提供网络服务,不同应用平台之间可以建立合作关系,并基于该合作关系,一方应用平台中存储的用户信息中的部分信息可以提供的其他应用平台使用,有效提升应用平台为用户提供网络服务的质量。

例如:假设应用平台A与应用平台B之间建立合作关系,并且应用平台A与应用平台B之间允许共享用户地址信息,用户登录应用平台B,并在应用平台B上发起一个购买业务,当应用平台B需要用户提供用户地址信息时,假设用户在应用平台A上已经注册了用户信息,那么此时应用平台B可以从应用平台A处获取用户的用户地址信息,无需用户再重新输入用户地址信息,给用户的使用带来极大便利。

然而,与应用平台A建立合作关系的其他应用平台不止一个,也就意味着,不同的其他应用平台都可以通过合作关系分别从应用平台A中获取所需要的用户信息。现有技术中,应用平台A与建立合作关系的其他应用平台(例如:应用平台B、应用平台C等)之间传输用户信息采用固定加密方式,即应用平台A共享给应用平台B的用户信息1与应用平台A共享给应用平台C的用户信息2所采用的加密方式相同,其中,用户信息1与用户信息2属于同一个用户的不同类型的信息,例如:用户信息1为用户的地址信息,用户信息2为用户的号码信息。

但是,经研究发现,目前所使用的这种方式使得应用平台A存在较大安全 隐患:与应用平台A建立合作关系的任意一个应用平台一旦破解加密方式,将很容易从与应用平台A建立合作关系的其他应用平台中获取用户的其他用户信息,导致应用平台中用户信息被泄漏的风险增加。



技术实现要素:

有鉴于此,本申请实施例提供了一种用户资源的加密、解密方法和设备,用于解决现有技术中建立合作关系的应用平台之间传输用户信息采用的加密方式固定,导致应用平台中用户信息被泄漏的风险增加的问题。

本申请提供了一种用户资源的加密方法,包括:

获取待处理的用户资源,并确定用于对所述用户资源进行加密的密钥对应的密钥索引;

根据所述密钥索引,确定用于对所述用户资源进行加密的加密密钥;

利用所述加密密钥对所述用户资源进行加密,得到加密结果。

本申请提供了一种用户资源的解密方法,包括:

获取包含用户资源的加密信息,并确定用于对所述加密信息进行解密的密钥对应的密钥索引;

根据所述密钥索引,确定用于对所述加密信息进行解密的解密密钥;

利用所述解密密钥对所述加密信息进行解密,得到解密后的用户资源。

本申请提供了一种用户资源的加密设备,包括:

获取单元,用于获取待处理的用户资源,并确定用于对所述用户资源进行加密的密钥对应的密钥索引;

确定单元,用于根据所述密钥索引,确定用于对所述用户资源进行加密的加密密钥;

加密单元,用于利用所述加密密钥对所述用户资源进行加密,得到加密结果。

本申请提供了一种用户资源的解密设备,包括:

获取单元,用于获取包含用户资源的加密信息,并确定用于对所述加密信息进行解密的密钥对应的密钥索引;

确定单元,用于根据所述密钥索引,确定用于对所述加密信息进行解密的解密密钥;

解密单元,用于利用所述解密密钥对所述加密信息进行解密,得到解密后的用户资源。

本申请有益效果如下:

本申请提供的方案,获取待处理的用户资源,并确定用于对所述用户资源进行加密的密钥对应的密钥索引;根据所述密钥索引,确定用于对所述用户资源进行加密的加密密钥;利用所述加密密钥对所述用户资源进行加密,得到加密结果。通过为用户资源确定密钥索引,并根据密钥索引对应的密钥确定对所述用户资源进行加密的加密密钥,这样,对于不同的用户资源,系统为其确定的加密密钥不同的概率增加,进而能够有效避免现有技术中建立合作关系的应用平台之间传输用户信息采用的加密方式相对固定导致应用平台中用户信息被泄漏的风险增加的问题,有效提升用户资源的安全性,降低用户资源被泄露的风险。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种用户资源的加密方法流程示意图;

图2为本申请实施例提供的一种用户资源的解密方法流程示意图;

图3为本申请实施例提供的一种用户资源的加密设备结构示意图;

图4为本申请实施例提供的一种用户资源的解密设备结构示意图。

具体实施方式

为了实现本申请的目的,本申请实施例中提供了一种用户资源的加密、加密方法和设备,获取待处理的用户资源,并确定用于对所述用户资源进行加密的密钥对应的密钥索引;根据所述密钥索引,确定用于对所述用户资源进行加密的加密密钥;利用所述加密密钥对所述用户资源进行加密,得到加密结果。通过为用户资源确定密钥索引,并根据密钥索引对应的密钥确定对所述用户资源进行加密的加密密钥,这样,对于不同的用户资源,系统为其确定的加密密钥不同的概率增加,进而能够有效避免现有技术中建立合作关系的应用平台之间传输用户信息采用的加密方式相对固定导致应用平台中用户信息被泄漏的风险增加的问题,有效提升用户资源的安全性,降低用户资源被泄露的风险。

需要说明的是,本申请实施例可以基于高级加密标准(英文全拼:Advanced Encryption Standard;缩写:AES)法对待处理的用户资源进行加密,AES法是一种对称加密方法,又称为Rijndael加密法,AES法的特点是:它的加密密钥和解密密钥相同,且对待处理的用户资源进行加密后,加密结果所占的字符位个数与待处理的用户资源所占用的字符位个数相同,也可以基于其他加密方式对待处理的用户资源进行加密,这里不做具体限定。

下面结合说明书附图对本申请各个实施例作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

需要说明的是,在本申请提供的实施例中,第一应用平台可以与多个应用平台之间建立合作关系,允许多个应用平台共享第一应用平台上的用户的用户资源,本申请实施例中所记载的用户资源的加密/解密方法可以应用在不同应用平台之间共享用户资源时,也可以应用在不同应用平台之间需要获取用户资源时,这里不做限定。下面以第一应用平台与第二应用平台建立合作关系为例进行说明。

图1为本申请实施例提供的一种用户资源的加密方法流程示意图,所述方法如下所述。

步骤101:获取待处理的用户资源,并确定用于对所述用户资源进行加密的密钥对应的密钥索引。

步骤102:根据所述密钥索引,确定用于对所述用户资源进行加密的加密密钥。

步骤103:利用所述加密密钥对所述用户资源进行加密,得到加密结果。

下面对上述每一个步骤的实现方式进行详细说明。

在步骤101中,第一应用平台与第二应用平台建立合作关系,允许第二应用平台共享用户在第一应用平台上的用户资源,这里的用户资源可以是用户在第一应用平台上的用户标识,还可以是用户在第一应用平台上的用户信息,本申请实施例中所记载的用户信息可以包含用户的收货地址信息,用户的手机号码信息,用户注册在第一应用平台上的其他用户信息,这里不做具体限定。

以用户信息为用户的收货地址信息为例进行说明,在第二应用平台发起业务请求,并需要获取用户的收货地址信息来完成业务操作时,由于第二应用平台已与第一应用平台建立合作关系,因此,第二应用平台可以从第一应用平台获取用户的收货地址信息,此时,第二应用平台向第一应用平台发起资源共享请求,请求获取用户在第一应用平台上的收货地址信息,其中,所述资源共享请求中包含待共享资源的用户标识和所述第二应用平台的标识,第一应用平台根据所述资源共享请求中包含的待共享资源的用户标识,查找与所述用户标识对应的收货地址信息,并根据所述第二应用平台的标识将查找到所述收货地址信息发送至第二应用平台。

但是,与第一应用平台建立合作关系的应用平台不止第二应用平台一个,为了保证第一应用平台向第二应用平台发送的用户的收货地址信息的安全性,第一应用平台需要对向第二应用平台发送的用户的收货地址信息进行加密。

在本申请提供的实施例中,以第一应用平台上的其中一个用户为研究对 象,以对该用户在第一应用平台上的用户资源进行加密为例进行说明。

在执行加密操作之前,需要确定待处理的用户资源。

需要说明的是,在本申请提供的实施例中,确定待处理的用户资源的方式包括但不限于以下两种方式:

第一种方式:在第二应用平台向第一应用平台发起资源共享请求时,通过所述资源共享请求确定待处理的用户资源。

第二种方式:在第一应用平台与第二应用平台建立合作关系时,预先确定允许第二应用平台可以获得的用户资源,将所述用户资源作为待处理的用户资源。

在获取到待处理的用户资源后,需要对该用户资源执行加密操作。

需要说明的是,为了保证用户资源的安全性,在本申请提供的实施例中,采用不同的密钥对不同的用户资源进行加密,因此,在获取到待处理的用户资源后,需要确定对所述用户资源进行加密的密钥对应的密钥索引。其中,所述密钥索引与所述密钥之间满足一一对应关系,以便于根据所述密钥索引确定对用户资源进行加密的加密密钥。

具体地,可以采用以下几种方式确定用于对所述用户资源进行加密的密钥对应的密钥索引:

第一种方式:基于获取到的待处理的用户资源,随机从密钥数据库中查找一个密钥索引,将查找到的所述密钥索引作为用于对所述用户资源进行加密的密钥对应的密钥索引。

需要说明的是,在本申请实施例中所记载的密钥数据库可以是预先设定的,在该密钥数据库中建立密钥索引与密钥的对应关系,每一个密钥对应一个密钥索引。不同用户和/或不同类型的用户资源能够使用的密钥索引不同,在本申请实施例中除了可以随机为待处理的用户资源确定密钥索引之外,还可以根据用户资源对应的用户标识和/或所述用户资源对应的资源类型确定密钥索引,这里不做具体限定。

例如:假设密钥数据库中存储的密钥的个数为10000个,那么,在为这10000个密钥确定对应的密钥索引时,假设为第一个密钥确定的密钥索引为0000,为第二个密钥确定的密钥索引为0001,……,为第10000个密钥确定的密钥索引为9999,也可以采用其他方法为不同密钥确定对应的密钥索引。

在为所述密钥数据库中的每一个密钥确定密钥索引后,将密钥与密钥索引之间的对应关系存储在密钥数据库中。

第二种方式:基于获取到的待处理的用户资源,按照设定算法对所述用户资源进行解析,根据解析结果从密钥数据库中查找用于对所述用户资源进行加密的密钥对应的密钥索引。

具体地,按照设定算法对用户资源进行解析,从所述用户资源中选择一部分信息作为查找密钥索引的条件,从密钥数据库中查找与选择的一部分信息相匹配的密钥索引作为用于对所述用户资源进行加密的密钥对应的密钥索引。

例如:确定所述用户资源所占字符位个数,选择其中任意n位的字符信息作为选择的一部分信息,其中,n的取值范围大于1小于等于所述用户资源所占字符位个数。

需要说明的是,还可以根据其他方式确定用于对所述用户资源进行加密的密钥对应的密钥索引,本申请提供的实施例不作具体限定,只要保证对于不同的用户资源,所述密钥索引也不相同。

第三种方式:按照设定的解码算法,对所述用户资源执行解码操作,使得解码后的所述用户资源所占字符位个数小于待处理的用户资源所占字符位个数,将待处理的用户资源所占字符位个数与解码后的所述用户资源所占字符位个数作差得到差值,从密钥数据库中查找所占字符位个数与所述差值相同的密钥索引组,并从密钥索引组中随机选择一个密钥索引作为用于对所述用户资源进行加密的密钥对应的密钥索引。

在确定用于对所述用户资源进行加密的密钥对应的密钥索引后,在步骤102中根据确定的所述密钥索引确定用于对所述用户资源进行加密的加密密 钥,具体实现方式包括但不限于以下几种:

第一种方法:

根据密钥索引与密钥之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥,将查找到的所述密钥作为用于对所述用户资源进行加密的加密密钥。

需要说明的是,在步骤101中记载的方法,所述密钥数据库中已预先存储所述密钥索引和所述密钥之间的对应关系,因此,可以根据所述密钥索引在所述密钥数据库中查找到与所述密钥索引对应的密钥。

第二种方法:

根据所述密钥索引与密钥标识之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥标识;利用所述密钥索引和所述密钥标识,得到用于对所述用户资源进行加密的加密密钥。

这里的密钥标识指的是密钥的标识信息,不代表真实密钥,可以根据所述密钥标识和所述密钥索引得到对所述用户资源进行加密的密钥。

需要说明的是,在密钥数据库中预先可以存储密钥索引与密钥之间的对应关系,也可以预先存储密钥索引与密钥标识之间的对应关系,还可以预先存储密钥索引、密钥标识与密钥之间的对应关系,这样方便后续可以根据所述密钥索引在所述密钥数据库中查找到与所述密钥索引对应的密钥标识。

具体地,在查询到所述密钥标识后,可以根据所述密钥索引以及所述密钥标识,通过查找或者计算的方式得到密钥,并将得到的密钥作为对用户资源进行加密的加密密钥。

第三种方法:

根据所述密钥索引和应用平台的标识,确定用于对所述用户资源进行加密的加密密钥。

需要说明的是,本申请实施例所述的应用平台标识是指第二应用平台标识,第一应用平台在接收到第二应用平台发送的资源共享请求后,可以根据所 述资源共享请求确定第二应用平台的标识,也可以在获取待处理的用户资源时确定第二应用平台的标识,还可以在第一应用平台与第二应用平台建立合作关系时,第一应用平台预先为第二应用平台设置应用平台的标识,并在接收到资源共享请求或者获取到待处理的用户资源时,获取预先为第二应用平台设置的应用平台标识,具体实现方式这里不做限定。

这样根据所述密钥索引和所述应用平台的标识,确定用于对所述用户资源进行加密的加密密钥,以保证相同的用户资源在不同的应用平台上的加密密钥不同。

具体地,根据所述密钥索引和所述应用平台的标识,确定用于对所述用户资源进行加密的加密密钥的方式包括但不限于以下两种情形:

第一种情形:根据所述密钥索引与密钥之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥,将查找到的所述密钥作为用于对所述用户资源进行加密的初始密钥;根据所述应用平台的标识和所述初始密钥,生成用于对所述用户资源进行加密的加密密钥。

具体地,根据所述密钥索引在所述密钥数据库中查找与所述密钥索引对应的密钥,此时,查找到的密钥仅作为初始密钥,也就是说,不使用查找到的密钥作为对所述用户资源进行加密的加密密钥。

在得到所述查找到的密钥后,根据所述查找到的密钥和确定的所述应用平台的标识,得到用于对所述用户资源进行加密的加密密钥。这里加密密钥得到的方式不做具体限定,可以是将所述应用平台的标识直接添加在所述查找的密钥后面得到加密密钥,也可以将所述应用平台的标识直接添加在所述查找的密钥前面得到加密密钥。

第二种情形:根据所述密钥索引与密钥标识之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥标识;利用所述密钥索引和所述密钥标识,得到用于对所述用户资源进行加密的初始密钥;根据所述应用平台的标识和所述初始密钥,生成用于对所述用户资源进行加密的加密密钥。

在得到用于对所述用户资源进行加密的加密密钥后,在步骤103中,利用在步骤102中确定的加密密钥,对所述用户资源进行加密,得到加密结果。

在步骤103中,所使用的加密密钥可以选择步骤102中所记载的任意一种确定加密密钥的方法得到加密密钥,利用得到的加密密钥对所述用户资源进行加密,得到加密结果的方式包括但不限于以下几种:

第一种方式:直接利用加密密钥对用户资源进行加密,得到加密结果。

第二种方式:按照设定的解码算法,对所述用户资源执行解码操作,得到解码后的所述用户资源,利用所述加密密钥对解码后的用户资源进行加密,得到所述解码后的用户资源对应的加密密文;将所述加密密文和所述密钥索引合并得到加密结果。

其中,所述加密结果所占用的字符位个数与所述待处理的用户资源所占用的字符位个数相同。

由于现有的加密算法对用户资源进行加密的特点是:对用户资源进行加密后,加密结果所占用的字符位个数大于所述用户资源所占用的字符位个数,这样,第一应用平台的服务器在存储字符位个数较大的加密结果时极为不便,存在浪费资源的问题。为了克服这一问题,在本申请提供的实施例中,在执行加密操作时,可以限定加密结果所占用的字符位的个数与待处理的用户资源所占用的字符位的个数相同,也就是说,假设待处理的用户资源所占用的字符位个数为16位,对所述待处理的用户资源进行加密后,加密结果所占用的字符位个数也为16位。

为了保证加密结果所占用的字符位的个数与待处理的用户资源所占用的字符位的个数相同,在本申请实施例中,加密结果分为两部分:一部分是对用户资源进行加密得到的加密密文,另一部分是步骤101确定的密钥索引。

在本申请实施例中,是根据密钥索引所占字符位的个数确定加密密文所占字符位的个数,还是根据解码算法得到加密密文所占字符位个数确定密钥索引所占字符位个数,还是预先确定加密密文所占字符位个数和/或密钥索引所占字 符位个数,不做具体限定。

下面以根据密钥索引所占字符位的个数确定加密密文所占字符位的个数为例进行说明。

在步骤101中,确定用于对所述用户资源进行加密的密钥索引,此时可以确定密钥索引所占字符位的个数,那么根据待处理的用户资源所占字符位的个数,得到加密密文所占字符位的个数,进而确定待处理的用户资源执行解码操作后得到解码后的用户资源所占字符位的个数。

具体地,在获取到待处理的用户资源后,对所述用户资源进行解码操作,以减少所述用户资源所占用的字符位个数。

这里的对用户资源进行解码的解码算法可以是用于减少所述待处理的用户资源所占用的字符位个数的方法,例如:base64算法,缩位算法等,也可以是其他算法,不做具体限定。

这样对所述用户资源进行解码操作后,使得所述解码后的用户资源所占用的字符位个数与所述密钥索引所占用的字符位个数之和与所述待处理的用户资源所占用的字符位个数相同,这样,可以克服第一应用平台的服务器在存储字符位个数较大的加密结果时极为不便,存在浪费资源的问题。

例如,所述待处理的用户资源占用的字符位个数为16位,密钥索引占用的字符位个数为4位,解码后的用户资源占用的字符位个数为12位。

具体地,在对所述用户资源进行解码操作后得到解码后的用户资源,利用步骤102确定的加密密钥对得到的解码后的用户资源进行加密操作,可以得到加密密文,在本申请实施例可以通过AES法进行加密的,这样所述加密密文所占用的字符位个数与所述解码后的用户资源所占用的字符位个数相同。

在得到加密密文后,将所述加密密文和所述密钥索引合并得到加密结果,对所述加密密文和所述密钥索引进行合并的方法不做具体限定。

可选地,本申请实施例利用AES算法对待处理的用户资源进行加密,AES法的加密特点是加密密钥和解密密钥相同,因此,在对所述待处理的用户资源 加密后,可以将对所述待处理的用户资源进行加密的加密密钥、所述待处理的用户资源之间的对应关系进行保存,以便于使用所述加密密钥对加密后的用户资源进行解密。

本申请实施例提供的方案,获取待处理的用户资源,并确定用于对所述用户资源进行加密的密钥对应的密钥索引;根据所述密钥索引,确定用于对所述用户资源进行加密的加密密钥;利用所述加密密钥对所述用户资源进行加密,得到加密结果。通过为用户资源确定密钥索引,并根据密钥索引对应的密钥确定对所述用户资源进行加密的加密密钥,这样,对于不同的用户资源,系统为其确定的加密密钥不同的概率增加,进而能够有效避免现有技术中建立合作关系的应用平台之间传输用户信息采用的加密方式相对固定导致应用平台中用户信息被泄漏的风险增加的问题,有效提升用户资源的安全性,降低用户资源被泄露的风险。

需要说明的是,第一应用平台与第二应用平台建立合作关系,第一应用平台通过上述记载的方法对第一应用平台上的用户的不同类型的用户资源进行加密后,将加密结果发送至第二应用平台,当第二应用平台需要获取第一应用平台的用户资源完成业务操作时,第二应用平台向第一应用平台发起资源共享请求,其中,资源共享请求中包含用户资源的加密信息,第一应用平台接收第二应用平台发送的资源共享请求,并获取其中包含的用户资源的加密信息,此时,第一应用平台需要对包含用户资源的加密信息进行解密,并得到解密后的用户资源,以便于第一应用平台将解密后的用户资源发送至第二应用平台。

图2为本申请实施例提供的一种用户资源的解密方法流程示意图,所述方法如下所述。

步骤201:获取包含用户资源的加密信息,并确定用于对所述加密信息进行解密的密钥对应的密钥索引。

步骤202:根据所述密钥索引,确定用于对所述加密信息进行解密的解密密钥。

步骤203:利用所述解密密钥对所述加密信息进行解密,得到解密后的用户资源。

下面对上述每一个步骤的实现方式进行详细说明。

在步骤201中,第一应用平台在接收到第二应用平台发送的资源共享请求后,根据所述资源共享请求获取到包含用户资源的加密信息,并根据获取到的加密信息确定用于对所述加密信息进行解密的密钥对应的密钥索引。

本申请实施例中解密过程中所涉及到的用户资源对于第一应用平台来讲可以是用户标识;对于第二应用平台来讲可以是用户信息。

需要说明的是,假设加密信息是利用密钥索引确定的加密密钥直接对用户资源进行加密得到的,那么在执行加密操作后,保存加密信息与密钥索引之间的对应关系,这样,在获取到加密信息时,可以确定用于对所述加密信息进行解密的密钥对应的密钥索引。

假设在本申请提供的第一个实施例中,若对所述待处理的用户资源的加密结果中包含所述密钥索引,那么在获取到的加密信息后,可以根据所述加密信息确定所述密钥索引。

具体地,解析所述加密信息,并确定所述加密信息中包含的加密密文以及对所述加密信息进行解密的密钥对应的密钥索引,其中,所述加密密文所占用的字符位个数与所述密钥索引占用的字符位个数之和与所述加密信息所占用的字符位个数相同。

那么根据确定的所述密钥索引确定用于对所述加密信息进行解密的解密密钥,具体实现方式包括但不限于以下几种:

第一种方法:

根据密钥索引与密钥之间的对应关系,从密钥数据库中查找到与所述密钥索引对应的密钥,将查找到的所述密钥作为用于对所述加密信息进行解密的解密密钥。

需要说明的是,在本申请提供的第一个实施例中,所述密钥索引和所述密 钥之间的对应关系已预先存储在所述密钥数据库中,这里不再重复描述。

第二种方法:

根据所述密钥索引与密钥标识之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥标识;利用所述密钥索引和所述密钥标识,确定用于对所述加密信息进行解密的解密密钥。

需要说明的是,所述密钥索引和所述密钥标识之间的对应关系已预先存储在所述密钥数据库中,在本申请提供的第一个实施例中已作具体说明,这里不再重复描述。

具体地,在查询到所述密钥标识后,可以根据所述密钥索引以及所述密钥标识,通过查找或者计算的方式得到密钥,并将得到密钥作为对所述加密信息进行解密的解密密钥。

第三种方法:

根据所述密钥索引和应用平台的标识,确定用于对所述加密信息进行解密的解密密钥。

具体地,第一种情形:根据所述密钥索引与密钥之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥,将查找到的所述密钥作为用于对所述加密信息进行解密的初始密钥;根据所述应用平台的标识和所述初始密钥,生成用于对所述加密信息进行解密的解密密钥。

第二种情形:根据所述密钥索引与密钥标识之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥标识;利用所述密钥索引和所述密钥标识,确定用于对所述加密信息进行解密的初始密钥;根据所述应用平台的标识和所述初始密钥,生成用于所述加密信息进行解密的解密密钥。

在得到解密密钥之后,第一种情形:直接对加密信息进行解密,得到解密后的用户资源。

第二种情形:针对加密信息中包含加密密文和密钥索引的情况,首先需要利用解密密钥对加密信息中包含的加密密文进行解密,得到解密结果;其次, 根据所述解密结果,得到解密后的用户资源。

具体地,按照设定的编码算法,对所述解密结果执行编码操作,得到编码后的用户资源,其中,所述编码后的用户资源所占用的字符位个数与原始的用户资源所占用的字符位个数相同。

这里的编码操作和本申请提供的第一个实施例中所记载的解码操作互为逆运算,也就是说,所述解码操作可以减少被解码的对象所占用的字符位个数,所述编码操作可以增加被编码的对象所占用的字符位个数,这里选择的编码算法可以根据对待处理的用户资源进行加密时选择的解码算法确定,可以是base64算法,也可以是其他算法,不做具体限定。

在对所述待处理的用户资源进行编码操作后,得到解密后的用户资源即为解码后的用户资源,其中,解密后的用户资源所占用的字符位个数与原始的用户资源所占用的字符位个数相同。

在本申请实施例中,若使用的加密算法为AES法,那么在对加密信息进行解密时,可以基于该法的特点,加密密钥与解密密钥相同,那么在获取到加密信息时,确定生成该加密信息时的加密密钥,并利用该加密密钥对加密信息进行解密,即可得到需要的用户资源。

需要说明的是,在本申请提供的实施例中,对包含用户资源的加密信息进行解密的过程与对所述待处理的用户资源的加密过程可以互为逆操作。

图3为本申请实施例提供的一种用户资源加密设备的结构示意图。所述设备包括:获取单元31、确定单元32、加密单元33以及平台标识获取单元34,其中:

获取单元31,用于获取待处理的用户资源,并确定用于对所述用户资源进行加密的密钥对应的密钥索引;

确定单元32,用于根据所述密钥索引,确定用于对所述用户资源进行加密的加密密钥;

加密单元33,用于利用所述加密密钥对所述用户资源进行加密,得到加密 结果。

可选地,所述获取单元31在获取待处理的用户资源时,还包括:

按照设定的解码算法,对所述用户资源执行解码操作,使解码后的所述用户资源所占字符位个数与所述密钥索引所占用的字符位个数之和与所述待处理的用户资源所占用的字符位个数相同;

所述加密单元33利用所述加密密钥对所述用户资源进行加密,得到加密结果,包括:

利用所述加密密钥,对所述解码后的所述用户资源进行加密,得到加密结果。

所述确定单元32根据所述密钥索引,确定用于对所述用户资源进行加密的加密密钥,包括:

根据所述密钥索引与密钥之间的对应关系,从密钥数据库中查找到与所述密钥索引对应的密钥,将查找到的所述密钥作为用于对所述用户资源进行加密的加密密钥。

可选地,所述加密设备还包括平台标识获取单元34,其中:

所述平台标识获取单元34,用于确定需要共享所述用户资源的应用平台的标识;

所述确定单元32根据所述密钥索引,确定用于对所述用户资源进行加密的加密密钥,包括:

根据所述密钥索引和所述应用平台的标识,确定用于对所述用户资源进行加密的加密密钥。

所述确定单元32根据所述密钥索引和所述应用平台的标识,确定用于对所述用户资源进行加密的加密密钥,包括:

根据所述密钥索引与密钥之间的对应关系,从密钥数据库中查找到与所述密钥索引对应的密钥,将查找到的所述密钥作为用于对所述用户资源进行加密的初始密钥;

根据所述应用平台的标识和所述初始密钥,生成用于对所述用户资源进行加密的加密密钥。

可选地,所述确定单元32根据所述密钥索引和所述应用平台的标识,确定用于对所述用户资源进行加密的加密密钥,还包括:

根据所述密钥索引与密钥标识之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥标识;

利用所述密钥索引和所述密钥标识,确定用于对所述用户资源进行加密的初始密钥;

根据所述应用平台的标识和所述初始密钥,生成用于对所述用户资源进行加密的加密密钥。

所述加密单元33利用所述加密密钥,对所述解码后的所述用户资源进行加密,得到加密结果,包括:

利用所述加密密钥对解码后的用户资源进行加密,得到所述解码后的用户资源对应的加密密文;

将所述加密密文和所述密钥索引合并得到加密结果,其中,所述加密结果所占用的字符位个数与所述待处理的用户资源所占用的字符位个数相同。

需要说明的是,本申请实施例提供的用户资源的加密设备可以通过硬件方式实现,也可以通过软件方式实现,这里不做限定。

图4为本申请实施例提供的一种用户资源的解密设备结构示意图,所述设备包括:获取单元41、确定单元42、解密单元43和平台标识确定单元44,其中:

获取单元41,用于获取包含用户资源的加密信息,并确定用于对所述加密信息进行解密的密钥对应的密钥索引;

确定单元42,还用于根据所述密钥索引,确定用于对所述加密信息进行解密的解密密钥;

解密单元43,用于利用所述解密密钥对所述加密信息进行解密,得到解密 后的用户资源。

可选地,所述获取单元41确定用户对所述加密信息进行解密的密钥对应的密钥索引,包括:

解析所述加密信息,并确定所述加密信息中包含的加密密文以及对所述加密信息进行解密的密钥对应的密钥索引,其中,所述加密密文所占用的字符位个数与所述密钥索引占用的字符位个数之和与所述加密信息所占用的字符位个数相同;

所述解密单元43利用所述解密密钥对所述加密信息进行解密,包括:

利用所述解密密钥对所述加密密文进行解密,得到解密结果;

根据所述解密结果,得到解密后的用户资源。

所述确定单元42根据所述密钥索引,确定用于对所述加密信息进行解密的解密密钥,包括:

根据密钥索引与密钥之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥,将查找到的所述密钥作为用于对所述加密信息进行解密的解密密钥。

可选地,所述解密设备还包括平台标识确定单元44,其中:

所述平台标识确定单元44,用于确定发送所述加密信息的应用平台的标识;

所述确定单元42根据所述密钥索引,确定用于对所述加密信息进行解密的解密密钥,包括:

根据所述密钥索引和所述应用平台的标识,确定用于对所述加密信息进行解密的解密密钥。

所述确定单元43根据所述密钥索引和所述应用平台的标识,确定用于对所述加密信息进行解密的解密密钥,包括:

根据所述密钥索引与密钥之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥,将查找到的所述密钥作为用于对所述加密信息进行解 密的初始密钥;

根据所述应用平台的标识和所述初始密钥,生成用于对所述加密信息进行解密的解密密钥。

所述确定单元43根据所述密钥索引和所述应用平台的标识,确定用于对所述加密信息进行解密的解密密钥,还包括:

根据所述密钥索引与密钥标识之间的对应关系,从密钥数据库中查找到与确定的密钥索引对应的密钥标识;

利用所述密钥索引和所述密钥标识,确定用于对所述加密信息进行解密的初始密钥;

根据所述应用平台的标识和所述初始密钥,生成用于所述加密信息进行解密的解密密钥。

可选地,所述解密单元43根据所述解密结果,得到解密后的用户资源,包括:

按照设定的编码算法,对所述待解密结果执行编码操作,得到编码后的用户资源,其中,所述编码后的用户资源所占用的字符位个数与原始的用户资源所占用的字符位个数相同。

需要说明的是,本申请实施例提供的用户资源的解密设备可以通过硬件方式实现,也可以通过软件方式实现,这里不做限定。

本领域的技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的 结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

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