CN103368735A - 应用接入智能卡的认证方法、装置和系统 - Google Patents

应用接入智能卡的认证方法、装置和系统 Download PDF

Info

Publication number
CN103368735A
CN103368735A CN2012100999191A CN201210099919A CN103368735A CN 103368735 A CN103368735 A CN 103368735A CN 2012100999191 A CN2012100999191 A CN 2012100999191A CN 201210099919 A CN201210099919 A CN 201210099919A CN 103368735 A CN103368735 A CN 103368735A
Authority
CN
China
Prior art keywords
smart card
application
card
authentication
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012100999191A
Other languages
English (en)
Other versions
CN103368735B (zh
Inventor
曹岚健
余万涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201210099919.1A priority Critical patent/CN103368735B/zh
Priority to PCT/CN2012/075684 priority patent/WO2013149426A1/zh
Publication of CN103368735A publication Critical patent/CN103368735A/zh
Application granted granted Critical
Publication of CN103368735B publication Critical patent/CN103368735B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种应用接入智能卡的认证方法、装置和系统,其中,该方法包括:智能卡接收应用发送的接入请求,将接入请求的认证信息发送给应用;智能卡接收认证信息的认证响应,其中,应用从智能卡的卡发行商服务器获取认证响应并发送至智能卡;当智能卡对认证响应验证通过时,允许应用接入智能卡。本发明解决了现有技术中没有一种可以通过智能卡完成应用接入的鉴权认证的方式,使得智能卡上的数据或功能不能被终端的应用调用,业务的安全性得不到保证的技术问题,实现了智能卡对请求接入智能卡的应用进行接入控制,使得终端应用可以将业务认证相关数据部署到智能卡上,提高了业务的安全性。

Description

应用接入智能卡的认证方法、装置和系统
技术领域
本发明涉及通信领域,具体而言,涉及一种应用接入智能卡的认证方法、装置和系统。
背景技术
随着网络的升级,移动终端应用和移动业务也不断增多,使得移动用户的生活得到了极大的便利。这些移动业务的普及使得对用户的安全认证和对信息的安全保护越来越重要,用户也越来越关心自身信息的安全问题。移动支付和企业信息化系统等尤其需要用户身份的可靠验证和信息的安全保护以确保交易和信息的安全。
智能卡是抗破坏性高的安全设备,并且便于携带,同时还可基于密码学达到很高的安全水平。因此,将移动应用认证相关的数据存储在智能卡上,并利用智能卡完成鉴权认证是比较安全、可靠和方便的一种安全措施,同时也可以在智能卡上实现生成密钥对、完成数字签名等功能。但是由于终端没有开放应用直接访问智能卡的接口,因此导致了智能卡上的数据或功能不能被终端应用调用。
由于目前还没有一种可以通过智能卡完成应用接入的鉴权认证的方式,使得智能卡上的数据或功能不能被终端的应用调用,而导致智能卡资源浪费。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种应用接入智能卡的认证方法、装置和系统,以至少解决现有技术中没有一种可以通过智能卡完成应用接入的鉴权认证的方式,使得智能卡上的数据或功能不能被终端的应用调用,业务的安全性得不到保证的技术问题。
根据本发明实施例的一个方面,提供了一种应用接入智能卡的认证方法,包括:智能卡接收应用发送的接入请求,将接入请求的认证信息发送给应用;智能卡接收认证信息的认证响应,其中,应用从智能卡的卡发行商服务器获取认证响应并发送至智能卡;当智能卡对认证响应验证通过时,允许应用接入到智能卡。
优选地,应用从智能卡的卡发行商服务器获取认证响应,包括:应用利用应用提供商服务器从卡发行商服务器获取认证响应。
优选地,应用利用应用提供商服务器从卡发行商服务器获取认证响应,包括:应用和应用提供商服务器之间进行相互认证并建立第一安全连接,应用通过第一安全连接将认证信息发送给应用提供商服务器;应用提供商服务器和卡发行商服务器之间进行相互认证并建立第二安全连接,应用提供商服务器通过第二安全连接将认证信息转发给卡发行商服务器;卡发行商服务器接收应用提供商服务器转发的认证信息;当卡发行商服务器对认证信息验证通过后,卡发行商服务器根据认证信息生成认证响应;卡发行商服务器通过第二安全连接将认证响应发送给应用提供商服务器,由应用提供商服务器通过第一安全连接将认证响应转发至应用。
优选地,卡发行商服务器根据认证信息生成认证响应,包括:卡发行商服务器根据智能卡标识查找与智能卡对应的根密钥,其中,根密钥是卡发行商服务器为每一张智能卡分配的密钥信息,智能卡与根密钥一一对应,认证信息携带有所述智能卡的智能卡标识和智能卡为所述应用本次接入所生成的随机数;卡发行商服务器根据根密钥和随机数生成认证响应。
优选地,认证响应携带有第一认证内容和第一临时会话密钥,其中,卡发行商服务器利用第一临时会话密钥对认证响应进行加密传输。
优选地,智能卡接收认证信息的认证响应之后,还包括:智能卡根据认证信息中的随机数和自身的根密钥按照和卡发行商服务器对应的方式生成第二认证内容和第二临时会话密钥;智能卡根据第二会话密钥对认证响应进行解密,如果解密成功,则对解密得到的第一认证内容和第二认证内容进行比较,如果相同,则表明验证成功。
优选地,智能卡接入应用,包括:智能卡使用第一临时会话密钥和第二临时会话密钥在自身和应用之间建立安全信道;智能卡通过安全信道与应用进行信息交互。
优选地,智能卡将应用接入智能卡之后,还包括:当应用关闭时,智能卡释放安全信道;智能卡删除第二临时会话密钥。
优选地,认证信息携带有应用本次接入时智能卡的第一序列号。
优选地,第一序列号按如下步骤生成:智能卡在自身存储的第二序列号上增加预定值,得到第三序列号;智能卡判断第三序列号是否大于预定阈值;若是,则将预设初始值赋值给第一序列号和第二序列号;若否,则将第三序列号赋值给第一序列号和第二序列号。
优选地,卡发行商服务器根据认证信息生成认证响应,包括:卡发行商服务器从认证信息中获取第一序列号和智能卡标识;卡发行商服务器根据智能卡标识查找自身存储的对应于该智能卡的第四序列号;卡发行商服务器根据第一序列号和第四序列号进行验证,在验证通过后,卡发行商服务器生成认证响应。
优选地,卡发行商服务器根据第一序列号和第四序列号进行验证,包括:卡发行商服务器判断第一序列号是否大于或等于第四序列号,如果大于或等于,则验证成功,卡发行商服务器将第一序列号赋值给第四序列号。
优选地,卡发行商服务器将第一序列号赋值给第四序列号之后,还包括:卡发行商服务器判断第一序列号加上预定值后是否大于预定阈值,如果大于,则卡发行商服务器将预设初始值赋值给第四序列号。
根据本发明实施例的另一方面,提供了一种应用接入智能卡的认证装置,位于智能卡中,包括:第一接收单元,用于接收应用发送的接入请求,将接入请求的认证信息发送给应用;第二接收单元,用于接收认证信息的认证响应,其中,应用从智能卡的卡发行商服务器获取认证响应并发送至智能卡;接入单元,用于当智能卡对认证响应验证通过时,允许应用接入到智能卡。
优选地,该装置还包括:第一生成单元,用于当认证响应携带有第一认证内容和第一临时会话密钥时,在接收认证信息的认证响应之后,根据认证信息中的随机数和自身的根密钥按照和卡发行商服务器对应的方式生成第二认证内容和第二临时会话密钥;解密单元,用于根据第二会话密钥对认证响应进行解密,如果解密成功,则对解密得到的第一认证内容和第二认证内容进行比较,如果相同,则表明验证成功。
优选地,接入单元包括:接入模块,用于使用第一临时会话密钥和第二临时会话密钥在自身和应用之间建立安全信道;交互模块,用于通过安全信道与应用进行信息交互。
优选地,该装置还包括:第二生成单元,用于生成携带有应用本次接入时智能卡的第一序列号的认证信息。
优选地,第二生成单元包括:增加模块,用于在自身存储的第二序列号上增加预定值,得到第三序列号;判断模块,用于判断第三序列号是否大于预定阈值;第一赋值模块,用于在判断出第三序列号大于预定阈值时,将预设初始值赋值给第一序列号和第二序列号;第二赋值模块,用于在判断出第三序列号不大于预定阈值时,将第三序列号赋值给第一序列号和第二序列号。
根据本发明实施例的又一方面,提供了另一种应用接入智能卡的认证装置,位于卡发行商服务器中,包括:第三接收单元,用于应用发送的认证信息,其中,认证信息携带有智能卡的智能卡标识和/或智能卡为应用本次接入所生成的随机数;第三生成单元,用于根据认证信息生成认证响应,并将认证响应发送给应用。
优选地,第三生成单元包括:获取模块,用于从认证信息中获取第一序列号和智能卡标识;第二查找模块,用于根据智能卡标识查找自身存储的对应于该智能卡的第四序列号;验证模块,用于根据第一序列号和第四序列号进行验证,在验证通过后,生成认证响应。
优选地,第三生成单元包括:第一查找模块,用于器根据智能卡标识查找与智能卡对应的根密钥,其中,根密钥是卡发行商服务器为每一张智能卡分配的密钥信息,智能卡与根密钥一一对应;第一生成模块,用于根据根密钥和随机数生成认证响应。
优选地,第三生成单元包括:第二生成模块,用于生成携带有第一认证内容和第一临时会话密钥的认证响应;加密模块,用于利用第一临时会话密钥对认证响应进行加密。
根据本发明实施例的又一方面,提供了一种应用接入处理系统,包括:上述的位于智能卡中的应用接入处理装置,和位于卡发行商服务器中的应用接入处理装置。
在本发明实施例中,智能卡在接收到应用的接入请求后,响应于该接入请求生成对应于该应用本次接入的认证信息,并将该认证信息发给应用,以触发该应用向卡发行商服务器获取对应于该认证信息的认证响应,只有在该应用向智能卡返回匹配的认证响应后,智能卡才允许将该应用接入。通过上述方式,实现了智能卡对应用接入的鉴权认证,从而解决现有技术中没有一种可以通过智能卡完成应用接入的鉴权认证的方式,使得智能卡上的数据或功能不能被终端的应用调用,业务的安全性得不到保证的技术问题,实现了应用安全接入智能卡,使得终端应用可以将业务认证相关数据部署到智能卡上,提高了业务的安全性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的应用接入处理方法的一种优选流程图;
图2是根据本发明实施例的应用利用应用提供商服务器从卡发行商服务器获取认证响应的一种优选流程图;
图3是根据本发明实施例的位于智能卡中的应用接入智能卡的认证装置的一种优选结构框图;
图4是根据本发明实施例的位于智能卡中的应用接入智能卡的认证装置的另一种优选结构框图;
图5是根据本发明实施例的位于智能卡中的应用接入智能卡的认证装置的接入单元一种优选结构框图;
图6是根据本发明实施例的位于智能卡中的应用接入智能卡的认证装置的又一种优选结构框图;
图7是根据本发明实施例的位于智能卡中的应用接入智能卡的认证装置的第二生成单元的一种优选结构框图;
图8是根据本发明实施例的位于卡发行商服务器中的应用接入智能卡的认证装置的一种优选结构框图;
图9是根据本发明实施例的位于卡发行商服务器中的应用接入智能卡的认证装置的第三生成单元的一种优选结构框图;
图10是根据本发明实施例的位于卡发行商服务器中的应用接入智能卡的认证装置的第三生成单元的另一种优选结构框图;
图11是根据本发明实施例的位于卡发行商服务器中的应用接入智能卡的认证装置的第三生成单元的又一种优选结构框图;
图12是根据本发明实施例的应用接入智能卡的方法的另一种优选流程图;
图13是根据本发明实施例的应用获得认证信息和认证响应,并给智能卡发送认证响应请求接入智能卡的一种优选流程图;
图14是根据本发明实施例的智能卡对请求接入智能卡的应用进行接入控制的一种优选流程图;
图15是根据本发明实施例的应用请求接入智能卡,智能卡对应用进行接入控制的一种优选流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本发明实施例中,应用在部署到终端上以后,无论应用需要对智能卡特定的安全域进行升级,还是应用需要利用智能卡进行业务认证相关的操作,都必须首先获取接入智能卡的权限,并且接入智能卡。接入控制接口的关键作用在于,在应用启动并请求接入智能卡时,对应用进行接入的控制,以限制某些应用接入到智能卡,只让授权能够接入智能卡的应用在智能卡允许后才能接入到智能卡;在应用获得了智能卡的接入允许后,应用的运行过程中一直占据与智能卡的连接通道;在应用关闭时,要释放智能卡和应用之间的连接通道;应用在下次启动并请求接入智能卡时要重新通过智能卡的准许。
同时,应用要接入到智能卡,必须向智能卡发送某种能够证明自己身份合法的信息。智能卡能够对该信息进行验证,以证明发送该信息的应用是否为授权能够接入智能卡的应用,以便只让授权的合法应用接入到智能卡。要规范接入控制接口,必须先规范出应用需要发送何种能够证明自己身份的信息,并且必须确定一种智能卡对请求接入智能卡的应用进行接入控制的方法。
现有的智能卡安全API架构提出了一种终端上的移动应用能安全高效的访问智能卡的架构体系。智能卡安全API架构分为三个层次:应用层、业务认证中间层和业务认证服务层,并且定义了两种API:智能卡与终端软件系统之间的API、终端软件系统与应用之间的API。智能卡与终端软件系统之间的API主要将移动应用访问智能卡的指令转换成智能卡所能识别的APDU指令,终端软件系统与应用之间的API则主要研究应用如何通过该类接口访问智能卡上的认证服务应用。终端软件系统与应用之间的API应包括智能卡管理接口、接入控制接口、数据加解密接口、数字签名验签接口以及身份认证接口等几大类。
为了实现智能卡对请求接入智能卡的应用进行接入控制,本发明实施例提供了一种应用接入智能卡的认证方法,下面将结合几个具体的实施例对该方法进行详细的描述。
实施例1
本发明实施例提供了一种应用接入智能卡的认证方法,如图1所示,包括:
S102:智能卡接收应用发送的接入请求,将接入请求的认证信息发送给应用;
S104:智能卡接收认证信息的认证响应,其中,应用从智能卡的卡发行商服务器获取认证响应并发送至智能卡;
S106:当智能卡对认证响应验证通过时,允许应用接入智能卡。
在本优选实施方式中,智能卡在接收到应用的接入请求后,响应于该接入请求生成对应于该应用本次接入的认证信息,并将该认证信息发给应用,以触发该应用向卡发行商服务器获取对应于该认证信息的认证响应,只有在该应用向智能卡返回匹配的认证响应后,智能卡才将该应用接入。通过上述方式,实现了智能卡对应用接入的鉴权认证,从而解决现有技术中没有一种可以通过智能卡完成应用接入的鉴权认证的方式,使得智能卡上的数据或功能不能被终端的应用调用,业务的安全性得不到保证的技术问题,实现了智能卡对请求接入智能卡的应用进行接入控制,使得终端应用可以将业务认证相关数据部署到智能卡上,提高了业务的安全性。
因该认证信息是为了从卡发行商服务器获取对应应用本次接入该智能卡的认证响应,在本发明实施例一个优选实施方式中,认证信息携带可以有:智能卡的智能卡标识和/或智能卡为应用本次接入所生成的随机数。
应用一般在自己的应用提供商服务器处进行了注册,应用提供商服务器和卡发行商服务器一般进行了一定的签约关系,因此,应用可以通过应用提供商服务器从卡发行商服务器获取认证响应。在一个优选实施方式中,应用从智能卡的卡发行商服务器获取认证响应,包括:应用利用应用提供商服务器从卡发行商服务器获取认证响应。
具体地,应用利用应用提供商服务器从卡发行商服务器获取认证响应的步骤,如图2所示,包括:
S202:应用和应用提供商服务器之间进行相互认证并建立第一安全连接,应用通过第一安全连接将认证信息发送给应用提供商服务器;
S204:应用提供商服务器和卡发行商服务器之间进行相互认证并建立第二安全连接,应用提供商服务器通过第二安全连接将认证信息转发给卡发行商服务器;
S206:卡发行商服务器接收应用提供商服务器转发的认证信息;
S208:当卡发行商服务器对认证信息验证通过后,卡发行商服务器根据认证信息生成认证响应;
S210:卡发行商服务器通过第二安全连接将认证响应发送给应用提供商服务器,由应用提供商服务器通过第一安全连接将认证响应转发至应用。
在上述步骤S208中,卡发行商服务器根据认证信息生成认证响应,包括:卡发行商服务器根据智能卡标识查找与智能卡对应的根密钥,其中,根密钥是卡发行商服务器为每一张智能卡分配的密钥信息,智能卡与根密钥一一对应;卡发行商服务器根据根密钥和随机数生成认证响应。在上述优选实施方式中,卡发行商服务器在发行智能卡时,为每张智能卡分配一个根密钥(KIC),该根密钥可以为128比特的对称密钥,并且与智能卡的智能卡标识(ICCID)相对应。优选地,卡发行商服务器保存该根密钥和ICCID,卡发行商服务器通过智能卡的ICCID可以查询到该智能卡的根密钥KIC,智能卡的根密钥KIC在智能卡发行时就已经保存在智能卡中,智能卡根密钥只能存在于卡发行商服务器和智能卡中,禁止被读出。
为了保证应用接入的安全性,在一个优选实施方式中,卡发行商服务器还在认证响应中携带第一认证内容的同时还携带有第一临时会话密钥,其中,卡发行商服务器利用第一临时会话密钥对认证响应进行加密传输。同时,该第一临时会话密钥还用于后续信道建立后数据的交互的数据加密。
对应的,在智能卡侧,也需要和卡发行商服务器采用相同的方式生成对应的第二临时会话密钥和第二认证内容,在一个优选实施方式中,在接收认证信息的认证响应之后,智能卡根据认证信息中的随机数和自身的根密钥按照和卡发行商服务器对应的方式生成第二认证内容和第二临时会话密钥;智能卡根据第二会话密钥对认证响应进行解密,如果解密成功,则对解密得到的第一认证内容和第二认证内容进行比较,如果相同,则表明验证成功。
在智能卡接入应用的过程中,可以根据上述的第一临时会话密钥和第二临时会话密钥建立对应的安全信道,并利用该第一临时会话密钥和第二临时会话密钥进行信息的交互,在一个优选实施方式中,智能卡接入应用包括:智能卡使用第一临时会话密钥和第二临时会话密钥在自身和应用之间建立安全信道;智能卡通过安全信道与应用进行信息交互。
为了减少资源的比必要浪费,和减少数据的冗余,在应用关闭或者是其他原因致使应用不需要和智能卡进行信息交互时,可以释放和该应用对应的安全信道,同时删除临时会话密钥,在一个优选实施方式中,智能卡将应用接入智能卡之后,还包括:当应用关闭时,智能卡释放安全信道;智能卡删除第二临时会话密钥。在上述优选实施方式中,应用每一次接入智能卡都会进行一个安全信道的建立,同时会为该次接入生成一对临时会话密钥,减少了资源浪费也保证了终端应用的安全接入。
在本发明一个优选实施方式中,认证信息还携带有应用本次接入时智能卡的第一序列号。该第一序列号按如下步骤生成:智能卡在自身存储的第二序列号上增加预定值,得到第三序列号;智能卡判断第三序列号是否大于预定阈值;若是,则将预设初始值赋值给第一序列号和第二序列号;若否,则将第三序列号赋值给第一序列号和第二序列号。
例如,上述的预定值可以是1,预设初始值时0,即,智能卡预先存储一个序列号(SQNIC),当该智能卡需要产生认证信息时智能卡将自身的SQNIC加1。当智能卡中所保存的SQNIC计数溢出后,SQNIC会重新赋值为初始值0。
在卡发行商服务器侧也存储与SQNIC对应的序列号SQRSER,在一个优选实施方式中,根据认证信息生成认证响应,包括:卡发行商服务器从认证信息中获取第一序列号(SQNIC)和智能卡标识;卡发行商服务器根据智能卡标识查找自身存储的对应于该智能卡的第四序列号(SQRSER);卡发行商服务器根据第一序列号和第四序列号进行验证,在验证通过后,卡发行商服务器生成认证响应。卡发行商服务器根据第一序列号和第四序列号进行验证,包括:卡发行商服务器判断第一序列号是否大于或等于第四序列号,如果大于或等于,则验证成功,卡发行商服务器将第一序列号赋值给第四序列号;卡发行商服务器判断第一序列号加上预定值后是否大于预定阈值,如果大于,则卡发行商服务器将预设初始值赋值给第四序列号。
以预定值可以是1,预设初始值时0为例进行说明,卡发行商服务器为每一个自己发行的智能卡保存有不同的SQNSER,如果SQNIC大于或等于SQNSER,则验证SQN成功,此时将更新SQNSER,将接收到的SQNIC的值赋值给SQNSER,并接着进行下面的认证步骤;如果SQNIC小于SQNSER,则验证SQN失败,卡发行商拒绝产生认证响应,如果验证成功,卡发行商服务器还应检测SQNSER是否已到最大值,即SQNSER再加1是否会溢出,如果是,则赋值SQNSER=0。
实施例2
本发明实施例还提供了一种应用接入智能卡的认证装置,位于智能卡中,如图3所示,包括:第一接收单元302,用于接收应用发送的接入请求,将接入请求的认证信息发送给应用;第二接收单元304,用于接收认证信息的认证响应,其中,应用从智能卡的卡发行商服务器获取认证响应并发送至智能卡;接入单元306,用于当智能卡对认证响应验证通过时,允许该应用接入智能卡。
在本优选实施方式中,智能卡在接收到应用的接入请求后,响应于该接入请求生成对应于该应用本次接入的认证信息,并将该认证信息发给应用,以触发该应用向卡发行商服务器获取对应于该认证信息的认证响应,只有在该应用向智能卡返回匹配的认证响应后,智能卡才将该应用接入。通过上述方式,实现了智能卡对应用接入的鉴权认证,从而解决现有技术中没有一种可以通过智能卡完成应用接入的鉴权认证的方式,使得智能卡上的数据或功能不能被终端的应用调用,业务的安全性得不到保证的技术问题,实现了应用安全接入智能卡,使得终端应用可以将业务认证相关数据部署到智能卡上,提高了业务的安全性。
因该认证信息是为了从卡发行商服务器获取对应应用本次接入该智能卡的认证响应,在本发明实施例一个优选实施方式中,认证信息携带可以有:智能卡的智能卡标识和/或智能卡为应用本次接入所生成的随机数。
该装置要和上述的应用进行交互以实现应用的接入,应用一般在自己的应用提供商服务器处进行了注册,应用提供商服务器和卡发行商服务器一般进行了一定的签约关系,因此,应用可以通过应用提供商服务器从卡发行商服务器获取认证响应。
为了保证应用接入的安全性,卡发行商服务器还在认证响应中携带第一认证内容的同时还携带有第一临时会话密钥,对应的在智能卡侧,在一个优选实施方式中,如图4所示,该装置还包括:第一生成单元402,用于当认证响应携带有第一认证内容和第一临时会话密钥时,在接收认证信息的认证响应之后,根据认证信息中的随机数和自身的根密钥按照和卡发行商服务器对应的方式生成第二认证内容和第二临时会话密钥;解密单元404,用于根据第二会话密钥对认证响应进行解密,如果解密成功,则对解密得到的第一认证内容和第二认证内容进行比较,如果相同,则表明验证成功。
在智能卡接入应用的过程中,可以根据上述的第一临时会话密钥和第二临时会话密钥建立对应的安全信道,并利用该第一临时会话密钥和第二临时会话密钥进行信息的交互,在一个优选实施方式中,如图5所示,接入单元包括:接入模块502,用于使用第一临时会话密钥和第二临时会话密钥在自身和应用之间建立安全信道;交互模块504,用于通过安全信道与应用进行信息交互。
为了减少资源的比必要浪费,和减少数据的冗余,在应用关闭或者是其他原因致使应用不需要和智能卡进行信息交互时,可以释放和该应用对应的安全信道,同时删除临时会话密钥,在一个优选实施方式中,该装置还包括:释放单元,用于当应用关闭时,释放安全信道;删除单元,用于删除第二临时会话密钥。在上述优选实施方式中,应用每一次接入智能卡都会进行一个安全信道的建立,同时会为该次接入生成一对临时会话密钥,减少了资源浪费也保证了终端应用的安全接入。
在本发明一个优选实施方式中,认证信息还携带有应用本次接入时智能卡的第一序列号。在一个优选实施方式中,如图6所示,该装置还包括:第二生成单元602,用于生成携带有应用本次接入时智能卡的第一序列号的认证信息。
在本发明一个优选实施方式中,如图7所示,上述的第二生成单元602包括:增加模块702,用于在自身存储的第二序列号上增加预定值,得到第三序列号;判断模块704,用于判断第三序列号是否大于预定阈值;第一赋值模块706,用于在判断出第三序列号大于预定阈值时,将预设初始值赋值给第一序列号和第二序列号;第二赋值模块708,用于在判断出第三序列号不大于预定阈值时,将第三序列号赋值给第一序列号和第二序列号。
例如,上述的预定值可以是1,预设初始值时0,即,智能卡预先存储一个序列号(SQNIC),当该智能卡需要产生认证信息时智能卡将自身的SQNIC加1。当智能卡中所保存的SQNIC计数溢出后,SQNIC会重新赋值为初始值0。
本发明实施例还提供了另一种应用接入智能卡的认证装置,位于卡发行商服务器中,如图8所示,包括:第三接收单元802,用于应用发送的认证信息,其中,认证信息携带有智能卡的智能卡标识和/或智能卡为应用本次接入所生成的随机数;第三生成单元804,用于根据认证信息认证响应,并将认证响应发送给应用。
在一个优选实施方式中,如图9所示,第三生成单元包括:第一查找模块902,用于器根据智能卡标识查找与智能卡对应的根密钥,其中,根密钥是卡发行商服务器为每一张智能卡分配的密钥信息,智能卡与根密钥一一对应;第一生成模块904,用于根据根密钥和随机数生成认证响应。在上述优选实施方式中,卡发行商服务器在发行智能卡时,为每张智能卡分配一个根密钥(KIC),该根密钥可以为128比特的对称密钥,并且与智能卡的智能卡标识(ICCID)相对应。优选地,卡发行商服务器保存该根密钥和ICCID,卡发行商服务器通过智能卡的ICCID可以查询到该智能卡的根密钥KIC,智能卡的根密钥KIC在智能卡发行时就已经保存在智能卡中,智能卡根密钥只能存在于卡发行商服务器和智能卡中,禁止被读出。
为了保证应用接入的安全性,在一个优选实施方式中,卡发行商服务器还在认证响应中携带第一认证内容的同时还携带有第一临时会话密钥,其中,卡发行商服务器利用第一临时会话密钥对认证响应进行加密传输。同时,该第一临时会话密钥还用于后续信道建立后数据的交互的数据加密。在本发明实施例一个优选实施方式中,如图10所示,第三生成单元包括:第二生成模块1002,用于生成携带有第一认证内容和第一临时会话密钥的认证响应;加密模块1004,用于利用第一临时会话密钥对认证响应进行加密。
在卡发行商服务器侧也存储与SQNIC对应的序列号SQRSER,在一个优选实施方式中,如图11所示,第三生成单元包括:获取模块1102,用于从认证信息中获取第一序列号和智能卡标识;第二查找模块1104,用于根据智能卡标识查找自身存储的对应于该智能卡的第四序列号;验证模块1106,用于根据第一序列号和第四序列号进行验证,在验证通过后,生成认证响应。
以预定值可以是1,预设初始值时0为例进行说明,卡发行商服务器为每一个自己发行的智能卡保存有不同的SQNSER,如果SQNIC大于或等于SQNSER,则验证SQN成功,此时将更新SQNSER,将接收到的SQNIC的值赋值给SQNSER,并接着进行下面的认证步骤;如果SQNIC小于SQNSER,则验证SQN失败,卡发行商拒绝产生认证响应,如果验证成功,卡发行商服务器还应检测SQNSER是否已到最大值,即SQNSER再加1是否会溢出,如果是,则赋值SQNSER=0。
根据图3-11示出的应用接入智能卡的认证装置,本发明实施例还提供了一种应用接入智能卡的认证系统,包括:上述的位于智能卡中的应用接入智能卡的认证装置,和位于卡发行商服务器中的应用接入智能卡的认证装置。
实施例3
本发明提供了一种优选的实施例来进一步对本发明进行解释,但是值得注意的是,该优选实施例只是为了更好的描述本发明,并不构成对本发明不当的限定。
本发明实施例描述了一种应用接入智能卡的方法流程,如图12所示,包括:
步骤S1202:终端应用请求接入智能卡,具体的,终端应用向智能卡发起接入请求,并请求智能卡产生认证信息。
步骤S1204:智能卡在接收到应用发起的接入请求后,将产生认证信息,并将该认证信息返回给应用,要求应用携带该认证信息所对应的认证响应接入智能卡。
步骤S1206:应用在接收到智能卡发送来的认证信息后,将通过应用提供商服务器向卡发行商服务器请求所述认证信息所对应的认证响应。
其中,应用提供商是发布该应用的应用提供商,卡发行商是该智能卡的生产商。优选地,应用提供商和卡发行商之间有着签约关系,应用提供商发布的应用可以使用卡发行商发行的智能卡的业务认证功能,应用向卡发行商服务器请求认证响应的消息在安全信道中进行传输。
步骤S1208:卡发行商服务器产生认证响应后,通过应用提供商服务器将认证响应发送给合法的应用,应用携带认证响应接入智能卡,智能卡对认证响应进行验证,以便对应用进行接入控制。
本实施例还提供了一种应用如何获得认证信息和认证响应,并给智能卡发送认证响应请求接入智能卡的流程,如图13所示,包括:
步骤S1302,应用提供商和卡发行商进行签约。应用提供商发布的应用可以授权使用卡发行商发行的智能卡进行业务认证相关操作。具体的签约过程和现有技术中的签约采用相同的方式即可,在此不再赘述。
步骤S1304,应用在启动后,如果应用要接入智能卡,首先向智能卡发送接入请求,请求智能卡产生认证信息。
步骤S1306,智能卡在接收到应用发送的接入请求后,产生认证信息,并将认证信息发送给应用,要求应用提供与认证信息对应的认证响应。其中,该认证信息中包括智能卡的ICCID(IC Card Identity,IC卡标识)。优选地,该ICCID是智能卡的卡号,反映了发行国别、网号、发行地区、发行时间、生产厂商等信息,ICCID存在于智能卡的EFICCID中,总是可读,但不能被更改。
步骤S1308,应用向应用提供商服务器发起连接请求,应用提供商服务器和应用进行相互的认证。
上述的步骤S1308主要是为了确保应用为应用提供商发布的合法应用。优选地,应用和应用提供商服务器之间应建立起安全信道,应用和应用提供商服务器之间的所有信息交互都应该加密和完整性保护,防止攻击者在应用和应用提供商服务器之间接口上盗取信息。
应用和应用提供商服务器之间的认证和安全信道的建立应该由应用提供商进行规范。
步骤S1310,应用向应用提供商服务器发起获取认证响应请求,请求应用提供商为其请求认证响应。在该请求中,应用要发送智能卡产生的认证信息,获取认证响应请求应该在应用和应用提供商服务器之间的安全信道中传输,被加密和完整性保护。
步骤S1312,应用提供商服务器向卡发行商服务器发起连接请求,应用提供商服务器和卡发行商服务器进行相互的认证。
在上述的步骤S1312中,应用提供商服务器和卡发行商服务器之间应建立起安全信道,应用提供商服务器和卡发行商服务器之间的所有信息交互都应该加密和完整性保护,防止攻击者在应用提供商服务器和卡发行商服务器之间接口上盗取信息。
应用提供商服务器和卡发行商服务器之间的相互认证和安全信道的建立应该由应用提供商和卡发行商之间的签约所规范。
步骤S1314,应用提供商服务器将步骤S1310中的消息经过解密和完整性验证后,将步骤S1310请求中认证信息发送给卡发行商服务器,并请求认证响应。应用提供商服务器向卡发行商服务器发送的信息在应用提供商服务器和卡发行商服务器之间的安全信道中传输,被加密和完整性保护。
步骤S1316,如果卡发行商服务器认为应用提供商服务器是和自身具有签约关系的,则卡发行商服务器会将步骤S1314发送的消息解密并进行完整性验证,并根据步骤S1314中发送的ICCID查询到智能卡的根密钥KIC,并根据根密钥和步骤S1314中发送的其他认证信息产生认证响应(此处的认证响应对应于权利要求中的第一认证内容)和应用临时会话密钥(此处的应用临时会话密钥对应于权利要求中的第一临时会话密钥)。
应用临时会话密钥用于在应用和智能卡之间的通信建立起临时的安全信道。应用临时会话密钥为对称密钥,卡发行商服务器生成应用临时会话密钥,通过安全连接传递给发起请求的合法应用;智能卡根据认证数据产生应用临时会话密钥。应用若成功接入智能卡,那么应用和智能卡之间将建立起安全信道,应用和智能卡之间的信息交互将被应用临时会话密钥加密和完整性保护。当应用释放了和智能卡的连接通道后,应用临时会话密钥将失效,智能卡会删除应用临时会话密钥。
步骤S1318,卡发行商服务器在产生了认证响应和应用临时会话密钥后,将认证响应和临时会话密钥通过卡发行商服务器和应用提供商服务器之间的安全信道发送给应用提供商服务器,认证响应和应用临时会话密钥被加密和完整性保护。
步骤S1320,应用提供商服务器将步骤S1318的消息解密和完整性验证后,将认证响应和应用临时会话密钥通过应用提供商服务器和应用之间的安全信道发送给应用。认证响应和应用临时会话密钥被加密和完整性保护,以防止攻击者窃取认证响应和应用临时会话密钥。
步骤S1322,应用将步骤S1320消息解密和完整性验证后,向智能卡发送认证响应信息,其中,该认证响应消息包括认证响应,请求智能卡对认证响应进行验证。认证响应信息被应用临时会话密钥加密和完整性保护。
步骤S1324,智能卡根据应用对应的认证信息产生智能卡侧的应用临时会话密钥,并产生智能卡所期望的响应消息。智能卡将认证响应信息进行解密和完整性验证后,对认证响应进行认证。
步骤S1326,如果智能卡认为应用为授权接入智能卡的应用(即,认证通过),则允许应用接入智能卡,并使用应用和智能卡所保存的对称的应用临时会话密钥建立起安全信道,对应用和智能卡之间的信息交互进行加密和完整性保护。
本发明实施例还提供了一种智能卡对请求接入智能卡的应用进行接入控制的具体方法,如图14所示,包括:
步骤S1402,应用请求接入智能卡。
步骤S1404,智能卡产生认证信息,该认证信息可以包括以下信息:ICCID、随机数(RAND)、
Figure BDA0000151009740000121
其中,RAND为智能卡产生的一个128比特的随机数,SQN(SequenceNumber)为智能卡产生的48比特的序列号,AK(Anonymity Key)为智能卡产生的48比特的匿名密钥。其中,
Figure BDA0000151009740000122
为异或运算。
其中,上述的SQN为智能卡和卡发行商服务器都保存的序列号,其目的是让卡发行商服务器对智能卡产生的SQN进行认证,确保智能卡产生的认证信息不能攻击者利用对卡发行商服务器进行重放攻击。将智能卡产生的序列号记为SQNIC,卡发行商保有的记为SQNSER。智能卡产生
Figure BDA0000151009740000123
之后,智能卡中的SQNIC要自加1。当智能卡中所保存的SQNIC计数溢出后,SQNIC会重新赋值为0。
上述的AK为智能卡产生的匿名密钥,产生的方法为AK=f5(KIC,RAND),其中,f5算法同3G安全架构中AKA过程中UICC卡中所持有的f5算法。
上述的RAND、AK应保存在智能卡中,应用释放与智能卡的连接通道后,对应的AK、RAND应该被删除。应用再次申请接入智能卡时,智能卡应该重新产生AK、RAND。智能卡产生的认证信息可以是
Figure BDA0000151009740000124
然而,值得注意的是,上述生成认证信息所涉及的算法和公式仅仅是作为一种优选的实现方式,本发明不限于此。
步骤S1406,智能卡将认证信息发送给终端上的应用。
步骤S1408,应用会使用某种方式向卡发行商服务器请求认证响应,并将认证信息传递给卡发行商服务器,卡发行商服务器通过一些方式确保应用为已签约应用提供商发布的合法应用,卡发行商服务器将认证响应传递给已签约应用提供商发布的合法应用。
步骤S1410,卡发行商服务器先利用认证消息中的ICCID查询到对应该智能卡的KIC;然后,卡发行商服务器利用KIC和认证信息中的RAND产生匿名密钥AK,AK=f5(KIC,RAND);然后,卡发行商服务器利用匿名密钥AK和认证信息中的
Figure BDA0000151009740000131
得到SQNIC,
Figure BDA0000151009740000132
卡发行商服务器对SQNIC进行认证,以防止重放攻击。
对于步骤S1410中的认证方法具体为:比较SQNIC和卡发行商服务器保存的SQNSER,SQNSER和ICCID对应,卡发行商服务器为每一个自己发行的智能卡保存有不同的SQNSER。如果SQNIC大于或等于SQNSER,则验证SQN成功,此时卡发行商服务器更新SQNSER,并将接收到的SQNIC的值赋值给SQNSER,并继续进行下面的认证步骤;如果SQNIC小于SQNSER,则验证SQN失败,卡发行商拒绝产生认证响应。
优选地,如果验证SQN成功,卡发行商服务器还应检测SQNSER是否已到最大值,即,SQNSER再加1是否会出现溢出,如果是,则赋值SQNSER=0。值得注意的是,此处赋初始值为0仅为一种示意性表述,本发明不限于此,还可以小于最大值的任意值作为初始值。
步骤S1412,如果验证SQN成功,卡发行商服务器产生认证响应(RES),该认证响应RES=f2(KIC,RAND)。f2算法同3G安全架构中AKA过程UICC卡中所持有的f2算法。
并且,卡发行商服务器还会产生应用临时会话密钥KENC和KINC,KENC用于应用和智能卡之间数据的加密,KINC用于应用和智能卡之间数据的完整性保护。KENC=f3(RAND,K);KINC=f4(RAND,K)。f3和f4算法同3G安全架构中AKA过程UICC卡中所持有的f3、f4算法。
步骤S1414,卡发行商服务器会通过某种方式将认证响应RES、应用临时会话密钥KENC和KINC传递给应用。卡发行商服务器将认证响应、应用临时会话密钥KENC和KINC传递给已签约应用提供商发布的合法应用。优选地,卡发行商服务器仅会将认证响应发送给和自身签约的应用提供商,以保证接入的应用为合法的应用,提高数据的安全性。
步骤S1416,应用使用应用临时会话密钥KENC和KINC将认证响应RES加密和完整性保护。
步骤S1418,应用将加密和完整性保护的认证响应发送给智能卡,请求接入智能卡。
步骤S1420,智能卡根据保存的与应用对应的RAND和智能卡根密钥KIC产生应用临时会话密钥KENC和KINC,并使用KENC和KINC将认证响应解密和完整性验证。智能卡根据保存的与应用对应的RAND和智能卡根密钥KIC产生期望相应XRES,XRES=f2(KIC,RAND)。智能卡比较期望相应XRES和认证响应RES,如果两者相等,则允许应用接入智能卡;如果两者不相等,则拒绝应用接入智能卡。
步骤S1422,应用若成功接入智能卡,则使用应用和智能卡所保存的对称的应用临时会话密钥KENC和KINC建立起安全信道,对应用和智能卡之间的信息交互进行加密和完整性保护。
本发明实施例还描述了一种应用请求接入智能卡,智能卡对应用进行接入控制的具体实施方式,具体步骤如图15所示,包括:
步骤S1502,应用提供商和卡发行商进行签约。
步骤S1504,应用在启动后,如果应用要接入智能卡,首先向智能卡发送接入请求,请求智能卡产生认证信息。
步骤S1506,智能卡接收到来自于应用的接入请求后,产生认证信息,其中,该认证信息中携带有ICCID、随机数RAND以及
Figure BDA0000151009740000141
步骤S1508,智能卡认证信息发送给应用,要求应用提供与该认证信息对应的认证响应。
步骤S1510,应用向应用提供商服务器发起连接请求,应用提供商服务器和应用进行相互的认证,以确保应用为应用提供商发布的合法应用。应用和应用提供商服务器之间应建立起安全信道,应用和应用提供商服务器之间的所有信息交互都应该进行加密和完整性的保护,防止攻击者在应用和应用提供商服务器之间接口上盗取信息。
步骤S1512,应用向应用提供商服务器发起获取认证响应的请求,用于请求应用提供商为其请求认证响应。在该请求中,应用要发送智能卡产生的认证信息,其中,认证信息包括ICCID、随机数RAND、
Figure BDA0000151009740000142
获取认证响应请求应该在应用和应用提供商服务器之间的安全信道中传输,被加密和完整性保护。
步骤S1514,应用提供商服务器向卡发行商服务器发起连接请求,应用提供商服务器和卡发行商服务器进行相互的认证。应用提供商服务器和卡发行商服务器之间应建立起安全信道,应用提供商服务器和卡发行商服务器之间的所有信息交互都应该进行加密和完整性保护,以防止攻击者在应用提供商服务器和卡发行商服务器之间接口上盗取信息。
步骤S1516,应用提供商服务器将步骤S1512中的消息解密和完整性验证后,将步骤S1512请求中的认证信息(包括ICCID、随机数RAND、
Figure BDA0000151009740000143
)发送给卡发行商服务器,并请求认证响应。应用提供商服务器向卡发行商服务器发送的信息在应用提供商服务器和卡发行商服务器之间的安全信道中传输,被加密和完整性保护。
步骤S1518,如果卡发行商服务器认为应用提供商服务器是和自己具有签约关系的,卡发行商服务器会将步骤S1516发送的消息解密并进行完整性验证,得到ICCID、随机数RAND以及
Figure BDA0000151009740000144
卡发行商服务器先利用认证消息中的ICCID查询到对应的KIC;然后卡发行商服务器利用KIC和认证信息中的RAND产生匿名密钥AK,AK=f5(KIC,RAND);然后卡发行商服务器利用匿名密钥AK和认证信息中的得到SQNIC,卡发行商服务器对SQNIC进行认证,以防止重放攻击。
步骤S1520,如果验证SQN成功,卡发行商服务器会产生认证响应RES,可以按照如下公式得到认证响应,RES=f2(KIC,RAND)。并且,卡发行商服务器会产生应用临时会话密钥KENC和KINC,
步骤S1522,卡发行商服务器在产生了认证响应(RES)和应用临时会话密钥(KENC和KINC)后,将RES和KENC、KINC通过卡发行商服务器和应用提供商服务器之间的安全信道发送给应用提供商服务器。RES和KENC、KINC被加密和完整性保护。
步骤S1524,应用提供商服务器将步骤S1522的消息解密和完整性验证后,将RES和KENC、KINC通过应用提供商服务器和应用之间的安全信道发送给应用。RES和KENC、KINC被加密和完整性保护,以防止攻击者窃取RES和KENC、KINC。
步骤S1526,应用将步骤S1524消息解密和完整性验证后,向智能卡发送认证响应信息,其中包括RES,请求智能卡对认证响应进行验证。认证响应信息被KENC、KINC加密和完整性保护。
步骤S1528,智能卡根据应用对应的认证信息产生智能卡侧的应用临时会话密钥KENC、KINC,并产生期望相应XRES。智能卡将认证响应信息进行解密和完整性验证后,对RES进行认证。
在步骤S1528中,智能卡根据保存的与所述应用对应的RAND和智能卡根密钥KIC产生期望相应XRES,XRES=f2(KIC,RAND)。智能卡比较期望相应XRES和认证响应RES,如果两者相等,则认证成功,允许应用接入智能卡;如果两者不相等,则认证失败,拒绝应用接入智能卡。
步骤S1530,如果智能卡认为应用为授权接入智能卡的应用,则允许应用接入智能卡,并使用应用和智能卡所保存的对称的应用临时会话密钥建立起安全信道,、应用若成功接入智能卡,则使用应用和智能卡所保存的对称的应用临时会话密钥KENC和KINC建立起安全信道,对所述应用和所述智能卡之间的信息交互进行加密和完整性保护。对应用和智能卡之间的信息交互进行加密和完整性保护。
从以上的描述中,可以看出,本发明实现了如下技术效果:
智能卡在接收到应用的接入请求后,响应于该接入请求生成对应于该应用本次接入的认证信息,并将该认证信息发给应用,以触发该应用向卡发行商服务器获取对应于该认证信息的认证响应,只有在该应用向智能卡返回匹配的认证响应后,智能卡才将该应用接入。通过上述方式,实现了智能卡对应用接入的鉴权认证,从而解决现有技术中没有一种可以通过智能卡完成应用接入的鉴权认证的方式,使得智能卡上的数据或功能不能被终端的应用调用,业务的安全性得不到保证的技术问题,实现了智能卡对请求接入智能卡的应用进行接入控制,使得终端应用可以将业务认证相关数据部署到智能卡上,提高了业务的安全性。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (23)

1.一种应用接入智能卡的认证方法,其特征在于,包括:
智能卡接收应用发送的接入请求,将所述接入请求的认证信息发送给所述应用;
所述智能卡接收所述认证信息的认证响应,其中,所述应用从所述智能卡的卡发行商服务器获取所述认证响应并发送至所述智能卡;
当所述智能卡对所述认证响应验证通过时,允许所述应用接入到所述智能卡。
2.根据权利要求1所述的方法,其特征在于,所述应用从所述智能卡的卡发行商服务器获取所述认证响应,包括:所述应用利用应用提供商服务器从所述卡发行商服务器获取所述认证响应。
3.根据权利要求2所述的方法,其特征在于,所述应用利用应用提供商服务器从所述卡发行商服务器获取所述认证响应,包括:
所述应用和所述应用提供商服务器之间进行相互认证并建立第一安全连接,所述应用通过所述第一安全连接将所述认证信息发送给所述应用提供商服务器;
所述应用提供商服务器和所述卡发行商服务器之间进行相互认证并建立第二安全连接,所述应用提供商服务器通过所述第二安全连接将所述认证信息转发给所述卡发行商服务器;
所述卡发行商服务器接收所述应用提供商服务器转发的所述认证信息;
当所述卡发行商服务器对所述认证信息验证通过后,所述卡发行商服务器根据所述认证信息生成所述认证响应;
所述卡发行商服务器通过所述第二安全连接将所述认证响应发送给所述应用提供商服务器,由所述应用提供商服务器通过所述第一安全连接将所述认证响应转发至所述应用。
4.根据权利要求3所述的方法,其特征在于,所述卡发行商服务器根据所述认证信息生成所述认证响应,包括:
所述卡发行商服务器根据智能卡标识查找与所述智能卡对应的根密钥,其中,所述根密钥是所述卡发行商服务器为每一张智能卡分配的密钥信息,所述智能卡与所述根密钥一一对应,所述认证信息携带有所述智能卡的智能卡标识和所述智能卡为所述应用本次接入所生成的随机数;
所述卡发行商服务器根据所述根密钥和所述随机数生成所述认证响应。
5.根据权利要求4所述的方法,其特征在于,所述认证响应携带有第一认证内容和第一临时会话密钥,其中,所述卡发行商服务器利用所述第一临时会话密钥对所述认证响应进行加密传输。
6.根据权利要求5所述的方法,其特征在于,所述智能卡接收所述认证信息的认证响应之后,还包括:
所述智能卡根据所述认证信息中的随机数和自身的根密钥按照和所述卡发行商服务器对应的方式生成第二认证内容和第二临时会话密钥;
所述智能卡根据所述第二会话密钥对所述认证响应进行解密,如果解密成功,则对解密得到的所述第一认证内容和所述第二认证内容进行比较,如果相同,则表明验证成功。
7.根据权利要求6所述的方法,其特征在于,所述智能卡接入所述应用,包括:
所述智能卡使用所述第一临时会话密钥和所述第二临时会话密钥在自身和所述应用之间建立安全信道;
所述智能卡通过所述安全信道与所述应用进行信息交互。
8.根据权利要求7所述的方法,其特征在于,所述智能卡将所述应用接入所述智能卡之后,还包括:
当所述应用关闭时,所述智能卡释放所述安全信道;
所述智能卡删除所述第二临时会话密钥。
9.根据权利要求1所述的方法,其特征在于,所述认证信息携带有所述应用本次接入时所述智能卡的第一序列号。
10.根据权利要求9所述的方法,其特征在于,所述第一序列号按如下步骤生成:
所述智能卡在自身存储的第二序列号上增加预定值,得到第三序列号;
所述智能卡判断所述第三序列号是否大于预定阈值;
若是,则将预设初始值赋值给所述第一序列号和所述第二序列号;
若否,则将所述第三序列号赋值给所述第一序列号和所述第二序列号。
11.根据权利要求10所述的方法,其特征在于,所述卡发行商服务器根据所述认证信息生成认证响应,包括:
所述卡发行商服务器从所述认证信息中获取所述第一序列号和所述智能卡标识;
所述卡发行商服务器根据所述智能卡标识查找自身存储的对应于该智能卡的第四序列号;
所述卡发行商服务器根据所述第一序列号和所述第四序列号进行验证,在验证通过后,所述卡发行商服务器生成所述认证响应。
12.根据权利要求11所述的方法,其特征在于,所述卡发行商服务器根据所述第一序列号和所述第四序列号进行验证,包括:
所述卡发行商服务器判断所述第一序列号是否大于或等于所述第四序列号,如果大于或等于,则验证成功,所述卡发行商服务器将所述第一序列号赋值给所述第四序列号。
13.根据权利要求12所述的方法,其特征在于,所述卡发行商服务器将所述第一序列号赋值给所述第四序列号之后,还包括:
所述卡发行商服务器判断所述第一序列号加上所述预定值后是否大于所述预定阈值,如果大于,则所述卡发行商服务器将所述预设初始值赋值给所述第四序列号。
14.一种应用接入智能卡的认证装置,其特征在于,位于智能卡中,包括:
第一接收单元,用于接收应用发送的接入请求,将所述接入请求的认证信息发送给所述应用;
第二接收单元,用于接收所述认证信息的认证响应,其中,所述应用从所述智能卡的卡发行商服务器获取所述认证响应并发送至所述智能卡;
接入单元,用于当所述智能卡对所述认证响应验证通过时,允许所述应用接入到所述智能卡。
15.根据权利要求14所述的装置,其特征在于,还包括:
第一生成单元,用于当所述认证响应携带有第一认证内容和第一临时会话密钥时,在接收所述认证信息的认证响应之后,根据所述认证信息中的随机数和自身的根密钥按照和所述卡发行商服务器对应的方式生成第二认证内容和第二临时会话密钥;
解密单元,用于根据所述第二会话密钥对所述认证响应进行解密,如果解密成功,则对解密得到的所述第一认证内容和所述第二认证内容进行比较,如果相同,则表明验证成功。
16.根据权利要求15所述的装置,其特征在于,所述接入单元包括:
接入模块,用于使用所述第一临时会话密钥和所述第二临时会话密钥在自身和所述应用之间建立安全信道;
交互模块,用于通过所述安全信道与所述应用进行信息交互。
17.根据权利要求14所述的装置,其特征在于,还包括:
第二生成单元,用于生成携带有所述应用本次接入时所述智能卡的第一序列号的所述认证信息。
18.根据权利要求17所述的装置,其特征在于,所述第二生成单元包括:
增加模块,用于在自身存储的第二序列号上增加预定值,得到第三序列号;
判断模块,用于判断所述第三序列号是否大于预定阈值;
第一赋值模块,用于在判断出所述第三序列号大于预定阈值时,将预设初始值赋值给所述第一序列号和所述第二序列号;
第二赋值模块,用于在判断出所述第三序列号不大于所述预定阈值时,将所述第三序列号赋值给所述第一序列号和所述第二序列号。
19.一种应用接入智能卡的认证装置,其特征在于,位于卡发行商服务器中,包括:
第三接收单元,用于应用发送的认证信息,其中,所述认证信息携带有智能卡的智能卡标识和/或所述智能卡为所述应用本次接入所生成的随机数;
第三生成单元,用于根据所述认证信息生成认证响应,并将所述认证响应发送给所述应用。
20.根据权利要求19所述的装置,其特征在于,所述第三生成单元包括:
第一查找模块,用于器根据所述智能卡标识查找与所述智能卡对应的根密钥,其中,所述根密钥是所述卡发行商服务器为每一张智能卡分配的密钥信息,所述智能卡与所述根密钥一一对应;
第一生成模块,用于根据所述根密钥和所述随机数生成所述认证响应。
21.根据权利要求19所述的装置,其特征在于,所述第三生成单元包括:
第二生成模块,用于生成携带有第一认证内容和第一临时会话密钥的所述认证响应;
加密模块,用于利用所述第一临时会话密钥对所述认证响应进行加密。
22.根据权利要求19所述的装置,其特征在于,所述第三生成单元包括:
获取模块,用于从所述认证信息中获取第一序列号和智能卡标识;
第二查找模块,用于根据所述智能卡标识查找自身存储的对应于该智能卡的第四序列号;
验证模块,用于根据所述第一序列号和所述第四序列号进行验证,在验证通过后,生成所述认证响应。
23.一种应用接入智能卡的认证系统,其特征在于,包括权利要求14-18中任一项所述的位于所述智能卡中的应用接入智能卡的认证装置,和权利要求19-22中任一项所述的位于所述卡发行商服务器中的应用接入智能卡的认证装置。
CN201210099919.1A 2012-04-06 2012-04-06 应用接入智能卡的认证方法、装置和系统 Expired - Fee Related CN103368735B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201210099919.1A CN103368735B (zh) 2012-04-06 2012-04-06 应用接入智能卡的认证方法、装置和系统
PCT/CN2012/075684 WO2013149426A1 (zh) 2012-04-06 2012-05-17 应用接入智能卡的认证方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210099919.1A CN103368735B (zh) 2012-04-06 2012-04-06 应用接入智能卡的认证方法、装置和系统

Publications (2)

Publication Number Publication Date
CN103368735A true CN103368735A (zh) 2013-10-23
CN103368735B CN103368735B (zh) 2018-05-04

Family

ID=49299942

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210099919.1A Expired - Fee Related CN103368735B (zh) 2012-04-06 2012-04-06 应用接入智能卡的认证方法、装置和系统

Country Status (2)

Country Link
CN (1) CN103368735B (zh)
WO (1) WO2013149426A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105245526A (zh) * 2015-10-19 2016-01-13 中国联合网络通信集团有限公司 调用sim卡应用的方法与装置
CN105610766A (zh) * 2014-11-20 2016-05-25 中兴通讯股份有限公司 一种登录云桌面的方法和装置
CN106156548A (zh) * 2015-04-10 2016-11-23 杭州海康威视数字技术股份有限公司 用于程序加密的认证方法和装置
CN106778251A (zh) * 2015-11-20 2017-05-31 北京计算机技术及应用研究所 防止重放攻击的口令鉴别方法
CN109981284A (zh) * 2019-03-11 2019-07-05 北京三未信安科技发展有限公司 一种椭圆曲线数字签名的实现方法及装置
CN111211906A (zh) * 2019-12-20 2020-05-29 福建魔方电子科技有限公司 实现终端设备一机一密的方法、系统、装置、设备和介质
CN111954196A (zh) * 2020-08-18 2020-11-17 龙杰科技(深圳)有限公司 基于蓝牙的智能卡充值方法、系统、终端设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1870040A (zh) * 2006-03-24 2006-11-29 陈龙军 一种电子交易认证方法及其使用的识读和传输设备
CN101231768A (zh) * 2008-01-25 2008-07-30 北京深思洛克数据保护中心 一种多应用智能卡及实现智能卡多应用的方法
CN101511051A (zh) * 2008-12-31 2009-08-19 北京握奇数据系统有限公司 电信智能卡的应用业务下载方法、系统及设备
US20100313277A1 (en) * 2007-10-31 2010-12-09 Cyrille Pepin Method for managing access rights in a smart card
US20110055573A1 (en) * 2009-09-03 2011-03-03 International Business Machines Corporation Supporting flexible use of smart cards with web applications
CN102034036A (zh) * 2010-09-07 2011-04-27 北京握奇数据系统有限公司 权限管理的方法及设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101042737B (zh) * 2006-03-24 2011-05-25 中国银联股份有限公司 一种智能卡及向智能卡中创建应用、插入对象的方法
CN101459512B (zh) * 2007-12-11 2010-11-10 结行信息技术(上海)有限公司 通过不受信任通讯渠道对智能卡安装/初始化应用的方法
CN101719821B (zh) * 2008-10-09 2012-06-13 爱思开电讯投资(中国)有限公司 智能卡应用程序管理系统及其方法
CN101729493B (zh) * 2008-10-28 2012-09-05 中兴通讯股份有限公司 密钥分发方法和系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1870040A (zh) * 2006-03-24 2006-11-29 陈龙军 一种电子交易认证方法及其使用的识读和传输设备
US20100313277A1 (en) * 2007-10-31 2010-12-09 Cyrille Pepin Method for managing access rights in a smart card
CN101231768A (zh) * 2008-01-25 2008-07-30 北京深思洛克数据保护中心 一种多应用智能卡及实现智能卡多应用的方法
CN101511051A (zh) * 2008-12-31 2009-08-19 北京握奇数据系统有限公司 电信智能卡的应用业务下载方法、系统及设备
US20110055573A1 (en) * 2009-09-03 2011-03-03 International Business Machines Corporation Supporting flexible use of smart cards with web applications
CN102034036A (zh) * 2010-09-07 2011-04-27 北京握奇数据系统有限公司 权限管理的方法及设备

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105610766A (zh) * 2014-11-20 2016-05-25 中兴通讯股份有限公司 一种登录云桌面的方法和装置
CN106156548A (zh) * 2015-04-10 2016-11-23 杭州海康威视数字技术股份有限公司 用于程序加密的认证方法和装置
CN106156548B (zh) * 2015-04-10 2019-01-08 杭州海康威视数字技术股份有限公司 用于程序加密的认证方法和装置
CN105245526A (zh) * 2015-10-19 2016-01-13 中国联合网络通信集团有限公司 调用sim卡应用的方法与装置
CN105245526B (zh) * 2015-10-19 2018-06-19 中国联合网络通信集团有限公司 调用sim卡应用的方法与装置
CN106778251A (zh) * 2015-11-20 2017-05-31 北京计算机技术及应用研究所 防止重放攻击的口令鉴别方法
CN109981284A (zh) * 2019-03-11 2019-07-05 北京三未信安科技发展有限公司 一种椭圆曲线数字签名的实现方法及装置
CN111211906A (zh) * 2019-12-20 2020-05-29 福建魔方电子科技有限公司 实现终端设备一机一密的方法、系统、装置、设备和介质
CN111211906B (zh) * 2019-12-20 2023-09-26 福建魔方电子科技有限公司 实现终端设备一机一密的方法、系统、装置、设备和介质
CN111954196A (zh) * 2020-08-18 2020-11-17 龙杰科技(深圳)有限公司 基于蓝牙的智能卡充值方法、系统、终端设备及存储介质

Also Published As

Publication number Publication date
WO2013149426A1 (zh) 2013-10-10
CN103368735B (zh) 2018-05-04

Similar Documents

Publication Publication Date Title
US9722775B2 (en) Network services via trusted execution environment
CN108462710B (zh) 认证授权方法、装置、认证服务器及机器可读存储介质
US9445269B2 (en) Terminal identity verification and service authentication method, system and terminal
CN101401465B (zh) 用于在移动网络中进行递归认证的方法和系统
CN103368735A (zh) 应用接入智能卡的认证方法、装置和系统
CN102859966A (zh) 无线网络认证装置与方法
CN102056077B (zh) 一种通过密钥进行智能卡应用的方法和装置
JP2012530311A5 (zh)
CN104301110A (zh) 应用于智能终端的身份验证方法、身份验证设备和系统
CN101621794A (zh) 一种无线应用服务系统的安全认证实现方法
CN101777978A (zh) 一种基于无线终端的数字证书申请方法、系统及无线终端
US20120142315A1 (en) Method for authentication and key establishment in a mobile communication system and method of operating a mobile station and a visitor location register
CN101841814B (zh) 终端鉴权方法及系统
CN101990201B (zh) 生成gba密钥的方法及其系统和设备
CN103037366A (zh) 基于非对称密码技术的移动终端用户认证方法及移动终端
CN109151823B (zh) eSIM卡鉴权认证的方法及系统
CN105763517A (zh) 一种路由器安全接入和控制的方法及系统
CN104506527A (zh) 多维信息指针平台及其数据访问方法
CN104144411A (zh) 加密、解密终端及应用于终端的加密和解密方法
CN104994498B (zh) 一种终端应用与手机卡应用交互的方法及系统
CN103024735A (zh) 无卡终端的业务访问方法及设备
CN107786978B (zh) 基于量子加密的nfc认证系统
KR101680536B1 (ko) 기업용 모바일 업무데이터 보안 서비스 방법 및 그 시스템
CN102202291B (zh) 无卡终端及其业务访问方法及系统、有卡终端及初始化服务器
CN109801423A (zh) 一种基于蓝牙的车辆控制方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180504

Termination date: 20200406

CF01 Termination of patent right due to non-payment of annual fee