兴邦科技

3.2 代理设计
终端作为网络上的节点,首先需要具有网卡设备连接网络,如果需要本地访问服务器还需内嵌标准或剪裁的浏览器,作为连接智能卡设备需要安装有PCSC 相关驱动,最后,由于智能卡结构限制,智能卡采用的协议栈跟传统网络协议栈不同,这样终端需要安装代理软件。代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息。形象的说:它是网络信息的中转站。在一般情况下,我们使用网络浏览器直接去连接其他Internet站点取得网络信息时,须送出Request 信号来得到回答,然后对方再把信息以bit 方式传送回来。代理服务器是介于浏览器和Web 服务器之间的一台服务器,有了它之后,浏览器不是直接到Web 服务器去取回网页而是向代理服务器发出请求,Request 信号会先送到代理服务器,由代理服务器来取回浏览器所需要的信息并传送给你的浏览器[5]。
通用的代理服务器主要实现的是缓冲和存储功能,而这里的智能卡代理服务器跟通用的代理服务器有一些区别,主要是应用了代理服务器的基本定义,及智能卡服务器所需要的一些附加功能。作为实际的服务器智能卡和浏览器中间的桥梁,代理服务器转接了两边传递的有效信息,这就需要代理服务器既能有效的和浏览器交互,也能有效的和智能卡进行交互,此外,根据智能卡web 服务器的一些特点,需要给终端的代理服务器添加一些特定的功能。
3.3 卡端服务器设计
首先从层次结构上来讲,智能卡的最低层就是其硬件构成,处理器,存储器等,然后是硬件及接口的驱动程序[6];接下来就是智能卡的操作系统,即COS,COS 向上层屏蔽了底层的硬件实现,支撑了智能卡的文件系统调度,上层协议和应用等;再上层,就分为传统的智能卡应用和本文中的web 服务器应用两个分支,对于要研究web 服务器这一分支,智能卡COS 上实现了一个web server,通过web server 支持上层的具体智能卡web 应用,整体层次如图2 所示:
对于智能卡web 服务器功能,首先需要设计智能卡操作系统对web server 的支撑研究及智能卡web server 的模块组成,实现模式,数据收发等内容。首先需要实现跟外界交互,这就需要有通信协议栈。通过通信接口收发进来的数据通过状态机分发给http 引擎处理http层的数据,http 引擎对应的支撑部分由http 请求解析器,处理机,CGI 解析器,配置器,数据库支撑等,各部分根据职责分别处理不同方面的内容,并统一的由智能卡操作系统和文件系统共同支撑。
4 web 智能卡动态多应用技术实现
4.1 多应用技术实现
web 服务器的应用是通过应用层的网页和程序资源静态或动态调用实现的,通过不同的逻辑调用和分离具有先天的多应用性,一系列资源文件的组合就可以构成一个应用,服务器只需完成不同应用间的逻辑和安全性隔离以及开发对应的应用入口即可实现。
在智能卡中实现设计如下。每个ADF 对应一个web 应用,ADF 下包含了该应用所拥有的所有DF 和EF。任何情况下,通过使用ADF 的AID 访问一个ADF 马上能将该ADF 选为当前应用,ADF 的根目录为当前目录。这样通过ADF 实现对不同应用资源序列的逻辑隔离,通过ADF 在MF 索引文件中的注册提供应用的逻辑入口。在安全方面,ADF 是应用的根目录,这样它能利用智能卡文件系统的上的PIN 索引指定了该应用的安全属性, 存取该ADF下的目录DF 和普通文件EF 需要验证这个PIN,利于同一应用的安全管理和不同应用间的安全隔离。主目录通过应用管理文件管理卡上web 应用,每个web 应用对应一个ADF 结构存储,拥有相对独立的文件结构和安全属性等[7]。
4.2 动态技术实现
动态应用智能卡是指能够在发卡后在卡上动态的删除,安装,更新应用。传统的单应用智能卡不具备动态技术是因为其应用是以底层的c 语言程序的形式同智能卡COS 绑定到一起共同下载到智能卡上的,这种下载时下载转换后的二进制码实现的,直接由智能卡处理器解析,这种应用不具备动态性。要实现动态的智能卡应用,就需要使应用逻辑动态执行,把有处理器执行应用逻辑的功能剥离出来由上层框架模块实现。直接的解决办法就是设计智能卡能够支持的服务器脚本,并设计开发相应的脚本解析器,通过解析器对脚本的动态解析实现随时加入的应用逻辑运行。这就实现了动态应用的最基本的问题,此外,动态技术能够在发卡后动态的删除,安装,更新web 应用,这部分功能可以借助APDU 指令,直接把上层的web 应用资源文件转化为APDU 指令序列,写入智能卡文件系统实现动态安装,删除和更新也可类似实现[8]。
5 总结
本文通过对动态多应用智能卡和web 技术的研究,提出了以web 技术实现动态多应用智能卡的技术方案。通过在智能卡上实现轻量级的web 服务器,借助web 服务器的概念和功能,提供web 应用层的多应用,并提出了基于web 技术的动态多应用智能卡的重要技术问题的解决办法。对多应用智能卡研究的新方法有一定指导意义,并且扩充了智能卡应用的广度与实现形式。但本框架目前仍存在着不足之处, 智能卡应用的层次被提升到web 应用层,直接的影响会带来应用数据量的加大,一方面原因是由于协议层次增加造成附加数据,另一方面是web 应用本身就需要各种大容量资源,这会对智能卡的存储能力提出一定挑战,需要进一步的研究以待解决;另外现有的智能卡接口传输速度还相对较低,在面对web 应用的大数据量传输会造成应用响应时间较长,发展到可接受的范围之内尚需硬件技术上的进一步提高。但这一定程度上也会加速智能卡技术的进一步发展。
|
网站地图
|
||||||||||||