基于密钥的业务安全性验证方法及装置的制造方法

文档序号:9730209阅读:252来源:国知局
基于密钥的业务安全性验证方法及装置的制造方法
【技术领域】
[0001]本发明涉及互联网领域,特别涉及一种基于密钥的业务安全性验证方法及装置。
【背景技术】
[0002]随着互联网技术的快速发展,出现了各种类型的应用程序,这些应用程序可以安装在终端上来运行。而在终端运行这些应用程序时,可以通过这些应用程序完成一些业务,比如,聊天业务、支付业务等等。对于一些需要保证安全性的业务,比如支付业务,当通过应用程序完成这些业务时,需要验证该业务的安全性。
[0003]目前,在终端出厂之前,终端厂商可以在该终端eMMC(Embedded Multi MediaCard,嵌入式多媒体卡)的RPMB(Replay Protected Memory Block,回访保护内存块)中内置设备私钥,该设备私钥包含于设备根密钥中,且该设备根密钥用于验证该终端的安全性。当该终端验证业务的安全性时,可以从该终端e匪C的RPMB中获取该设备私钥,并基于该设备私钥验证该业务的安全性。
[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]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0032]图1是本发明实施例提供的一种终端的系统架构图;
[0033]图2是本发明实施例提供的一种基于密钥的业务安全性验证方法流程图;
[0034]图3是本发明实施例提供的另一种基于密钥的业务安全性验证方法流程图;
[0035]图4是本发明实施例提供的再一种基于密钥的业务安全性验证方法流程图;
[0036]图5是本发明实施例提供的又一种基于密钥的业务安全性验证方法流程图;
[0037]图6是本发明实施例提供的一种生成应用密钥的方法流程图;
[0038]图7是本发明实施例提供的一种应用公钥上传方法的流程图;
[0039]图8是本发明实施例提供的另一种应用公钥上传方法的流程图;
[0040]图9是本发明实施例提供的一种生成业务密钥的方法流程图;
[0041 ]图10是本发明实施例提供的一种业务公钥上传方法的流程图;
[0042]图11是本发明实施例提供的一种基于密钥的业务安全性验证装置结构示意图;
[0043]图12是本发明实施例提供的另一种基于密钥的业务安全性验证装置结构示意图;
[0044]图13是本发明实施例提供的再一种基于密钥的业务安全性验证装置结构示意图;
[0045]图14是本发明实施例提供的又一种基于密钥的业务安全性验证装置结构示意图;
[0046]图15是本发明实施例提供的一种终端的结构示意图;
[0047]图16是本发明实施例提供的一种服务器的结构示意图。
【具体实施方式】
[0048]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0049]在对本发明实施例进行详细地解释说明之前,先对本发明实施例的实施环境进行介绍。如图1所示,终端包括应用程序层、操作系统层和硬件层,应用程序层位于操作系统层之上,操作系统层位于硬件层之上。该应用程序层用于指示该终端安装的应用程序,操作系统层用于指示该终端所安装的操作系统,该操作系统层可以包括操作系统框架,该操作系统框架可以包括KeyStore API(KeyStore Applicat1n Programming Interface;密钥存储应用程序编程接口)和KeyStoreDaemon(密钥存储交互系统服务),硬件层用于指示该终端的硬件结构,该硬件层可以包括eMMC和TEE (Trusted Execut1n Environment,可信执行环境)。其中,eMMC是该终端通过嵌入式方式来存储数据的芯片,该eMMC包括RPMB和可信安全存储空间,该RPMB是eMMC中的一块特殊存储区域,且存储在RPMB中的数据存在一定的安全性,并且存储在RPMB和可信安全存储空间中的数据都需要进行多次加密,而存储在RPMB中的数据加密次数大于存储在可信安全存储空间中的数据加密次数,因此,可信安全存储空间的访问速度大于RPMB的访问速度。TEE是指独立于该终端操作系统的一个执行环境,专门用于提供安全服务,且TEE有独立的软件和硬件资源,不会因为该终端操作系统对外部的授权而受到影响。另外,TEE可以包括TA(Trusted 4口口1;[031:;[011,可信应用程序),14为运行在TEE中的应用程序,且ΤΑ的逻辑行为和存储行为是安全的,ΤΑ中的KeyMaster TA(密钥管理应用程序)用于负责TEE中密钥的管理和生成。
[0050]图2是本发明实施例提供的一种基于密钥的业务安全性验证方法的流程图,该方法用于终端中,参见图2,该方法包括:
[0051]步骤201:接收当前提供业务的应用程序发送的密钥获取请求,该密钥获取请求中携带应用程序标识。
[0052]步骤202:基于该应用程序标识,获取该应用程序的应用私钥,该应用私钥是通过内置的设备私钥生成,该设备私钥包含于设备根密钥中。
[0053]步骤203:基于该应用私钥验证该业务的安全性。
[0054]在本发明实施例中,由于应用私钥是通过终端内置的设备私钥生成,在该设备私钥存在安全性的基础上,确保了该应用私钥的安全性,因此,基于该应用私钥验证该业务的安全性,可以提高该业务的安全性。
[0055]可选地,基于该应用程序标识,获取该应用程序的应用私钥之前,还包括:
[0056]当接收到该应用程序发送的应用密钥生成请求时,获取设备私钥,该应用密钥生成请求中携带应用程序标识;
[0057]基于该设备私钥,生成该应用程序的应用密钥,该应用密钥包括应用私钥和应用公钥;
[0058]基于该应用程序标识存储生成的应用私钥,将生成的应用公钥上传到应用服务器中。
[0059]可选地,基于该设备私钥,生成该应用程序的应用密钥,包括:
[0060]基于该设备私钥,按照第一指定算法,生成该应用程序的应用密钥。
[0061]可选地,基于该应用程序标识存储生成的应用私钥,包括:
[0062]基于该应用程序标识,判断是否已存储该应用程序的应用私钥;
[0063]如果已存储,则将已存储的应用私钥替换为生成的应用私钥。
[0064]可选地,将生成的应用公钥上传到应用服务器中,包括:
[0065]基于该应用公钥,生成该应用程序的原串;
[0066]基于该设备私钥,对该应用程序原串进行签名,得到第一签名信息;
[0067]将该应用程序的原串和该第一签名信息发送给该应用程序,使该应用程序将该应用公钥上传到应用服务器中。
[0068]可选地,基于该应用私钥验证该业务的安全性,包括:
[0069]当该密钥获取请求中还携带业务标识时,基于该应用程序标识和该业务标识,获取该业务的业务私钥,该业务私钥是通过该应用私钥生成;
[0070]将该业务私钥发送给该应用程序,以通过该业务私钥验证该业务的安全性。
[0071]可选地,基于该应用程序标识和该业务标识,获取该业务的业务私钥之前,还包括:
[0072]当该密钥获取请求中还携带生物特征信息时,判断是否已存储该生物特征信息,该生物特征信息为该应用程序基于该业务检测得到;
[0073]当已存储该生物特征信息时,执行基于该应用程序标识和该业务标识,获取该业务的业务私钥的步骤。
[0074]可选地,基于该应用程序标识和该业务标识,获取该业务的业务私钥之前,还包括:
[0075]基于该应用私钥,生成该业务的业务密钥,该业务密钥包括业务私钥和业务公钥;
[0076]基于该应用程序标识和该业务标识存储生成的业务私钥,将生成的业务公钥上传到应用服务器中。
[0077]可选地,基于该应用私钥,生成该业务的业务密钥,包括:
[0078]基于该应用私钥,按照第二指定算法,生成该业务的业务密钥。
[0079]可选地,将生成的业务公钥上传到应用服务器中,包括:
[0080]基于该业务公钥,生成该业务的原串;
[0081 ]基于该应用私钥,对该业务的原串进行签名,得到第二签名信息;
[0082]将该业务的原串和该第二签名信息发送给该应用程序,使该应用程序将该业务公钥上传到该应用服务器中。
[0083]可选地,该应用私钥和该业务私钥存储在第一安全存储空间中,第一安全存储空间的访问速度大于第二存储空间的访问速度,第二安全存储空间为存储该设备私钥的存储空间。
[0084]可选地,第一安全存储空间为可信安全存储空间,第二安全存储空间为RPMB,可信安全存储空间和RPMB均包含于eMMC中。
[0085]上述所有可选技术方案,均可按照任意结合形成本发明的可选实施例,本发明实施例对此不再--赘述。
[0086]图3是本发明实施例提供的一种基于密钥的业务安全性验证方法的流程图,该方法用于应用程序中,参见图3,该方法包括:
[0087]步骤301:当检测到对当前所提供业务进行验证的生物特征信息时,向终端发送密钥获取请求,该密钥获取请求中携带应用程序标识。
[0088]步骤302:当接收到终端基于应用程序标识发送的业务私钥时,基于该业务私钥,对该生物特征信息进行签名,得到第三签名信息,该业务私钥是该终端基于应用私钥生成,该应用私钥是该终端基于内置的设备私钥生成,该应用私钥为应用程序的私钥,该设备私钥包含于设备根密钥中。
[0089]步骤303:向应用服务器发送业务验证请求,该业务验证请求中携带该第三签名信息和终端标识,使该应用服务器验证该业务的安全性。
[0090]在本发明实施例中,由于应用私钥是通过终端内置的设备私钥生成,在该设备私钥存在安全性的基础上,确保了该应用私钥的安全性,而业务私钥又是通过该应用私钥生成,因此,通过该业务私钥验证该业务的安全性,可以提高该业务的安全性。
[0091 ]可选地,该密钥获取请求中还携带该业务标识和该生物特征信息中的至少一个。
[0092]可选地,向终端发送密钥获取请求之前,还包括:
[0093]向该终端发送应用密钥生成请求,该应用密钥生成请求中携带该应用程序标识,使该终端基于该设备私钥生成应用公钥,该应用公钥为该应用程序的公钥;
[0094]当接收到该终端发送的该应用程序的原串和第一签名信息时,向该应用服务器发送应用密钥上传请求,该应用密钥上传请求中携带该应用程序的原串、该第一签名信息和该终端标识,该应用程序的原串是该终端基于该应用公钥生成,该第一签名信息是该终端基于该设备私钥对该应用程序的原串进行签名得到。
[0095]可选地,向终端发送业务密钥获取请求之前,还包括:
[0096]向该终端发送业务密钥生成请求,该业务密钥生成请求中携带该应用程序标识,使该终端基于该应用私钥生成业务公钥;
[0097]当接收到该终端发送的该业务的原串和第二签名信息时,向该应用服务器发送业务密钥上传请求,该业务密钥上传请求中携带该业务的原串、该第二签名信息和该终端标识,该业务的原串是该终端基于该业务公钥生成,该第二签名信息是该终端基于该应用私钥对该业务的原串进行签名得到。
[0098]上述所有可选技术方案,均可按照任意结合形成本发明的可选实施例,本发明实施例对此不再--赘述。
[0099]图4是本发明实施例提供的一种基于密钥的业务安全性验证方法的流程图,该方法用于应用服务器中,参见图4,该方法包括:
[0100]步骤401:接收应用程序发送的业务验证请求,该业务验证请求中携带第三签名信息和终端标识,该第三签名信息是该应用程序基于当前所提供业务的业务私钥对检测到的生物特征信息进行签名得到,该业务私钥是终端基于应用私钥生成,该应用私钥是该终端基于内置的设备私钥生成,该应用私钥为该应用程序的私钥,该设备私钥包含于设备根密钥中。
[0101 ]步骤402:基于该终端标识,获取该业务的业务公钥。
[0102]步骤403:基于该业务公钥和该第三签名信息,对该业务的安全性进行验证。
[0103]在本发明实施例中,由于应用私钥是通过终端内置的设备私钥生成,在该设备私钥存在安全性的基础上,确保了该应用私钥的安全性,而业务私钥又是通过该应用私钥生成,因此,通过该业务私钥验证该业务的安全性,可以提高该业务的安全性。
[0104]可选地,接收应用程序发送的业务验证请求之前,还包括:
[0105]接收该应用程序发送的应用密钥上传请求,该应用密钥上传请求中携带该应用程序的原串、第一签名信息和该终端标识;
[0106]向根密钥服务器发送密钥验证请求,该密钥验证请求中携带该应用程序的原串、该第一签名信息和该终端标识,使该根密钥服务器对该应用程序的原串进行验证;
[0107]当接收到该根密钥服务器发送的验证通过消息时,从该应用程序的原串中获取应用公钥,该应用公钥为该应用程序的公钥;
[0108]基于该终端标识,存储该应用公钥。
[0109]可选地,接收应用程序发送的业务验证请求之前,还包括:
[0110]接收该应用程序发送的应用密钥上传请求,该应用密钥上传请求中携带该应用程序的原串、第一签名信息和该终端标识;
[0111]向根密钥服务器发送设备密钥获取请求,该设备密钥获取请求中携带该终端标识,使该根密钥服务器返回设备公钥;
[0112]当接收到该根密钥服务器发送的该设备公钥时,基于该设备公钥和该第一签名信息,对该应用程序的原串进行验证;
[0113]当该应用程序的原串验证通过时,从该应用程序的原串中获取应用公钥,该应用公钥为该应用程序的公钥;
[0114]基于该终端标识,存储该应用公钥。
[0115]可选地,基于该设备公钥和该第一签名信息,对该应用程序的原串进行验证,包括:
[0116]基于该设备公钥,对该第一签名信息进行解签名,得到第一解签名信息;
[0117]判断该第一解签名信息是否与该应用程序的原串相同;
[0118]当该第一解签名信息与该应用程序的原串相同时,确定该应用程序的原串验证通过,否则,确定该应用程序的原串验证不通过。
[0119]可选地,接收应用程序发送的业务验证请求之前,还包括:
[0120]接收该应用程序发送的业务密钥上传请求,该业务密钥上传请求中携带该业务的原串、第二签名信息和该终端标识;
[0121 ]基于该终端标识,获取应用公钥;
[0122]基于该应用公钥和该第二签名信息,对
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1