一种智能卡进行外部应用通讯的方法

文档序号:7715955阅读:167来源:国知局
专利名称:一种智能卡进行外部应用通讯的方法
技术领域
本发明涉及智能卡应用系统,尤其涉及智能卡与外部的应用通讯。
背景技术
现在的智能卡主要使用APDU协议和外部应用通讯,直接支持HTTP协议的卡片 很少,在电信领域的智能卡通常通过BIP (Beared Independented Protocol)来承载HTTP协
议,而以后智能卡直接支持HTTP协议的发展趋势非常明显,这也意味着HTTP协议将成 为另一个智能卡和外部应用的通讯协议。APDU协议基于串口通讯协议,具备特定的数据结构,如图Ia所示终端发送命令C-APDU用于发送命令,其中CLA标识指令的类别;INS标识具 体的指令;Pl和P2标识指令的参数;Lc标识指令的数据域长度,可选;DATA标识指 令的数据域,可选;Le标识要求返回的数据长度,可选。命令的响应R-APDU用于接受命令响应,如图Ib所示,DATA标识响应的数 据;SW标识指令的执行状态。HTTP协议是基于文本的协议,定义于RFC2616[4],HTTP请求和响应附带有许
多头信息,这些头信息说明的内容包括网页资源类型、大小、压缩格式、用户名和密 码验证,重定向,时间日期,网页条件,网页缓冲,网络连接状态等等。APDU协议和HTTP协议目前二者在智能卡的使用上是并行的关系,没有进行一 体化设计。APDU协议具有简单直观的特点,易于接受和理解,而且是面向功能和过程 的协议;HTTP协议是传统上WEB应用的协议,主要用于文本交互,面向功能和过程的 能力较弱。而智能卡同时支持两种协议的复杂度较高,实现的成本和效率值得考虑,如 果通过HTTP协议来支撑APDU协议,既可以符合未来智能卡应用接口的发展趋势,也能 保留APDU协议直观简单的特点
发明内容
本发明的目的在于一种智能卡进行外部应用通讯的方法,本发明定义了如何 在HTTP协议之上实现APDU协议的方法的细节,使得应用和智能卡之间的交互仍能保留 简单直观的优点。本发明揭示了一种智能卡进行外部应用通讯的方法,智能卡设置有WEB服务 器,在智能卡与外部终端进行外部通讯时,通过HTTP协议承载APDU来进行外部应用通 讯,使用HTTP方法传递APDU命令,终端发送命令包含在HTTP请求的请求体中,命令 的响应保存在HTTP请求的响应中。进一步地通过HTTP协议PUT方法往所述的WEB服务器写数据,数据包含在数 据体;通过HTTP协议POST方法向所述的WEB服务器发送服务请求,请求的附加信息 包含在数据体;通过HTTP协议GET方法向所述WEB服务器请求获取数据,目标数据 的路径由URL指明,没有数据体;通过HTTP协议DELETE方法告诉所述WEB服务器“删除”指定路径的信息。进一步地智能 卡与终端进行外部应用通讯的方法包括如下步骤步骤1使用HTTP方法传递APDU命令,终端发送命令包含在HTTP请求的请求 体中;步骤2WEB服务器接受和处理终端发送命令,如果是发送给当前应用的APDU 命令,由CWS派发给当前应用;步骤3命令的响应保存在HTTP请求的响应中返回到终端。进一步地通过HTTP协议承载APDU来进行外部应用通讯,使用HTTP方法传 递APDU命令,其中所使用的HTTP方法包括PUT方法,POST方法,GET方法, DELETE方法,HEAD方法,TRACE方法。进一步地智能卡WEB服务器支持的HTTP头信息包括用户名及密码校验,资 源的压缩格式,资源的长度,资源原始位置,资源类型,HTTP命令带入的日期时间,资 源位置重定向,发送警告信息,询问用户名和密码,HTTP命令结束后关闭连接。本发明使终端访问智能卡的界面统一到HTTP协议上来,且保留了 APDU简单直 观的特点,便于应用开发和理解。


图Ia为C-APDU数据结构;图Ib为R-APDU数据结构;图2为本发明AOH原理图。
具体实施例方式本发明提出了 A0H(APDU over HTTP)应用,即采用HTTP方法来转义APDU
命令,用它定义了应用访问智能卡的方法,传统上智能卡提供给应用访问的协议是 APDU协议,它具有简单、直观的特点,易于理解和定义。传统的智能卡应用都是采用 APDU协议和外部终端进行通讯,通讯的方式是被动的,即终端发送命令(COMMAND APDU,简写C-APDU)给卡片,卡片返回命令的响应(RESPONSE APDU,简写 R-APDU),如此循环完成交互。具体到某个应用的话,例如PBOC电子钱包应用,则根 据应用本身定义的流程发送C-APDU和接收R-APDU来完成。在智能卡支持WEB服务 器之后,智能卡和外部应用的交互协议以目前流行的HTTP协议为主,这种协议主要是 用于文本交互的目的,本提案定义了如何在HTTP协议之上实现APDU协议的方法的细 节,使得应用和智能卡之间的交互仍能保留简单直观的优点。HTTP协议承载APDU协议AOH (APDU over HTTP)命令是通过HTTP协议传递 APDU命令。AOH使用HTTP方法传递APDU命令,C_APDU包含在HTTP请求的请 求体中;R_APDU保存在HTTP请求的响应中。AOH命令由CWS (Card Web Server)接
受和处理,如果是发送给当前应用的APDU命令,由CWS派发给当前应用,R_APDU保 存在HTTP请求的响应中返回到终端,如图2所示。PUT方法在HTTP协议里指的是客户端程序往服务器“写”数据,数据包含在 数据体。利用这个方法的含义可以“转义” APDU的部分命令,如更新文件和创建文件等;POST方法在HTTP协议里指的的客户端程序向服务器发送服务请求,请求的附 加信息包含在数据体。利用这个方法的含义可以转义所有的APDU命令。GET方法是指客户端向服务器请求获取数据,目标数据的路径由URL指明,没 有数据体。利用这个方法可以转义APDU命令的读取文件内容的指令。DELETE方法指客户端告诉服务器“删除”指定路径的信息。利用该命令转义 APDU命令里的删除文件指令。HTTP协议承载APDU协议的定义如表1
权利要求
1.一种智能卡进行外部应用通讯的方法,所述智能卡包括一个WEB服务器,其特征 在于所述智能卡通过HTTP协议承载APDU来进行外部应用通讯,使用HTTP方法传递 APDU命令,终端发送命令包含在HTTP请求的请求体中,命令的响应保存在HTTP请求 的响应中。
2.根据权利要求1所述的一种智能卡进行外部应用通讯的方法,其特征在于通过 HTTP协议PUT方法往所述的WEB服务器写数据,数据包含在数据体。
3.根据权利要求2所述的一种智能卡进行外部应用通讯的方法,其特征在于通过 HTTP协议POST方法向所述的WEB服务器发送服务请求,请求的附加信息包含在数据 体。
4.根据权利要求3所述的一种智能卡进行外部应用通讯的方法,其特征在于通过 HTTP协议GET方法向所述WEB服务器请求获取数据,目标数据的路径由URL指明, 没有数据体。
5.根据权利要求4所述的一种智能卡进行外部应用通讯的方法,其特征在于通过 HTTP协议DELETE方法告诉所述WEB服务器“删除”指定路径的信息。
6.根据权利要求1或5所述的一种智能卡进行外部应用通讯的方法,其特征在于所 述进行外部应用通讯的方法包括如下步骤步骤1使用HTTP方法传递APDU命令,终端发送命令包含在HTTP请求的请求体中;步骤2WEB服务器接受和处理终端发送命令,如果是发送给当前应用的APDU命 令,由CWS派发给当前应用;步骤3命令的响应保存在HTTP请求的响应中返回到终端。
7.根据权利要求1或5所述的一种智能卡进行外部应用通讯的方法,其特征在于所 述通过HTTP协议承载APDU来进行外部应用通讯,使用HTTP方法传递APDU命令,其 中所使用的HTTP方法包括PUT方法,POST方法,GET方法,DELETE方法,HEAD 方法,TRACE方法。
8.根据权利要求1或5所述的一种智能卡进行外部应用通讯的方法,其特征在于所 述WEB服务器支持的HTTP头信息包括用户名及密码校验,资源的压缩格式,资源的 长度,资源原始位置,资源类型,HTTP命令带入的日期时间,资源位置重定向,发送警 告信息,询问用户名和密码,HTTP命令结束后关闭连接。
全文摘要
本发明公布了一种智能卡进行外部应用通讯的方法,所述智能卡包括一个WEB服务器,所述智能卡通过HTTP协议承载APDU来进行外部应用通讯,通过HTTP协议方法来传递APDU命令,终端发送命令包含在HTTP请求的请求体中,WEB服务器接受和处理终端发送命令,如果是发送给当前应用的APDU命令,由CWS派发给当前应用,命令的响应保存在HTTP请求的响应中返回到终端。本发明使终端访问智能卡的界面统一到HTTP协议上来,且保留了APDU简单直观的特点,便于应用开发和理解。
文档编号H04L29/06GK102025711SQ20091019562
公开日2011年4月20日 申请日期2009年9月11日 优先权日2009年9月11日
发明者何朔, 孟宏文, 庄晓, 鲁志军 申请人:中国银联股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1