CN106598551B - 一种智能卡、智能卡的处理方法和装置 - Google Patents

一种智能卡、智能卡的处理方法和装置 Download PDF

Info

Publication number
CN106598551B
CN106598551B CN201611167841.7A CN201611167841A CN106598551B CN 106598551 B CN106598551 B CN 106598551B CN 201611167841 A CN201611167841 A CN 201611167841A CN 106598551 B CN106598551 B CN 106598551B
Authority
CN
China
Prior art keywords
application
smart card
class
instruction
entrance
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.)
Active
Application number
CN201611167841.7A
Other languages
English (en)
Other versions
CN106598551A (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.)
Datang Microelectronics Technology Co Ltd
Datang Semiconductor Design Co Ltd
Original Assignee
Datang Microelectronics Technology Co Ltd
Datang Semiconductor Design Co Ltd
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 Datang Microelectronics Technology Co Ltd, Datang Semiconductor Design Co Ltd filed Critical Datang Microelectronics Technology Co Ltd
Priority to CN201611167841.7A priority Critical patent/CN106598551B/zh
Publication of CN106598551A publication Critical patent/CN106598551A/zh
Application granted granted Critical
Publication of CN106598551B publication Critical patent/CN106598551B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例公开了一种智能卡、智能卡的处理方法和装置。本发明实施例提供的智能卡包括:多个第一应用入口类,与每个第一应用入口类分别对应的多个第二应用入口类,以及管理入口类,每个第一应用入口类分别和对应的第二应用入口类具有相同的应用功能;管理入口类,用于管理第二智能卡的应用;每个第二应用入口类,用于在管理入口类调用本第二应用入口类时,处理管理入口类分发给本第二应用入口类的指令;每个第一应用入口类,用于接收和处理Java平台分发的指令。本发明实施例解决了现有技术中的兼容Java卡和Nativ卡的结构,由于两种卡的结构之间分立、隔离,而导致智能卡的开发成本和空间成本较高的问题。

Description

一种智能卡、智能卡的处理方法和装置
技术领域
本申请涉及但不限于智能卡和通信技术领域,尤指一种智能卡、智能卡的处理方法和装置。
背景技术
随着电子技术信息的发展,由于智能卡具有携带方便、持久保持和灵活交易等优势,智能卡的应用已涉及到人类生活的各个领域,例如商业、医疗、保险、交通、社会公共事业等。
在智能卡领域中,Native卡和Jave卡为两种应用较为广泛的智能卡,我国用户使用的传统智能卡以Native卡为主,而目前的发展趋势是Jave卡逐渐成为智能卡的主流应用。由于Java卡作为高安全性智能卡,具有国际性统一的技术标准及规范,被许多国家应用于金融、运输、电信等领域,并且由于Java卡的多应用性、可移植性、灵活性等优势使其成为了多应用智能卡发展的主要选择。然而,集成电路(Integrated Circuit,简称为:IC)行业并非互相兼容,随之形成的现象是,用户手里的智能卡的数量越来越多,一定程度上对用户保存、携带和使用智能卡带来不便因素,也造成了社会资源的严重浪费。随着智能卡性能、存储空间等指标的提升,“一卡通”、跨行业、多应用的趋势逐渐普及,一卡多用的需求越来越明显,结合我国传统智能卡以Native卡为主的应用现状,由Native卡向Java卡过渡的转换时期,在进行“一卡多用”的整合过程中,提出了对旧设备和Native卡行业应用兼容的要求。目前已提出一种兼容Java卡和Nativ卡的结构,如图1所示,为现有技术中的一种兼容Java卡和Nativ卡的结构示意图,由图1所示的结构可以看出,该设计方法虽然在一张只能卡上分别实现了Native卡结构和Java卡的结构,但是由于两种卡的结构之间分立、隔离,空间占用较大,在接收指令时,如果是选择应用指令则根据指令携带的标识属性来决定该指令进入哪一种卡的结构,其他指令则需要根据上下文环境选择卡的结构。
综上所述,现有技术中的兼容Java卡和Nativ卡的结构,由于两种卡的结构之间分立、隔离,仍然需要单独开发Native卡的应用(Applet),而导致智能卡的开发成本和空间成本较高的问题。
发明内容
为了解决上述技术问题,本发明实施例提供了一种智能卡、智能卡的处理方法和装置,以解决现有技术中的兼容Java卡和Nativ卡的结构,由于两种卡的结构之间分立、隔离,仍然需要单独开发Native卡的应用(Applet),而导致智能卡的开发成本和空间成本较高的问题。
本发明实施例提供一种智能卡,包括:
所述智能卡为配置有Java平台的智能卡,所述智能卡包括:多个第一应用入口类,与每个第一应用入口类分别对应的多个第二应用入口类,以及管理入口类,每个第一应用入口类分别和对应的第二应用入口类具有相同的应用功能;
其中,所述管理入口类作为第二智能卡的接口,用于管理所述第二智能卡的应用,其中,所述管理入口类管理所述第二智能卡的应用,包括:将从所述Java平台接收到的指令分发给所述第二智能卡进行处理,并根据所述指令的内容调用相应的第二应用入口类;
所述每个第二应用入口类作为所述第二智能卡中应用的接口,用于在所述管理入口类调用本第二应用入口类时,处理所述管理入口类分发给本第二应用入口类的指令;
所述每个第一应用入口类作为第一智能卡中应用的接口,用于接收和处理所述Java平台分发的指令。
可选地,如上所述的智能卡中,还包括:多个应用功能抽象类和管理抽象类,每个应用功能抽象类中包括所述第二智能卡的目录结构;
其中,所述每个应用功能抽象类,用于在本应用功能抽象类中增加所述第一智能卡和所述第二智能卡所通用的应用功能;
所述管理抽象类,用于管理所述第二智能卡的应用;其中,所述管理抽象类管理所述第二智能卡的应用,包括:在指令选中应用时,根据所述第二智能卡的目录结构将所述指令分发给所选中的应用进行处理;
所述每个第一应用入口类分别和对应的第二应用入口类具有相同的应用功能,是指:所述每个第一应用入口类分别和对应的第二应用入口类,用于继承相同的应用功能抽象类;
所述每个第二应用入口类,用于继承本第二应用入口类对应的应用功能抽象类;
所述管理入口类,用于继承所述管理抽象类;所述管理入口类根据所述指令的内容调用相应的第二应用入口类,包括:根据所述指令的内容以所述第二智能卡的目录结构的形式调用相应的第二应用入口类。
可选地,如上所述的智能卡中,还包括:底层系统库和基础框架库,所述基础框架库中包括目录结构类和目录应用类;
其中,所述底层系统库中包括文件系统和应用之间共享的接口;
所述目录结构类中包括所述第二智能卡的目录结构;
所述目录应用类,用于继承所述目标结构类,还用于修改所述目录应用类实例化的对象中第二智能卡的目录结构,还用于根据指令调用底层系统库中的所述文件系统的功能;
所述每个应用功能抽象类中包括所述第二智能卡的目录结构,是指:所述每个应用功能抽象类,用于继承所述目录应用类。
可选地,如上所述的智能卡中,所述每个第一应用入口类,还用于修改和添加本第一应用入口类所继承的应用功能抽象类的应用;
所述每个第二应用入口类,还用于修改和添加本第二应用入口类所继承的应用功能抽象类的应用。
可选地,如上所述的智能卡中,还包括:第一应用入口子类和所述第二应用入口子类;
所述第一应用入口子类,用于继承对应的第一应用入口类,并修改和添加本第一应用入口子类所继承的第一应用入口类的应用;
所述第二应用入口子类,用于继承对应的第二应用入口类,并修改和添加本第二应用入口子类所继承的第二应用入口类的应用。
可选地,如上所述的智能卡中,
Java平台,用于在接收到第一安装指令时,将所述第一安装指令指示的第一应用入口实例化为第一应用对象;
Java平台,还用于在接收到第二安装指令时,根据所述第二安装指令将所述管理入口类实例化为管理入口对象;
每个所述管理入口对象,用于管理本管理入口对象形成的第二智能卡中的应用对象。
可选地,如上所述的智能卡中,所述第二智能卡中的应用对象包括:第二根目录应用对象、第二目录应用对象和第二应用对象;
所述管理入口对象,用于根据所述管理入口对象选择的第二应用入口类或者根据从所述Java平台接收的第一创建指令所指示的第二应用入口类,创建第二根目录应用对象;
所述第二根目录应用对象,用于根据接收到的第二创建指令创建第二目录应用对象和所述第二应用对象;
所述第二目录应用对象,用于根据接收到的第三创建指令创建其它第二目录应用对象和第二应用对象;
所述第二根目录应用对象、所述第二目录应用对象和所述第二应用对象,用于根据接收到的第四创建指令创建基本文件EF文件。
可选地,如上所述的智能卡中,
所述管理入口对象,还用于根据所述管理入口对象中的当前选中目录调用所述第二智能卡中的应用对象,通过所调用的应用对象处理所述管理入口对象接收到的指令;
所述第二智能卡中的应用对象,用于通过第二智能卡管理应用接口调用所述管理入口对象,并修改所述管理入口对象中的内容。
本发明实施例还提供一种智能卡,所述智能卡为配置有Java平台的智能卡,所述智能卡包括:多个第一应用入口类,与每个第一应用入口类分别对应的多个第二应用入口类,以及管理入口类,每个第一应用入口类分别和对应的第二应用入口类具有相同的应用功能;
所述Java平台包括:
接口模块,用于通过接收终端设备发送的指令;
处理模块,用于根据所述接口模块接收的指令的内容,将所述指令分发给第一应用入口类或管理入口类;
其中,所述管理入口类作为第二智能卡的接口,用于管理所述第二智能卡的应用;其中,所述管理入口类管理所述第二智能卡的应用,包括:将从所述处理模块接收的指令分发给所述第二智能卡进行处理,并根据所述指令的内容调用相应的第二应用入口类;
所述每个第二应用入口类作为所述第二智能卡中应用的接口,用于在所述管理入口类调用本第二应用入口类时,处理所述管理入口类分发给本第二应用入口类的指令;
所述每个第一应用入口类作为第一智能卡中应用的接口,用于接收和处理所述处理模块分发的指令。
本发明实施例还提供一种智能卡的处理方法,所述方法采用如上任一项所述的智能卡执行,所述方法包括:
所述智能卡的Java平台接收终端设备发送的指令,所述指令中包括选中指令,所述选中指令中包括应用编号ID;
所述智能卡的Java平台根据已接收的选中指令中的应用ID,将所述已接收的选中指令和其他指令分发给第一智能卡或其中一个第二智能卡;其中,所述其他指令为所述已接收的选中指令到下一次接收的选中指令之间接收的指令。
可选地,如上所述的智能卡的处理方法中,当所述应用ID指示为指定第二智能卡的应用时,所述智能卡的Java平台根据所述应用ID,将所述已接收的选中指令和所述其他指令分发给其中一个第二智能卡,包括:
所述Jave平台根据所述应用ID,将所述已接收的选中指令和所述其他指令分发给所述指定第二智能卡的管理入口对象,使得所述管理入口对象根据每个指令执行相应的操作。
可选地,如上所述的智能卡的处理方法中,当所述应用ID指示为所述第一智能卡的应用时,所述智能卡的Java平台根据所述应用ID,将所述已接收的选中指令和所述其他指令分发给所述第一智能卡,包括:
所述Jave平台根据所述应用ID,将所述已接收的选中指令和所述其他指令分发给所述第一智能卡中所述应用ID所指示的第一应用对象。
本发明实施例还提供一种智能卡的处理装置,所述装置设置于如上任一项所述的智能卡中,所述装置包括:
接收模块,用于接收终端设备发送的指令,所述指令中包括选中指令,所述选中指令中包括应用编号ID;
分发模块,用于根据所述接收模块已接收的选中指令中应用ID,将所述已接收的选中指令和所述接收模块接收的其他指令分发给第一智能卡或其中一个第二智能卡;其中,所述其他指令为所述接收模块在所述已接收的选中指令到下一次接收的选中指令之间接收的指令。
可选地,如上所述的智能卡的处理装置中,当所述应用ID指示为指定第二智能卡的应用时,所述分发模块根据所述应用ID,将所述已接收的选中指令和所述其他指令分发给其中一个第二智能卡,包括:
根据所述应用ID,将所述已接收的选中指令和所述其他指令分发给所述指定第二智能卡的管理入口对象,使得所述管理入口对象根据每个指令执行相应的操作。
可选地,如上所述的智能卡的处理装置中,当所述应用ID指示为所述第一智能卡的应用时,所述分发模块根据所述应用ID,将所述已接收的选中指令和所述其他指令分发给所述第一智能卡,包括:
根据所述应用ID,将所述已接收的选中指令和所述其他指令分发给所述第一智能卡中所述应用ID所指示的第一应用对象。
本发明实施例提供的智能卡、智能卡的处理方法和装置中,智能卡为配置有Java平台的智能卡,该智能卡中:每个第一应用入口类和与其对应的第二应用入口类具有相同的应用功能,管理入口类用于管理第二智能卡的应用;该智能卡通过管理入口类接收和处理Java平台分发的指令,将指令分发给第二智能卡,并根据指令的内容调用相应的第二应用入口类,并通过每个第二应用入口类处理管理入口类分发给本第二应用入口类的指令,还通过每个第一应用入口类接收和处理Java平台分发的指令;本发明实施例提供的智能卡,通过为每个第一应用入口类和与其对应的第二应用入口类配置有相同的应用功能,使得第一智能卡和第二智能卡可以共用应用,即在兼容第一智能卡和第二智能卡的结构的基础上,实现了一卡多用和大部分代码的复用,有利于节约智能卡的空间并降低开发成本,解决了现有技术中的兼容Java卡和Native卡的结构,由于两种卡的结构之间分立、隔离,仍然需要单独开发Native卡的应用,而导致智能卡的开发成本和空间成本较高的问题。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为现有技术中的一种兼容Java卡和Nativ卡的结构示意图;
图2为本发明实施例提供的一种智能卡的结构示意图;
图3为本发明实施例提供的另一种智能卡的结构示意图;
图4为本发明实施例提供的又一种智能卡的结构示意图;
图5为本发明实施例提供的智能卡中一种应用入口层的结构示意图;
图6为本发明实施例提供的再一种智能卡的结构示意图;
图7为本发明实施例提供的智能卡中一种第二智能卡的结构示意图;
图8为本发明实施例提供的还一种智能卡的结构示意图;
图9为本发明实施例提供的一种智能卡的处理方法的流程图;
图10为本发明实施例提供的智能卡的处理方法中一种分发指令的示意图;
图11为本发明实施例提供的一种智能卡的处理装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在智能卡领域中,Native卡和Jave卡为两种应用较为广泛的智能卡。Native卡具有运行速度快、硬件要求低的特点,架构及其创建指令大多为私有自定义指令;Java卡,具有一卡多用,应用灵活,可移植性高的特点,架构及其创建指令符合全球平台国际标准组织(Global Platform,简称为:GP)规范。这两种卡的实现结构由于原理不同,不能兼容通用。
国外智能卡大多选择Java卡及Multos卡作为主要使用的智能卡,尤其是Java卡,作为高安全性智能卡,具有国际性统一的技术标准及规范,被许多国家应用于金融、运输、电信等领域;我国用户使用的传统智能卡以Native卡为主,而Java卡的多应用性、可移植性、灵活性等优势使其成为了多应用智能卡发展的主要选择,再加上Java卡的国际性特点,为追求与国际统一,我国越来越多的行业开始发展Java卡,结合我国传统智能卡以Native卡为主的应用现状,由Native卡向Java卡过渡的转换时期,在进行“一卡多用”的整合过程中,提出了对旧设备和Native卡行业应用兼容的要求。
现有技术中智能卡存在以下几点缺点:
(1)、现有技术中的智能卡通常为Java卡和Native卡,标准Java卡不能兼容Native卡定制的指令集,所以无法在基于Native卡结构的设备和行业应用上使用;
(2)、若采用Native卡的设计方式进行“一卡多用”行业应用整合,则需要对每种行业应用进行开发,开发人员需要开发底层接口、内存管理等硬件相关的细节,工作量大、开发周期长,同时难以进行移植和更新升级;
(3)、虽然现有技术中已提出一种兼容Java卡和Nativ卡的结构的方案,然而,目前在Java卡上实现Native卡结构的通常做法如图1所示,Java卡结构和Native卡结构没有关系、完全隔离,必须在每张卡上写入该卡的应用,即需要单独开发Native卡的应用(Applet),不能做到和Java卡的应用高程度的代码复用,导致卡片空间成本居高;
(4)、现有技术中兼容Java卡和Nativ卡的结构方案,层次不分明,没有设计有效的补丁机制。
基于现有技术中智能卡的上述缺点,Native卡和Java卡的应用共存和兼容成为目前一个亟需解决的问题。
下面通过具体的实施例对本发明的技术方案进行详细说明,本发明以下各实施例中的智能卡为配置有Java平台的智能卡,该智能卡可以在Java平台的基础上兼容另一种智能卡的结构,实现了在一张物理卡中实现第一智能卡和多张第二智能卡的功能。本发明提供以下几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图2为本发明实施例提供的一种智能卡的结构示意图。本实施例提供的智能卡适用于兼容两种类型智能卡的应用的情况中,该智能卡通常以硬件和软件相结合的方式来实现。如图2所示,本实施例提供的智能卡为配置有Java平台的智能卡,该智能卡的逻辑结构包括应用入口层100,该应用入口层100包括:多个第一应用入口类110,与每个第一应用入口类110分别对应的多个第二应用入口类120,以及管理入口类130,每个第一应用入口类110分别和对应的第二应用入口类120具有相同的应用功能。
需要说明的是,本发明实施例中,每个第一应用入口类110可以具有与其对应的第二应用入口类120;在一种可能的实现方式中,每个第一应用入口类110具有一一对应的第二应用入口类120,在另一种可能的实现方式中,本发明实施例不限制第一应用入口类110与第二应用入口类120是一一对应的,例如,应用入口层100可以仅包括特定应用功能的第二应用入口类120,即指不包括与该第二应用入口类120具有相同应用功能的第一应用入口类110。
其中,管理入口类130作为第二智能卡的接口,用于管理第二智能卡的应用;该管理入口类130管理第二智能卡的应用,包括:将从Java平台接收到的指令分发给第二智能卡进行处理,并根据该指令的内容调用相应的第二应用入口类120;
每个第二应用入口类120作为第二智能卡中应用的接口,用于在管理入口类130调用本第二应用入口类120时,处理管理入口类130分发给本第二应用入口类120的指令;
每个第一应用入口类110作为第一智能卡中应用的接口,用于接收和处理Java平台分发的指令。
本发明实施例提供的智能卡,提供一种兼容两种类型智能卡的应用的方式,由于Java卡具有国际性统一的技术标准及规范,又是高安全性的智能卡,因此,本发明实施例中的智能卡的设计基于Java平台,即该智能卡为配置有Java平台的智能卡,并且在Java平台的基础上可以兼容其他类型智能卡的应用。需要说明的是,本发明实施例所描述的智能卡,例如为日常生活中常用的公交卡、身份认证卡、借记卡、贷记卡等,只要是可以通过与终端设备(例如为读卡器、刷卡机等)的通信执行应用的智能卡,都可以作为本发明实施例中的智能卡;另外,本实施例中描述的第一智能卡即为通过智能卡配置的Java平台实现的Java卡,第二智能卡为在Java平台的基础上,实现兼容的另一种类型的智能卡,例如是目前通常使用的Native卡,也可以是其它类型的智能卡。
在本发明实施例中,该智能卡的逻辑结构为设计要点,逻辑结构中最接近用户使用的为应用入口层100,该应用入口层100中的第一应用入口类110作为第一智能卡中应用的接口,每个第一应用入口类110可以具有第一智能卡的一种应用功能,由于需要兼容第二智能卡,应用入口层100中包括与每个第一应用入口类110分别对应的第二应用入口类120,该第二应用入口类120作为第二智能卡中应用的接口,并且每个第一应用入口类110和与其对应的第二应用入口类120具有相同的应用功能,这样,可以实现第一智能卡和第二智能卡具有相同的应用功能;另外,每个第二应用入口类120中包括的第二智能卡的目录结构,该目录结构即为该第二智能卡的树状目录的基础框架,该第二智能卡的应用通过目录结构的形式被管理入口类调用。以下分别说明应用入口层100中各类的属性和功能:
(1)、管理入口类130:具有应用(Applet)的属性,该管理入口类130作为第二智能卡的接口,用于管理第二智能卡的应用,并且可以与Java平台进行交互,是Java平台和第二智能卡的转接,该管理入口类130还用于接收和处理所述Java平台分发的指令,将该指令分发给第二智能卡,并根据该指令的内容调用相应的第二应用入口类120,该管理入口类130实例化的对象可以作为一张第二智能卡的管理代表。
(2)、第二应用入口类120:具有应用(Applet)的属性,不具备与Java平台进行交互的能力,该第二应用入口类120作为第二智能卡中应用的接口,可以被管理入口类130调用,能够处理管理入口类130所分发的指令,从而实现在第二智能卡中的各个应用。
上述管理入口类130和第二应用入口类120可以形成在一个“.cap”文件中,作为第二智能卡的应用功能的代表,实现了在Java平台上的第二智能卡的整体结构。
(3)、第一应用入口类110:具有应用(Applet)的属性,该第一应用入口类110作为第一智能卡中应用的接口,可以与Java平台进行交互,能够接收和处理Java平台所分发的指令,是符合第一智能卡(即Java卡)的应用,第一智能卡的应用包含在同一个“.cap”文件中,是Java平台的应用。
本发明实施例通过智能卡的逻辑结构中应用入口层100的设计,为每个第一应用入口类110和与其对应的第二应用入口类120配置有相同的应用功能,并且第二应用入口类120中包括的第二智能卡的目录结构即为该第二智能卡的树状目录的基础框架,这样,使得第一智能卡和第二智能卡可以共用应用,即第一智能卡和第二智能卡可以共用实现应用的代码,并通过一个空间占用很小的不同的“壳”实现了两种卡结构的兼容。本发明实施例的智能卡,在以Java平台为基础的结构上,实现了兼容第二智能卡的结构,并实现了两种智能卡可以共用应用,即大部分代码实现复用,有利于节约智能卡的空间。
现有技术中的兼容Java卡和Nativ卡的结构,虽然在形式上实现了一张物理卡兼容Java卡和Native卡的结构,然而,由于两种卡的结构之间分立、隔离,仍然需要单独开发Native卡的应用(Applet),而导致智能卡的开发成本和空间成本较高的问题。与现有技术中兼容Java卡和Nativ卡的结构的不同之处在于,本发明实施例的智能中,通过为每个第一应用入口类110和与其对应的第二应用入口类120配置有相同的应用功能,使得第一智能卡和第二智能卡可以共用实现应用的代码,本发明实施例的智能卡在兼容第一智能卡和第二智能卡的结构的基础上,实现了一卡多用和大部分代码的复用,有利于节约智能卡的空间并降低开发成本。
本发明实施例提供的智能卡为配置有Java平台的智能卡,该智能卡中:每个第一应用入口类和与其对应的第二应用入口类具有相同的应用功能,管理入口类用于管理第二智能卡的应用;该智能卡通过管理入口类接收和处理Java平台分发的指令,将指令分发给第二智能卡,并根据指令的内容调用相应的第二应用入口类,并通过每个第二应用入口类处理管理入口类分发给本第二应用入口类的指令,还通过每个第一应用入口类接收和处理Java平台分发的指令;本发明实施例提供的智能卡,通过为每个第一应用入口类和与其对应的第二应用入口类配置有相同的应用功能,使得第一智能卡和第二智能卡可以共用应用,即在兼容第一智能卡和第二智能卡的结构的基础上,实现了一卡多用和大部分代码的复用,有利于节约智能卡的空间并降低开发成本,解决了现有技术中的兼容Java卡和Native卡的结构,由于两种卡的结构之间分立、隔离,仍然需要单独开发Native卡的应用,而导致智能卡的开发成本和空间成本较高的问题。
可选地,图3为本发明实施例提供的另一种智能卡的结构示意图。在上述图2所示智能卡的逻辑结构的基础上,本实施例提供的智能卡,其逻辑结构还包括功能抽象层200,该功能抽象层200包括:多个应用功能抽象类210和管理抽象类220。以下分别说明功能抽象层200中各类的属性和功能:
(1)、应用功能抽象类210:声明为抽象(abstract)属性,每个应用功能抽象类210中包括第二智能卡的目录结构;每个应用功能抽象类210,用于在本应用功能抽象类210中增加第一智能卡和第二智能卡所通用的应用功能,即在第二智能卡的目录结构的基础上,实现各个行业应用的其他特定功能,例如,交易、权限管理等功能,其中各个功能进行模块化处理。
在本实施例中,每个应用功能抽象类210中包括第二智能卡的目录结构,也就是说,每个第二应用入口类120包括第二智能卡的目录结构,是通过每个第二应用入口继承本第二应用入口类120对应的应用功能抽象类210来实现的。另外,每个应用功能抽象类210在不仅包括第二智能卡的目录结构,还可以在本应用功能抽象类210中增加第一智能卡和第二智能卡所通用的应用功能,该两种类型卡所通用的应用功能即是第一智能卡和第二智能卡可以共用的应用功能,即实现了大部分代码的复用。
(2)、管理抽象类220:声明为抽象(abstract)属性,可以在该管理抽象类220中实现第二智能卡的管理功能,例如,表明当前选择的应用、指令分发给当前应用等功能;
该管理抽象类220,用于管理第二智能卡的应用;其中,该管理抽象类220管理第二智能卡的应用的实现方式,可以包括:在指令选中应用时,根据第二智能卡的目录结构将指令分发给所选中的应用进行处理。也就是说,管理抽象类220采用第二智能卡的目录结构的形式来调用各个应用,对于第二智能卡的应用功能类来说,所有第二智能卡的应用都作为目录来看待;另外,管理抽象类220可以实现第二智能卡管理应用接口所定义的各项功能,从而使得部分功能(例如切换当前选中的应用)能够被其管理的应用调用。
可以看出,功能抽象层200中各类都声明为抽象(abstract)属性,可以被继承,但无法独立运行;另外,由于这些类继承(或通过父类间接继承)APPLET(Java卡平台定义的应用类),则继承该类的子类可以独立运行。功能抽象层200中的各类可以包含在同一个“.cap”文件中。
需要说明的是,每个第一应用入口类110分别和对应的第二应用入口类120具有相同的应用功能,是通过每个第一应用入口类分别110和对应的第二应用入口类120继承相同的应用功能抽象类210来实现的,因此,每个第二应用入口类120中也包括的第二智能卡的目录结构,该目录结构即为该第二智能卡的树状目录的基础框架,该第二智能卡的应用通过目录结构的形式被管理入口类130调用;另外,管理入口类130管理第二智能卡的应用的方法,是通过管理入口类130继承管理抽象类220来实现的;相应地,管理入口类130根据指令的内容调用相应的第二应用入口类120,包括:根据指令的内容以第二智能卡的目录结构的形式调用相应的第二应用入口类120。
可选地,图4为本发明实施例提供的又一种智能卡的结构示意图。在上述图3所示智能卡的逻辑结构的基础上,本实施例提供的智能卡,其逻辑结构还包括应用基础层300,该应用基础层300包括底层系统库310和基础框架库320,该基础框架库320中包括目录结构类和目录应用类。以下分别说明应用基础层300中各个结构的属性和功能:
(1)、底层系统库310:包括文件系统和应用之间共享的接口,即底层相关类主要实现基本功能和共享的接口等,例如文件系统等。
(2)、目录结构类:包括第二智能卡的目录结构,主要实现第二智能卡的基本框架结构,目录结构类继承(extends)应用,在该目录结构类中实现了第二智能卡的树状结构所需的父目录、多个子目录指示,以及查找等相关功能,同时将该目录结构类定义为抽象类,无法独立运行,仅能被继承。
(3)、目录应用类:用于继承目录结构类,还用于修改该目录应用类实例化的对象中第二智能卡的目录结构,还用于根据指令调用底层系统库310中的文件系统的功能。另外,本发明实施例中,每个应用功能抽象类210中包括第二智能卡的目录结构,是通过每个应用功能抽象类210继承目录应用类实现的。
在本实施例中,由于目录应用类在实例化对象时,可以修改第二智能卡的目录结构,即可以在原有的第二智能卡的树状结构的基础上实现第二智能卡的特性,例如,创建、删除目录结构,选择当前目录等功能;另外,目录应用类可以调用底层系统库310,从而实现文件系统的相关功能,该目录应用类同样定义为抽象类,无法独立运行,仅能被继承。
上述底层系统库310和基础框架库320构成了第二智能卡的主要树状目录结构的基础框架,是Java卡中实现第二智能卡结构的基础,共同组成了应用基础层300,并存放在底层的“.cap”文件中。
本实施例提供的智能卡,其逻辑结构主要包括应用基础层300、功能抽象层200和应用入口层100。此设计在应用基础层300实现了第二智能卡的树状目录结构的基础框架,在功能抽象层200实现各应用在Java卡和第二智能卡结构下的通用功能,在应用入口层100实现各应用在Java卡和第二智能卡结构下对应的入口类,从而整体上实现了在Java卡上兼容第二智能卡结构的功能。
可选地,在本发明实施例中,不仅应用功能抽象类210和目录应用类在继承的基础上,可以增加应用或修改目录结构;类似地,每个第一应用入口类110,还用于修改和添加本第一应用入口类110所继承的应用功能抽象类210的应用;每个第二应用入口类120,还用于修改和添加本第二应用入口类120所继承的应用功能抽象类210的应用。
进一步地,图5为本发明实施例提供的智能卡中一种应用入口层的结构示意图。本发明实施例提供的智能卡中,应用入口层100还可以包括第一应用入口子类111和第二应用入口子类121。
其中,第一应用入口子类111,用于继承对应的第一应用入口类110,并修改和添加本第一应用入口子类111所继承的第一应用入口类110的应用;
第二应用入口子类121,用于继承对应的第二应用入口类120,并修改和添加本第二应用入口子类121所继承的第二应用入口类120的应用。
在本发明实施例中,第一应用入口类110和对应的第二应用入口类120在继承相同的应用功能抽象类210的基础上,都可以修改和添加第一智能卡或第二智能卡特有的应用,并且,都可以通过修改和添加应用入口类的方式以最小的空间代价来进行应用更新、更改应用入口层100,以及更改底层的错误和问题。此种设计通过“加壳”的方式实现了代码复用和灵活简便的打补丁的方法。需要说明的是,并不是每个第一应用入口类110和每个第二应用入口类120都需要通过修改和添加的方式形成对应的第一应用入口子类111或第二应用入口子类121,只有在某个第一应用入口类110或某个第二应用入口类120需要修改当前类的方法时,才通过增加其对应的子类的方式打补丁。
本发明实施例的智能卡基于Java平台设计,Java语言为面向对象的语言,Java语言借助继承,可以扩展原有的代码,适应到其他应用中,而不必重新编写这些代码。在Java语言中,通过继承,扩展声明的新类称为子类,原有的类称为父类。本发明实施例的分层设计中,由于应用入口层100的子类都继承自功能抽象层200中的父类,所以应用入口层100的子类可以拥有功能抽象层200的父类的所有属性和方法,也可以扩展定义自己特有的属性,增加新方法和重新定义父类的方法。这种设计使得普通Java卡的应用和第二智能卡结构的应用能够最大限度的共用功能抽象层200的代码,通过一个空间占用很小的不同的“壳”(即应用入口层100的子类)实现了两种类型卡结构的兼容;同时,能够通过重写或者添加应用入口层100中各应用入口类的方式,以最小的空间代价来进行应用更新、更改应用入口层100,以及更该底层的错误和问题。此种设计通过“加壳”的方式实现了代码复用和灵活简便的打补丁方式。
以下对应用入口层100中各类的实例化对象进行说明,如图6所示,为本发明实施例提供的再一种智能卡的结构示意图。在上述实施例提供的智能卡的逻辑结构的基础上,本实施例的智能卡的逻辑结构中还包括:应用入口层100中各类的实例化对象。图6所示智能卡以在图4所示实施例的结构基础上为例予以示出。
在本实施例中,Java平台(图中未示出),用于在接收到第一安装指令时,将第一安装指令指示的第一应用入口实例化为第一应用对象112;该第一安装指令用于指示哪个第一应用入口类110为进行实例化的对象。
Java平台,还用于在接收到第二安装指令时,根据该第二安装指令将管理入口类130实例化为管理入口对象131;本发明实施例中的管理入口类130可以实例化出多个管理入口对象131,每个管理入口对象131为一个第二智能卡的接口,即本发明实施例中的智能卡上可以兼容多个第二智能卡结构。
每个管理入口对象131,用于管理本管理入口对象131形成的第二智能卡中的应用对象122;本实施例中的每个管理入口对象131在其形成的第二智能卡的结构内,可以创建第二应用入口类120的应用对象,作为本第二智能卡中的应用对象,该管理入口对象131对其形成的第二智能卡中的应用对象122的管理,可以包括:安装应用、删除应用和选中应用等。
本发明实施例中对智能卡的逻辑结构的设计,通过设计第二智能卡的管理入口对象131实现了在Java平台的基础上建立第二智能卡环境的功能。同时在应用基础层300设计了第二智能卡的基础框架,即第二智能卡的目录结构类和目录应用类,所有应用都继承自上述基础框架,从而使所有应用都能兼容第二智能卡的管理入口对象131的功能。另外,通过设计第一应用入口类110和第二应用入口类120,用很小的空间占用,实现了同一应用功能代码在Java卡应用和第二智能卡应用中的复用,整体上实现了在Java卡上兼容第二智能卡的功能。对各个第一应用入口类110进行实例化处理的是其对应的Java平台应用;管理入口类130通过实例化形成管理入口对象131,该管理入口对象131是第二智能卡的代表,从而实现在一张Java卡上实例化得到多个第二智能卡的功能。
可选地,在本发明实施例中,第二智能卡中的应用对象122可以包括:第二根目录应用对象1221、第二目录应用对象1222和第二应用对象1223;该第二智能卡中的应用对象122的实现方式如图7所示,为本发明实施例提供的智能卡中一种第二智能卡的结构示意图。
在本发明实施例中,管理入口对象131,用于根据该管理入口对象131选择的第二应用入口类120或者根据从Java平台接收的第一创建指令所指示的第二应用入口类120,创建第二根目录应用对象1221;
第二根目录应用对象1221,用于根据接收到的第二创建指令创建第二目录应用对象1222和第二应用对象1223;
第二目录应用对象1222,用于根据接收到的第三创建指令创建其它第二目录应用对象1222和第二应用对象1223;
第二根目录应用对象1221、第二目录应用对象1222和第二应用对象1223,用于根据接收到的第四创建指令创建EF文件1224。
在本发明实施例中,对于智能卡的Java平台来说,每个第二智能卡都是管理入口类130通过实例化得到的一个Java应用。而在第二智能卡内部,各个第二智能卡中应用的安装、删除、选中等都是由管理入口对象131进行管理的,该第二智能卡的内部结构关系如图7所示。
在图7所示第二智能卡中,管理入口对象131能够自动或根据第一创建指令创建一个第二根目录应用对象1221,即目录专用文件(Directory Dedicated File,简称为:DDF);另外,第二根目录应用对象1221(DDF)在接收到第二创建指令时,能够创建出第二目录应用对象1222(DDF)或者第二应用对象1223,上述第二应用对象1223为应用专用文件(Application Dedicated File,简称为:ADF);类似地,第二目录应用对象1222(DDF)在接收到第三创建指令时,能够创建其它第二目录应用对象1222和第二应用对象1223;上述第二根目录应用对象1221、第二目录应用对象1222和第二应用对象1223,还可以创建EF文件1224,即基本文件(Elementary File)。
进一步地,在本发明实施例中,管理入口对象131,还用于根据该管理入口对象131中的当前选中目录调用第二智能卡中的应用对象122,通过所调用的应用对象处理该管理入口对象131接收到的指令;管理入口对象131可以调用的应用对象包括上述第二根目录应用对象1221、第二目录应用对象1222和第二应用对象1223,管理入口对象131中的当前选中目录用于指示选择的一个应用对象。
上述第二智能卡中的应用对象122,用于通过第二智能卡管理应用接口调用管理入口对象131,并修改管理入口对象131中的内容;例如,改变当前选中目录,改变状态等,从而可以在管理入口对象131内形成第二智能卡的结构。
本发明实施例还提供一种智能卡,图8为发明实施例提供的还一种智能卡的结构示意图。本实施例提供的智能卡适用于兼容两种类型智能卡的应用的情况中,该智能卡通常以硬件和软件相结合的方式来实现。如图8所示,本实施例提供的智能卡为配置有Java平台的智能卡,该智能卡的逻辑结构包括应用入口层100,该应用入口层100包括:多个第一应用入口类110,与每个第一应用入口类110分别对应的多个第二应用入口类120,以及管理入口类130,每个第一应用入口类110分别和对应的第二应用入口类120具有相同的应用功能。
需要说明的是,本发明实施例中,每个第一应用入口类110可以具有与其对应的第二应用入口类120;在一种可能的实现方式中,每个第一应用入口类110具有一一对应的第二应用入口类120,在另一种可能的实现方式中,本发明实施例不限制第一应用入口类110与第二应用入口类120是一一对应的,例如,应用入口层100可以仅包括特定应用功能的第二应用入口类120,即指不包括与该第二应用入口类120具有相同应用功能的第一应用入口类110。
本实施例中的Java平台400可以包括:
接口模块410,用于通过接收终端设备发送的指令;
处理模块420,用于根据接口模块410接收的指令的内容,将该指令分发给第一应用入口类110或管理入口类130;
其中,其中,管理入口类130作为第二智能卡的接口,用于管理第二智能卡的应用;该管理入口类130管理第二智能卡的应用,包括:将从处理模块420接收到的指令分发给第二智能卡进行处理,并根据该指令的内容调用相应的第二应用入口类120;
每个第二应用入口类120作为第二智能卡中应用的接口,用于在管理入口类130调用本第二应用入口类120时,处理管理入口类130分发给本第二应用入口类120的指令;
每个第一应用入口类110作为第一智能卡中应用的接口,用于接收和处理Java平台分发的指令。
需要说明的是,本发明实施例中智能卡的逻辑结构与上述图2到图6所示实施例中智能卡的逻辑结构相同,并且可以实现相同的功能,故在此不再赘述。
图9为本发明实施例提供的一种智能卡的处理方法的流程图。本实施例提供的智能卡的处理方法适用于兼容两种类型智能卡的应用的情况中,该智能卡的处理方法可以由智能卡的处理装置执行,该智能卡的处理装置通常以硬件和软件相结合的方式来实现,该装置可以集成在如图2到图8所示任一实施例提供的智能卡中,供智能卡调用使用。如图9所示,本实施例提供的智能卡的处理方法可以包括如下步骤,即S110~S120:
S110,智能卡的Java平台接收终端设备发送的指令,该指令中包括选中指令,该选中指令中包括应用编号(Identity,简称为:ID);
S120,智能卡的Java平台根据已接收的选择指令中的应用ID,将已接收的选中指令和其他指令分发给第一智能卡或其中一个第二智能卡;其中,该其他指令为已接收的选中指令到下一次接收的选中指令之间接收的指令。
本发明实施例提供的智能卡的处理方法,通过与终端设备的交互执行相应地操作,该终端设备例如为读卡器、刷卡机等;由于终端设备可能支持不同类型的智能卡,例如有的终端设备支持Java卡,有的终端设备支持Native卡,在终端设备向智能卡发送选中指令时,该选中指令中携带有应用ID,智能卡的Java平台用于接收和处理指令,在其接收到终端设备发送的选中指令时,根据该选中指令中的应用ID可以判断出该选中指令和随后的其他指令应该由第一智能卡的某个应用执行,或由其中一个第二智能卡的某个应用执行,从而将该选中指令及随后的其他指令发送给第一智能卡或其中一个第二智能卡。
本发明实施例提供的智能卡的处理方法可以由本发明图2到图8所示任一实施例提供的智能卡来执行,执行该方法的智能卡与本发明上述实施例提供的智能卡相同的逻辑结构,其实现原理和技术效果类似,此处不再赘述。
可选地,在本发明实施例的一种实现方式中,当上述应用ID指示为指定第二智能卡的应用时,S120中将选中指令及随后的其他指令分发给其中一个第二智能卡的实现方式可以包括:Jave平台根据该应用ID,将已接收的选中指令和其他指令分发给该指定第二智能卡的管理入口对象,使得该管理入口对象根据每个指令执行相应的操作。
可选地,在本发明实施例的另一种实现方式中,当上述应用ID指示为第一智能卡的应用时,S120中将选中指令及随后的其他指令分发给第一智能卡的实现方式可以包括:Jave平台根据该应用ID,将已接收的选中指令和其他指令分发给第一智能卡中该应用ID所指示的第一应用对象;该第一应用对象同样可以根据每个指令执行相应的操作。
在本发明实施例中,若Java平台将指令分发给某个第二智能卡,则具体分发给该第二智能卡的管理入口对象,该管理入口对象作为该第二智能卡的接口,对于Java平台来说是一个特殊的Java应用。如图10所示,为本发明实施例提供的智能卡的处理方法中一种分发指令的示意图;当Java平台确认选中指令选中第一智能卡的应用时,该选中指令及随后的其他指令的分发与普通Java应用一致;当Java平台确认选中指令选中某个第二智能卡时,将选中指令及随后的其他指令分发给该第二智能卡的管理入口对象进行指令处理和指令分发,指令处理例如为创建一个第二根目录应用对象或者选择第二智能卡的目录结构中的某一目录或应用为“当前选中目录或应用”,指令分发是指管理入口对象能够将指令交给其选中的目录或应用进行处理,例如选中某个第二应用对象(ADF)进行处理。另外,当第二根目录应用对象(DDF)或第二目录应用对象(DDF)作为当前选中目录时,应该根据接收到的创建指令来创建其子第二目录应用对象(DDF)或第二应用对象(ADF),从而形成如图10所示的第二智能卡中的树状文件结构。
图11为本发明实施例提供的一种智能卡的处理装置的结构示意图。本实施例提供的智能卡的处理装置适用于兼容两种类型智能卡的应用的情况中,该智能卡的处理装置通常以硬件和软件结合的方式来实现,该装置可以集成在如图2到图8所示任一实施例提供的智能卡中,供智能卡调用使用。如图11所示,本实施例的智能卡的处理装置可以包括:接收模块10和分发模块20。
其中,接收模块10,用于接收终端设备发送的指令,该指令中包括选中指令,该选中指令中包括应用ID;
分发模块20,用于根据接收模块10接收的选中指令中的应用ID,将已接收的选中指令和接收模块10接收的其他指令分发给第一智能卡或其中一个第二智能卡;其中,该其他指令为接收模块10在已接收的选中指令到下一次接收的选中指令之间接收的指令。
本发明实施例提供的智能卡的处理装置,通过与终端设备的交互执行相应地操作,该终端设备例如为读卡器、刷卡机等;由于终端设备可能支持不同类型的智能卡,例如有的终端设备支持Java卡,有的终端设备支持Native卡,在终端设备向智能卡发送选中指令时,该选中指令中携带有应用ID,智能卡的接收模块10用于接收指令,在该接收模块10接收到终端设备发送的选中指令时,分发模块20根据该选中指令中的应用ID可以判断出该选中指令和随后的其他指令应该由第一智能卡的某个应用执行,或由其中一个第二智能卡的某个应用执行,从而将该选中指令及随后的其他指令发送给第一智能卡或其中一个第二智能卡。
本发明实施例提供的智能卡的处理装置用于执行本发明图9所示实施例提供的智能卡的处理方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。
可选地,在本发明实施例的一种实现方式中,当上述应用ID指示为指定第二智能卡的应用时,分发模块20将选中指令及随后的其他指令分发给其中一个第二智能卡的实现方式可以包括:根据该应用ID,将已接收的选中指令和其他指令分发给该指定第二智能卡的管理入口对象,使得该管理入口对象根据每个指令执行相应的操作。
可选地,在本发明实施例的另一种实现方式中,当上述应用ID指示为第一智能卡的应用时,分发模块20将选中指令及随后的其他指令分发给第一智能卡的实现方式可以包括:根据该应用ID,将已接收的选中指令和其他指令分发给第一智能卡中该应用ID所指示的第一应用对象;该第一应用对象同样可以根据每个指令执行相应的操作。
在本发明实施例中,若分发模块20将指令分发给某个第二智能卡,则具体分发给该第二智能卡的管理入口对象,该管理入口对象作为该第二智能卡的接口,对于Java平台来说是一个特殊的Java应用。同样参考图10所示的分发指令的示意图;当分发模块20确认选中指令选中第一智能卡的应用时,该选中指令及随后的其他指令的分发与普通Java应用一致;当分发模块20确认选中指令选中某个第二智能卡时,将选中指令及随后的其他指令分发给该第二智能卡的管理入口对象进行指令处理和指令分发,指令处理例如为创建一个第二根目录应用对象或者选择第二智能卡的目录结构中的某一目录或应用为“当前选中目录或应用”,指令分发是指管理入口对象能够将指令交给其选中的目录或应用进行处理,例如选中某个第二应用对象(ADF)进行处理。另外,当第二根目录应用对象(DDF)或第二目录应用对象(DDF)作为当前选中目录时,应该根据接收到的创建指令来创建其子第二目录应用对象(DDF)或第二应用对象(ADF),从而形成如图10所示的第二智能卡中的树状文件结构。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可以通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储于存储器中的程序/指令来实现其相应功能。本发明实施例不限制于任何特定形式的硬件和软件的结合。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (15)

1.一种配置Java平台的智能卡,其特征在于,所述智能卡安装第一智能卡和第二智能卡,所述第一智能卡和第二智能卡的类型不同,包括:多个第一应用入口类,与每个第一应用入口类分别对应的多个第二应用入口类,以及管理入口类,每个第一应用入口类分别和对应的第二应用入口类具有相同的应用功能;
所述每个第一应用入口类作为所述第一智能卡中应用的接口,用于接收和处理所述Java平台分发的指令;
所述管理入口类作为所述第二智能卡的接口,用于管理所述第二智能卡的应用,包括:将从所述Java平台接收到的指令分发给所述第二智能卡进行处理,并根据所述指令的内容调用相应的第二应用入口类;
所述每个第二应用入口类作为所述第二智能卡中应用的接口,用于在所述管理入口类调用本第二应用入口类时,处理所述管理入口类分发给本第二应用入口类的指令。
2.根据权利要求1所述的智能卡,其特征在于,所述智能卡还包括:管理抽象类和多个应用功能抽象类,每个应用功能抽象类中包括所述第二智能卡的目录结构;
其中,所述每个应用功能抽象类,用于在本应用功能抽象类中增加所述第一智能卡和所述第二智能卡所通用的应用功能;
所述管理抽象类,用于管理所述第二智能卡的应用;其中,所述管理抽象类管理所述第二智能卡的应用,包括:在从所述Java平台接收到的指令选中应用时,根据所述第二智能卡的目录结构将所述指令分发给所选中的应用进行处理;
所述每个第一应用入口类分别和对应的第二应用入口类具有相同的应用功能,是指:所述每个第一应用入口类分别和对应的第二应用入口类,继承相同的应用功能抽象类;
所述每个第二应用入口类,用于继承本第二应用入口类对应的应用功能抽象类;
所述管理入口类,用于继承所述管理抽象类;所述管理入口类根据所述指令的内容调用相应的第二应用入口类,包括:根据从所述Java平台接收到的指令的内容以所述第二智能卡的目录结构的形式调用相应的第二应用入口类。
3.根据权利要求2所述的智能卡,其特征在于,所述智能卡还包括:底层系统库和基础框架库,所述基础框架库中包括目录结构类和目录应用类;
其中,所述底层系统库中包括文件系统和应用之间共享的接口;
所述目录结构类中包括所述第二智能卡的目录结构;
所述目录应用类,用于继承所述目录结构类,还用于修改所述目录应用类实例化的对象中第二智能卡的目录结构,还用于根据指令调用底层系统库中的所述文件系统的功能;
所述每个应用功能抽象类中包括所述第二智能卡的目录结构,是指:所述每个应用功能抽象类,用于继承所述目录应用类。
4.根据权利要求1~3中任一项所述的智能卡,其特征在于,
所述每个第一应用入口类,还用于修改和添加本第一应用入口类所继承的应用功能抽象类的应用;
所述每个第二应用入口类,还用于修改和添加本第二应用入口类所继承的应用功能抽象类的应用。
5.根据权利要求1~3中任一项所述的智能卡,其特征在于,所述智能卡还包括:第一应用入口子类和第二应用入口子类;
所述第一应用入口子类,用于继承对应的第一应用入口类,并修改和添加本第一应用入口子类所继承的第一应用入口类的应用;
所述第二应用入口子类,用于继承对应的第二应用入口类,并修改和添加本第二应用入口子类所继承的第二应用入口类的应用。
6.根据权利要求1~3中任一项所述的智能卡,其特征在于,
Java平台,用于在接收到第一安装指令时,将所述第一安装指令指示的第一应用入口类实例化为第一应用对象;
Java平台,还用于在接收到第二安装指令时,根据所述第二安装指令将所述管理入口类实例化为管理入口对象;
每个所述管理入口对象,用于管理本管理入口对象形成的第二智能卡中的应用对象。
7.根据权利要求6所述的智能卡,其特征在于,所述第二智能卡中的应用对象包括:第二根目录应用对象、第二目录应用对象和第二应用对象;
所述管理入口对象,用于根据所述管理入口对象选择的第二应用入口类或者根据从所述Java平台接收的第一创建指令所指示的第二应用入口类,创建第二根目录应用对象;
所述第二根目录应用对象,用于根据接收到的第二创建指令创建第二目录应用对象和所述第二应用对象;
所述第二目录应用对象,用于根据接收到的第三创建指令创建其它第二目录应用对象和第二应用对象;
所述第二根目录应用对象、所述第二目录应用对象和所述第二应用对象,用于根据接收到的第四创建指令创建基本文件EF文件。
8.根据权利要求7所述的智能卡,其特征在于,
所述管理入口对象,还用于根据所述管理入口对象中的当前选中目录调用所述第二智能卡中的应用对象,通过所调用的应用对象处理所述管理入口对象接收到的指令;
所述第二智能卡中的应用对象,用于通过第二智能卡管理应用接口调用所述管理入口对象,并修改所述管理入口对象中的内容。
9.一种配置Java平台的智能卡,其特征在于,所述智能卡安装第一智能卡和第二智能卡,所述第一智能卡和第二智能卡的类型不同,包括:多个第一应用入口类,与每个第一应用入口类分别对应的多个第二应用入口类,以及管理入口类,每个第一应用入口类分别和对应的第二应用入口类具有相同的应用功能;
所述Java平台包括:
接口模块,用于接收终端设备发送的指令;
处理模块,用于根据所述接口模块接收的指令的内容,将所述指令分发给第一应用入口类或管理入口类;
所述每个第一应用入口类作为第一智能卡中应用的接口,用于接收和处理所述处理模块分发的指令;
所述管理入口类作为第二智能卡的接口,用于管理所述第二智能卡的应用,包括:将从所述处理模块接收到的指令分发给所述第二智能卡进行处理,并根据所述指令的内容调用相应的第二应用入口类;
所述每个第二应用入口类作为所述第二智能卡中应用的接口,用于在所述管理入口类调用本第二应用入口类时,处理所述管理入口类分发给本第二应用入口类的指令。
10.一种智能卡的处理方法,所述方法采用如权利要求1~9中任一项所述的智能卡执行,其特征在于,所述方法包括:
所述智能卡的Java平台接收终端设备发送的指令,所述指令中包括选中指令,所述选中指令中包括应用编号ID;
所述智能卡的Java平台根据已接收的选中指令中的应用编号ID,将所述已接收的选中指令和其他指令分发给第一智能卡或其中一个第二智能卡;其中,所述其他指令为所述已接收的选中指令到下一次接收的选中指令之间接收的指令。
11.根据权利要求10所述的智能卡的处理方法,其特征在于,当所述应用编号ID指示为指定第二智能卡的应用时,所述智能卡的Java平台根据所述应用编号ID,将所述已接收的选中指令和所述其他指令分发给其中一个第二智能卡,包括:
所述Java 平台根据所述应用编号ID,将所述已接收的选中指令和所述其他指令分发给所述指定第二智能卡的管理入口对象,使得所述管理入口对象根据每个指令执行相应的操作。
12.根据权利要求10所述的智能卡的处理方法,其特征在于,当所述应用编号ID指示为所述第一智能卡的应用时,所述智能卡的Java平台根据所述应用编号ID,将所述已接收的选中指令和所述其他指令分发给所述第一智能卡,包括:
所述Java平台根据所述应用编号ID,将所述已接收的选中指令和所述其他指令分发给所述第一智能卡中所述应用编号ID所指示的第一应用对象。
13.一种智能卡的处理装置,所述装置设置于如权利要求1~9中任一项所述的智能卡中,其特征在于,所述装置包括:
接收模块,用于接收终端设备发送的指令,所述指令中包括选中指令,所述选中指令中包括应用编号ID;
分发模块,用于根据所述接收模块已接收的选中指令中应用编号ID,将所述已接收的选中指令和所述接收模块接收的其他指令分发给第一智能卡或其中一个第二智能卡;其中,所述其他指令为所述接收模块在所述已接收的选中指令到下一次接收的选中指令之间接收的指令。
14.根据权利要求13所述的智能卡的处理装置,其特征在于,当所述应用编号ID指示为指定第二智能卡的应用时,所述分发模块根据所述应用编号ID,将所述已接收的选中指令和所述其他指令分发给其中一个第二智能卡,包括:
根据所述应用编号ID,将所述已接收的选中指令和所述其他指令分发给所述指定第二智能卡的管理入口对象,使得所述管理入口对象根据每个指令执行相应的操作。
15.根据权利要求13所述的智能卡的处理装置,其特征在于,当所述应用编号ID指示为所述第一智能卡的应用时,所述分发模块根据所述应用编号ID,将所述已接收的选中指令和所述其他指令分发给所述第一智能卡,包括:
根据所述应用编号ID,将所述已接收的选中指令和所述其他指令分发给所述第一智能卡中所述应用编号ID所指示的第一应用对象。
CN201611167841.7A 2016-12-16 2016-12-16 一种智能卡、智能卡的处理方法和装置 Active CN106598551B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611167841.7A CN106598551B (zh) 2016-12-16 2016-12-16 一种智能卡、智能卡的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611167841.7A CN106598551B (zh) 2016-12-16 2016-12-16 一种智能卡、智能卡的处理方法和装置

Publications (2)

Publication Number Publication Date
CN106598551A CN106598551A (zh) 2017-04-26
CN106598551B true CN106598551B (zh) 2019-01-29

Family

ID=58600702

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611167841.7A Active CN106598551B (zh) 2016-12-16 2016-12-16 一种智能卡、智能卡的处理方法和装置

Country Status (1)

Country Link
CN (1) CN106598551B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107729056A (zh) * 2017-10-26 2018-02-23 东信和平科技股份有限公司 一种只读存储器的程序保存方法及相关装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102054173A (zh) * 2010-12-24 2011-05-11 北京握奇数据系统有限公司 在智能卡上集成多电信应用的方法及其智能卡
CN102087716A (zh) * 2011-03-02 2011-06-08 武汉天喻信息产业股份有限公司 一种多应用Java智能卡
CN102495754A (zh) * 2011-10-27 2012-06-13 飞天诚信科技股份有限公司 基于缓存的java卡事务处理方法
CN104331275A (zh) * 2014-08-26 2015-02-04 大唐微电子技术有限公司 一种Java卡及其应用打补丁的方法
CN105320686A (zh) * 2014-07-29 2016-02-10 苏州融卡智能科技有限公司 一种优化java卡选择实例的方法
CN105630516A (zh) * 2014-10-28 2016-06-01 苏州融卡智能科技有限公司 适用于java卡上应用软件的补丁升级方法
CN105893098A (zh) * 2016-04-26 2016-08-24 北京握奇智能科技有限公司 智能卡应用平台装载、应用程序安装及运行的方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739755B (zh) * 2009-12-04 2011-11-30 北京握奇数据系统有限公司 一种实现智能卡多业务应用的方法及装置
JP5051272B2 (ja) * 2010-05-25 2012-10-17 コニカミノルタビジネステクノロジーズ株式会社 情報処理装置、アプリケーション実行方法およびアプリケーション管理プログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102054173A (zh) * 2010-12-24 2011-05-11 北京握奇数据系统有限公司 在智能卡上集成多电信应用的方法及其智能卡
CN102087716A (zh) * 2011-03-02 2011-06-08 武汉天喻信息产业股份有限公司 一种多应用Java智能卡
CN102495754A (zh) * 2011-10-27 2012-06-13 飞天诚信科技股份有限公司 基于缓存的java卡事务处理方法
CN105320686A (zh) * 2014-07-29 2016-02-10 苏州融卡智能科技有限公司 一种优化java卡选择实例的方法
CN104331275A (zh) * 2014-08-26 2015-02-04 大唐微电子技术有限公司 一种Java卡及其应用打补丁的方法
CN105630516A (zh) * 2014-10-28 2016-06-01 苏州融卡智能科技有限公司 适用于java卡上应用软件的补丁升级方法
CN105893098A (zh) * 2016-04-26 2016-08-24 北京握奇智能科技有限公司 智能卡应用平台装载、应用程序安装及运行的方法及系统

Also Published As

Publication number Publication date
CN106598551A (zh) 2017-04-26

Similar Documents

Publication Publication Date Title
US11169784B2 (en) Computing expression medium, development environment, and device communication and control architecture
CN105531688B (zh) 提供作为其它服务的资源的服务
CN101512503B (zh) Xml应用程序框架
CN101387956B (zh) 可扩展地实现非功能逻辑的方法和设备及其系统
Dubslaff et al. Probabilistic model checking for feature-oriented systems
US8504501B2 (en) Dynamic constraint satisfaction problem solver
US9122559B2 (en) Extensible dependency management framework and method
CN110244957A (zh) 一种资源数据更新方法、装置及系统
CN112685020A (zh) 动态创建服务接口的方法、装置、电子设备及存储介质
Sun et al. Mapping application requirements to cloud resources
US20100037201A1 (en) Separation Of Concerns Between Information Technology Services Models
CN109960709B (zh) 一种数据库驱动的处理方法、装置、设备及存储介质
CN106598551B (zh) 一种智能卡、智能卡的处理方法和装置
CN103631645A (zh) 一种基于数字医疗的数字家庭中间件系统
CN106557343A (zh) 生成功能应用及加载资源的方法及装置
CN113626128A (zh) 视听媒体微服务第三方模块接入方法、系统、电子设备
CN102945264A (zh) 智能启用分布式事务的方法
CN104331275B (zh) 一种Java卡及其应用打补丁的方法
CN105208123A (zh) 一种虚拟桌面的实现方法及其系统
Gomes et al. Architecting dynamic reconfiguration in dependable systems
CN111142882A (zh) 一种用于大型微服务部署的服务附加依赖管理方法
CN109241727B (zh) 权限设置方法及装置
Atkinson et al. Foundational MDA Patterns for Service-Oriented Computing.
CN110413285A (zh) 一种部署云端服务的方法以及开发云端服务的方法
CN112631696B (zh) 服务的编排方法、编排装置、处理器与服务的编排系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant