一种身份识别设备的安全认证方法

文档序号:7807787阅读:511来源:国知局
一种身份识别设备的安全认证方法
【专利摘要】本发明公开了一种身份识别设备的安全认证方法,该方法包括:虚拟机VM层中的通讯模块将接收到的外部设备发送的身份识别信息经由运行环境RE层发往COS层;所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作,或者,通过显示屏显示该身份识别信息携带的验证提示信息,并在接收到用户返回的确认指令后,所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作;所述签名结果经由RE层再通过VM层中的通讯模块传输至外部设备进行签名结果的验证,从而实现安全认证。通过采用本发明公开的方法,降低了身份识别设备的开发成本,并提高了开发效率。
【专利说明】一种身份识别设备的安全认证方法
【技术领域】
[0001]本发明涉及身份识别以及安全认证【技术领域】,尤其涉及一种身份识别设备的安全认证方法。
【背景技术】
[0002]随着互联网技术以及电子商务的发展,网上银行作为非常方便快捷的支付手段之一,受到了越来越多的用户的认可,成为了最受欢迎的资金管理方式之一。然而,网上操作资金存在一定的安全风险,主要风险来自于无法对操作人员的身份进行有效并且安全的识别。
[0003]针对上述的安全问题,目前普遍采用外置身份识别设备(USBKey)进行安全认证。而运行在设备当中的安全认证逻辑以及支持逻辑运行的操作系统全部是由Native(本地函数)方式实现的。正是由于这样的开发结构,使得此技术方案存在如下几点不可避免的缺点:
[0004]I)市场适应性不强。目前该类产品种类繁多,而且行业内没有形成统一的标准规范,各个商业银行之间也存在着一定的差异。在这种行业背景下,如果采用完全固化到芯片中的Native平台则很难具备应有的灵活性。无法快速的适应多变的市场需求。
[0005]2)快速进入市场能力不强。传统应用的Native平台需要进行COS的掩模,而且这一过程通常需要2-3个月的周期,这无疑延缓了产品上市的时间。
[0006]3)开发过程繁杂:如果采用Native平台开发Key产品,需要从底层一点一滴做起,包括通讯协议、加密算法、内存管理、数据存储等,任何环节出现错误都会导致整个项目的崩溃。
[0007]4)项目初期整体成本高:一般来说NativeKey的成本优势只有在大规模生产的时候才能够体现出来,因为芯片厂商都会收取一笔不菲的掩模费。对于初期公司还不具有很大市场份额的时候以及行业地位时,Native平台的成本优势并不突出。

【发明内容】

[0008]本发明的目的是提供一种身份识别设备的安全认证方法,降低了身份识别设备的开发成本,并提高了开发效率。
[0009]本发明的目的是通过以下技术方案实现的:
[0010]一种身份识别设备的安全认证方法,该方法包括:
[0011]虚拟机VM层中的通讯模块将接收到的外部设备发送的身份识别信息经由运行环境RE层发往卡片操作系统COS层;
[0012]所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作,或者,通过显示屏显示该身份识别信息携带的验证提示信息,并在接收到用户返回的确认指令后,所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作;[0013]所述签名结果经由RE层再通过VM层中的通讯模块传输至外部设备进行签名结果的验证,从而实现安全认证。
[0014]所述经由RE层发往COS层包括:
[0015]所述RE层接收到所述VM层发送的身份识别信息后,选择包含身份识别功能且与所述身份识别信息的应用,或者,将所述包含身份识别功能且与所述身份识别信息的应用设置为默认应用后直接选择;
[0016]所述RE层记录该应用所需要的资源进行分配并注册管理,再发送至COS层。
[0017]所述RE层具有防火墙机制,用于控制和管理多个应用自身的资源和上下文环境。
[0018]所述签名结果经由RE层再通过VM层中的通讯模块传输至外部设备进行签名结果的验证,从而实现安全认证包括:
[0019]所述外部设备进行签名结果的验证,若验证通过,则通过安全认证;否则,安全认证失败。
[0020]由上述本发明提供的技术方案可以看出,该身份识别设备基于Java平台实现,其整体架构划分为虚拟机)层,RE(运行环境)层及C0S(卡片操作系统)层,通过这三层的接口进行交换资源来进行安全认证;相对于目前方案而言,I)降低开发成本,并提高开发效率。使用Java平台进行开发的话,则只需要关注应用本身,只需要梳理清楚身份识别流程就可以快速的开发出符合客户需要的产品。而关于算法、通讯等等功能模块已经在下面的虚拟机层中单独实现,这必然会简化开发的过程,还可以实现此类公共模块功能的复用。另外,因为只需要把Java平台虚拟机掩膜芯片中,JavaKey COS层可以自由下载安装和删除;所以,当需求发生变化时,只需要修改JavaKey COS层并重新编译下载安装即可,而不需要重新掩膜。2)市场适应性强,因为管理身份识别逻辑的COS层以及其附属的文件系统是以Java平台应用的形式存在于整体系统架构的最上层,所以COS层除了具有控制业务逻辑的能力之外,还具有Java卡应用的特点,可以灵活的下载与删除。所以,对于变化的市场需要,可以快速的做出反应,成为满足需求的产品。3)快速进入市场能力强。Java平台在应用程序开发完毕后,就可以下载到芯片中,完成对外销售,相当于节省掩膜的时间,这对于瞬息万变的市场而言,时间是如此的弥足珍贵。
【专利附图】

【附图说明】
[0021]为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
[0022]图1为本发明实施例一提供的一种身份识别设备的安全认证方法的流程图;
[0023]图2为本发明实施例一提供的一种基于Java平台的身份识别设备的整体架构示意图;
[0024]图3为本发明实施例一提供的一种身份识别设备实现多应用管理的示意图;
[0025]图4为本发明实施例一提供的一种身份识别设备的多接口结构的示意图;
[0026]图5为本发明实施例一提供的一种基于Java平台的身份识别设备的安全认证方法的流程图;[0027]图6为本发明实施例一提供的一种基于Java平台的身份识别设备的实现支付功能或者存取款操作的流程图。
【具体实施方式】
[0028]下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
[0029]实施例一
[0030]图1为本发明实施例一提供的一种身份识别设备的安全认证方法的流程图。如图1所示,该方法主要包括如下步骤:
[0031]步骤11、VM层中的通讯模块将接收到的外部设备发送的身份识别信息经由RE层发往COS层。
[0032]具体来说,所述RE层接收到所述VM层发送的身份识别信息后,选择包含身份识别功能且与所述身份识别信息的应用,或者,将所述包含身份识别功能且与所述身份识别信息的应用设置为默认应用后直接选择;所述RE层记录该应用所需要的资源进行分配并注册管理,再发送至COS层。
[0033]同时,所述RE层具有防火墙机制,用于控制和管理多个应用自身的资源和上下文环境。
[0034]步骤12、所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作,或者,通过显示屏显示该身份识别信息携带的验证提示信息,并在接收到用户返回的确认指令后,所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作。
[0035]步骤13、所述签名结果经由RE层再通过VM层中的通讯模块传输至外部设备进行签名结果的验证,从而实现安全认证。
[0036]具体来说,所述外部设备进行签名结果的验证,若验证通过,则通过安全认证;否贝U,安全认证失败。
[0037]为了便于理解本发明,下面结合附图2-6对本发明做进一步说明。
[0038]本发明实施例中,身份识别设备基于Java平台实现,主要划分为三层。如图2所不,最低一层为Java卡虚拟机(Java Card Virtual Machine, VM层),第二层为Java卡的运行时环境(Java Card Runtime Environment, RE层),第三层为具有身份识别逻辑的COS层以及支持其功能的文件系统。且此三层通过接口进行交换资源,所以具有松散的机构特性。
[0039]其中,VM层,用于向上层提供空间管理、安全算法支持、通讯服务、安全控制、应用管理等服务接口。RE层,用于将VM层提供的功能封装成为Java能够调用的方法接口,完成对上层JavaKey COS层和下层VM的分离。同时,为JavaKey COS层的运行提供运行资源。COS层,具备独立的系统指令集以及文件系统(FileSystem);同时,还具备安全管理机制;该机制包括对密钥的管理、敏感数据的安全管理。通过指令可以在该层之上创建拥有身份识别逻辑的应用。
[0040]进一步的,本发明实施例中,身份识别设备还可实现多应用管理。如图3所示,RE层具有防火墙(FireWall)机制,用来控制和管理应用自己的资源和上下文环境,这样的设计可以满足一卡多用的需求。例如,将PBOC(中国人民银行)应用和身份识别应用一起下载到设备中,完成具有支付功能的身份识别设备。
[0041]本发明实施例中,身份识别设备可以通过多种接口与外部设备进行通信,例如,蓝牙通讯接口、传统USB通讯接口、NFC (近场通讯)接口等。如图4所示,可通过图4所示的至少3种接口与外部设备通讯。通信模块与安全处理器为所述身份识别设备的芯片部分(其中包含安全算法协处理器);设置显示屏与按键的目的在于增强操作的安全性。
[0042]基于所述身份识别设备进行安全认证的方法,其流程如图5所示,主要包括:
[0043]I)身份识别信息携带着验证信息通过VM层的通信模块进入到RE层。
[0044]2)进入RE层后,选择应用为默认应用;也可直接将具有身份识别功能的应用安装成为默认应用。
[0045]3)选择完毕应用后,RE记录为该应用所需要的资源进行分配并注册管理,之后由通信模块接收的指令都会被转发到该应用。
[0046]4)应用的指令分发系统会甄别出指令的功能将其分发到各个功能子模块。若指令具有安全指令属性的话,还要检查此时的安全状态,以此来判断是否要对该指令进行安全处理。即对指令的安全报文进行解析。处理完的APDU(应用协议数据单元)指令将以明文形式继续下发。
[0047]5)本步骤可以有两种情况:a.如果信息是身份识别信息1,则由将在显示屏上显示提示信息,如卡号之类的提示等信息。b.如果信息是身份识别信息2,则需要用户进行按键确认操作,如目前使用的Ukey操作;此后,系统将会轮询等待获得按键状态信息;若用户点击取消按键,则退出整个认证过程返回;若用户点击确定按键,则进行身份认证过程的安全验证过程。
[0048]6)进入安全验证之后,身份认证应用会获得存储在安全芯片中的密钥或数字证书同时,将要操作的数据传递到芯片中的安全算法协处理器。即完成对身份认证计算的准备过程。
[0049]7)准备结束。此时,结合应用安装支出为其分配的软件资源,借助协处理器的计算辅助,完成对身份认证的计算过程。将计算结果通过通讯模块反馈到外部设备。
[0050]示例性的,可基于上述身份识别设备来实现支付功能(刷卡消费)或者在ATM机上进行相应的存取款操作。所述身份识别设备中的芯片中保存有安全操作需要的算法密钥以及数字证书。
[0051]具体步骤如6所示,包括:
[0052]I)通过VM层的通信模块与外部设备建立通信连接。
[0053]2)通过VM层的通信模块接收外部设备发送的身份识别信息,并经由RE层传输至COS 层。
[0054]3)所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作,或者,通过显示屏显示该身份识别信息携带的验证提示信息,并在接收到用户返回的确认指令后,所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作。
[0055]4)所述签名结果经由RE层再通过VM层中的通讯模块传输至外部设备进行签名结果的验证;如验证通过,则可完成支付功能或存取款操作;否则,验证失败,终止交易。
[0056]另一方面,所述身份识别设备中的芯片可以通过外接设备将身份识别应用下载到芯片中,同时可以下载银行专属应用来实现一卡多用。通过通讯接口可以实现传统USBKey的功能,或者通过NFC、蓝牙,完成移动支付的身份识别功能。其主要实现流程与上述步骤I)-4)类似,仅增加了 “选择身份识别应用”这一步骤,故不再赘述。
[0057]本发明实施例的身份识别设备基于Java平台实现,其整体架构划分为VM(虚拟机)层,RE(运行环境)层及COS层,通过这三层的接口进行交换资源来进行安全认证;相对于目前方案而言,I)降低开发成本,并提高开发效率。使用Java平台进行开发的话,则只需要关注应用本身,只需要梳理清楚身份识别流程就可以快速的开发出符合客户需要的产品。而关于算法、通讯等等功能模块已经在下面的虚拟机层中单独实现,这必然会简化开发的过程,还可以实现此类公共模块功能的复用。另外,因为只需要把Java平台虚拟机掩膜芯片中,JavaKeyCOS可以自由下载安装和删除;所以,当需求发生变化时,只需要修改JavaKey COS并重新编译下载安装即可,而不需要重新掩膜。2)市场适应性强,因为管理身份识别逻辑的COS层以及其附属的文件系统是以Java平台应用的形式存在于整体系统架构的最上层,所以COS层除了具有控制业务逻辑的能力之外,还具有Java卡应用的特点,可以灵活的下载与删除。所以,对于变化的市场需要,可以快速的做出反应,成为满足需求的产品。3)快速进入市场能力强。Java平台在应用程序开发完毕后,就可以下载到芯片中,完成对外销售,相当于节省掩膜的时间,这对于瞬息万变的市场而言,时间是如此的弥足珍

贝ο
[0058]以上所述,仅为本发明较佳的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本【技术领域】的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
【权利要求】
1.一种身份识别设备的安全认证方法,其特征在于,该方法包括: 虚拟机VM层中的通讯模块将接收到的外部设备发送的身份识别信息经由运行环境RE层发往卡片操作系统COS层; 所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作,或者,通过显示屏显示该身份识别信息携带的验证提示信息,并在接收到用户返回的确认指令后,所述COS层调用预先下载的算法密钥或数字证书对所述身份识别信息进行签名操作; 所述签名结果经由RE层再通过VM层中的通讯模块传输至外部设备进行签名结果的验证,从而实现安全认证。
2.根据权利要求1所述的安全认证方法,其特征在于,所述经由RE层发往COS层包括: 所述RE层接收到所述VM层发送的身份识别信息后,选择包含身份识别功能且与所述身份识别信息的应用,或者,将所述包含身份识别功能且与所述身份识别信息的应用设置为默认应用后直接选择; 所述RE层记录该应用所需要的资源进行分配并注册管理,再发送至COS层。
3.根据权利要求1或2所述的安全认证方法,其特征在于, 所述RE层具有防火墙机制,用于控制和管理多个应用自身的资源和上下文环境。
4.根据权利要求1所述的安全认证方法,其特征在于,所述签名结果经由RE层再通过VM层中的通讯模块传输至外部设备进行签名结果的验证,从而实现安全认证包括: 所述外部设备进行签名结果的验证,若验证通过,则通过安全认证;否则,安全认证失败。
【文档编号】H04L29/06GK104038348SQ201410307395
【公开日】2014年9月10日 申请日期:2014年6月30日 优先权日:2014年6月30日
【发明者】李恺鑫 申请人:北京金玉衡科技有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1