用于生成密钥及对应解密的方法和设备的制造方法

文档序号:9914257阅读:576来源:国知局
用于生成密钥及对应解密的方法和设备的制造方法
【技术领域】
[0001]本申请涉及计算机领域,尤其涉及一种用于生成密钥及对应解密的技术。
【背景技术】
[0002]移动终端密钥的攻击模型分为三种:恶意软件,申请所有可用的系统权限,比如发短信、打电话、读取联系人、获取地理位置等隐私信息;越狱攻击,获取设备最高权限,扫描文件系统,获取系统敏感数据;监听Root攻击,监听用户键盘输入,获取输入内容。
[0003]目前针对移动终端密钥保护方式主要有如下几种:第一,ARMTrustZone技术,从系统总线、处理器等方面的设计将嵌入式设备划分为两个独立的运行环境,Normal Word负责Android OS运行,Secure word负责处理敏感进程与数据。因Secure word中的密码获取困难,所以使用ARM TrustZone技术能够增强密码加密后的密钥库文件的安全性。在ARMTrustZone技术中,密钥库文件命名为UID_USRPKEY_KeyAlias,UID是系统分配给应用的用户账号,UID_USRPKEY是固定字符串,KeyAlias是密钥别名。在移动终端被获取最高权限后,恶意软件可以拷贝上述密钥库文件并进行重命名,将上述UID变更成恶意软件自身UIDJb时调用Android KeyStore Service进程读取Secure word密码解密密钥库文件获得密钥。ARM TrustZone技术的缺陷是移动终端被越狱后密钥可以安装在同一个终端上的其他应用获取。
[0004]第二,移动应用私有空间方式。移动操作系统为每一个应用分配私有存储空间,将用于加密密钥库的密码直接存储在上述私有空间目录下,因其他非授权应用无法访问此应用的私有空间数据,所以增强使用上述密码加密后的密钥库文件的安全性。在私有目录下,密钥库密码存储在文件系统的文件或数据库,在移动终端被获取最高权限后,恶意软件可以针对文件系统进行全面扫描获取到密钥库密码。移动应用私有空间存储密钥库的缺陷是密钥可以被同一个终端上的应用获取,也可以被拷贝到其他终端上使用。
[0005]第三,用户手动输入的方式。密钥库密码不存储在移动终端上,移动应用启动时,要求用户输入密码,使用此密码加密密钥库文件,移动应用进程关闭后,清除内存中密码数据。因恶意软件无法直接通过扫描文件系统获取到密码,所以增强使用上述密码加密后的密钥库文件的安全性。此方法的缺陷是用户输入的密码安全强度低,很容易被暴力破解。在移动终端被获取最高权限的情况下,键盘输入内容可以被监听。这样,密钥可以被同一个终端上的应用获取,也可以被拷贝到其他终端上使用。

【发明内容】

[0006]本申请的目的是提供一种用于生成密钥及对应解密的方法与设备,以解决用户设备端的密钥安全问题。
[0007]根据本申请的一个方面,提供了一种在用户设备端生成密钥的方法,包括:
[0008]基于用户设备的唯一标识符迭代生成加密密码;
[0009]获取当前应用的密钥信息,并利用所述加密密码对所述密钥信息进行加密。
[0010]其中,所述基于用户设备的唯一标识符迭代生成加密密码包括:以所述用户设备的唯一标识符为参数,迭代进行加盐散列计算,以生成所述加密密码。
[0011]进一步地,所述方法还包括:将所加密的所述密钥信息存储至所述当前应用的私有空间目录下。
[0012]进一步地,所述方法还包括:在生成所述当前应用的安装包时,对所述安装包进行混淆处理。
[0013]根据本申请的一个方面,提供了一种在用户设备端解密的方法,包括:
[0014]基于用户设备的唯一标识符,进行迭代运算以获取加密密码;
[0015]获取当前应用的加密的密钥信息,并利用所述加密密码对所述加密的密钥信息进行解密;
[0016]利用所解密的密钥信息解密所述当前应用所存储的相关数据。
[0017]进一步地,所述方法还包括:关闭所述当前应用时,清除内存中的所述加密密码的数据信息。
[0018]根据本申请的另一方面,还提供了一种用于生成密钥的用户设备,包括:
[0019]生成密码装置,用于基于用户设备的唯一标识符迭代生成加密密码;
[0020]加密装置,用于获取当前应用的密钥信息,并利用所述加密密码对所述密钥信息进行加密。
[0021]其中,所述生成密码装置包括:第一计算单元,用于以所述用户设备的唯一标识符为参数,迭代进行加盐散列计算,以生成所述加密密码。
[0022]进一步地,所述用户设备还包括:存储装置,用于将所加密的所述密钥信息存储至所述当前应用的私有空间目录下。
[0023]进一步地,所述用户设备还包括:处理装置,用于在生成所述当前应用的安装包时,对所述安装包进行混淆处理。
[0024]根据本申请的另一方面,还提供了一种用于解密的用户设备,包括:
[0025]获取装置,用于基于用户设备的唯一标识符,进行迭代运算以获取加密密码;
[0026]第一解密装置,用于获取当前应用的加密的密钥信息,并利用所述加密密码对所述加密的密钥信息进行解密;
[0027]第二解密装置,用于利用所解密的密钥信息解密所述当前应用所存储的相关数据。
[0028]进一步地,所述用户设备还包括:清除装置,用于关闭所述当前应用时,清除内存中的所述加密密码的数据信息。
[0029]与现有技术相比,根据本申请实施例的方法和设备,通过基于用户设备的唯一标识符迭代生成加密密码;接着,获取当前应用的密钥信息,并利用所述加密密码对所述密钥信息进行加密。进一步地,将所加密的所述密钥信息存储至所述当前应用的私有空间目录下。从而其他非授权应用无法获取密钥,达到密钥是安全的目的;进一步地使得密钥仅能被一个特定应用访问,不能被其他应用或终端访问,满足应用绑定与设备绑定的要求。当用户设备启动当前应用时,基于用户设备的唯一标识符,进行迭代运算以获取加密密码;接着,获取当前应用的加密的密钥信息,并利用所述加密密码对所述加密的密钥信息进行解密;最后,利用所解密的密钥信息解密所述当前应用所存储的相关数据。进一步地,关闭所述当前应用时,清除内存中的所述加密密码的数据信息。从而实现密钥仅在用户使用应用时才能被使用,满足用户赞同的密钥安全需求。
【附图说明】
[0030]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0031]图1示出根据本申请一个方面的一种用于生成密钥的用户设备的结构示意图;
[0032]图2示出根据本申请一个方面的一个优选实施例的密钥生成过程的示意图;
[0033]图3示出根据本申请又一个方面的一种用于解密的用户设备的结构示意图;
[0034]图4示出根据本申请又一个方面的一个优选实施例的解密过程的示意图;
[0035]图5示出根据本申请再一个方面的一种在用户设备端生成密钥的方法流程示意图;
[0036]图6示出根据本申请再一个方面的一种在用户设备端解密的方法流程示意图。
[0037]附图中相同或相似的附图标记代表相同或相似的部件。
【具体实施方式】
[0038]下面结合附图对本申请作进一步详细描述。
[0039]图1示出根据本申请一个方面的一种用于生成密钥的用户设备的结构示意图。所述用户设备I包括生成密码装置11和加密装置12,其中,生成密码装置11基于用户设备的唯一标识符迭代生成加密密码;加密装置12获取当前应用的密钥信息,并利用所述加密密码对所述密钥信息进行加密。
[0040]在此,所述用户设备I包括但不限于任何一种可与用户通过触摸板进行人机交互的移动电子产品,例如智能手机、PDA等,所述移动电子产品可以采用任意操作系统,如android操作系统、1S操作系统等。优选地,用户设备I还可以是运行于所述用户设备、或用户设备与网络设备、触摸终端或网络设备与触摸终端通过网络相集成所构成的设备上的脚本程序。当然,本领域技术人员应能理解上述用户设备I仅为举例,其他现有的或今后可能出现的用户设备I如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。
[0041]上述各装置之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各装置分别实时地或者按照设定的或实时调整的工作模式要求,例如所述生成密码装置11持续基于用户设备的唯一标识符迭代生成加密密码;加密装置12持续获取当前应用的密钥信息,并利用所述加密密码对所述密钥信息进行加密,直至所述用户设备完成生成密钥工作或停止工作。
[0042]本申请一实施例所述用户设备I用于生成密钥,使得密钥仅能被一个特定应用
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1