用于智能卡个人化的系统和装置的制作方法

文档序号:6412980阅读:466来源:国知局
专利名称:用于智能卡个人化的系统和装置的制作方法
技术领域
本发明涉及数据存储设备,特别涉及制造诸如信用卡、借贷卡、标识卡以及其它业务卡之类的便携式编程数据载体。
背景技术
随着向用户、顾客或雇员发送业务卡的组织数量的增加,要求这些卡被设计成能够满足其特殊服务或应用的需求。这些组织还希望这些卡包含关于持卡人的数据。现有的业务卡将这样的数据编码在卡背面的磁条中,但是一个磁条所能保存的数据量是有限的。一种新型的业务卡是在塑料卡中嵌入一个微处理器芯片以大大增加该卡的数据存储量。此外,对于发卡人,在某几种芯片中能够执行复杂的卡应用,并且该芯片可包含一种操作系统。在工业中,嵌有芯片的业务卡被视为便携式编程数据载体,更普遍地被称为“智能卡”。在一个智能卡的表面被浮刻和/或印制的同时,就以初始化和/或个人化数据对该卡的芯片进行编程。
初始化数据主要包括三种信息应用数据、保密数据和印制数据。对于一种给定的卡应用来说,应用数据对所有卡都是公用的,并且应用数据包括应用程序码和变元。保密数据用于防止卡的欺诈使用,并且通常以“密钥”的形式出现。诸如一个徽标、条码和各种数字信息之类的印制数据位于卡的表面上。部分或全部相同数据也可以被浮刻在表面上。也可以采用光学技术使卡的部分或整个表面成为一个通过适当的光阅读机可访问数据的存储媒体。
通过一个所谓的“个人化”过程,以单个持卡人的特有信息对智能卡编程。用于一个智能卡的个人化信息类似于当前包含在非智能卡中的个人化信息,如持卡人姓名、帐号、卡的有效期限以及照片。由于卡的存储容量增大,一个智能卡中的芯片除了标准业务卡上的基本信息以外,还可以包含诸如个人签名的图形表示、用于确定授权给持卡人的服务种类的数据以及对那些服务的帐目限定之类的附加数据。
智能卡发行过程必须对每个个人化卡和个人化过程的结果进行控制和报告。这样就必须保留多方面的报告和查帐文件以支持该卡的跟踪要求。
目前,一个智能卡发行系统必须被设计成能够满足一种特种卡应用,该应用是在一个特种卡操作系统的控制下被编程在一种特殊类型的智能卡上,并且能够将该卡的数据格式化以适用于发行该卡的特殊类型的个人化设备。无论这些变量中的一个(发行者应用、智能卡/卡操作系统和/或个人化设备)何时发生变化,整个发行系统都必须被重新配置,同时增加了在将个人化的智能卡发送给用户的过程中由卡的发行者所负担的时间和费用。此外,当前很多发行系统缺少一种用以向卡发行人提供关于任一批卡的状态的动态反馈的可行装置。
而且,如今所使用的智能卡发行系统利用了由卡的制造商或个人化设备的制造商所开发的专有方法。每个制造商为了鼓励各自的卡和设备的销售而对一种特殊的卡应用只开发一种唯一的个人化方案,并且每个方案仅专用于一个特定的卡发行人。这些唯一的方案试图使这些卡或设备的性能最优,而这种作法不能允许一个能够接受任一种卡操作系统和/或适用于任一种个人化设备的范围更宽、更一般化的个人化过程。
随着对智能卡的需求的增加,需要这样一种智能卡发行系统,它允许卡发行人使用任何类型的个人化设备及其相应的操作系统来处理多种智能卡,并将发行人的特种卡应用随所需的持卡人数据一起嵌入到任一种类型的智能卡中。
发明概要一个智能卡个人化系统包括一个包含卡应用数据、发行人格式模板数据、卡操作系统数据,以及用以允许卡发行人动态改变卡应用的个人化设备数据的数据库,卡和卡操作系统,和/或在一个卡发行过程中无需修改卡发行人对发行过程的接口的个人化设备。
智能卡个人化系统通过首先从一个卡发行人管理系统获得一个数据格式标识符、一个卡操作系统标识符、一个个人化设备标识符、一个或多个应用程序标识符以及用于持卡人的个人化数据,来发行便携式编程数据载体或智能卡。这些标识符允许系统对存在一个数据结构如一个数据库中的数据寻址,并为每个将被发行的卡指定系统所需的特定数据。由于每个卡发行人有区别地格式化其个人化数据并具有多种数据格式,所以智能卡个人化系统具有一个使其与多个卡发行人管理系统进行接口的数据格式模板的数据库。该系统从由数据格式标识符所标识的数据库中的一个记录中获得用于定义某个特定卡发行人所使用的个人化数据的格式模板。系统利用数据格式模板将个人化数据从卡发行人的格式转换成被系统组件确认的一种内部格式。系统利用卡操作系统标识符和用于一种应用程序类型或多种应用程序类型的应用程序标识符,从数据库中以代码和/或变量的形式获得用于将操作系统预装到嵌在卡中的微处理器芯片中的编程控制命令和应用数据。系统还利用个人化设备标识符获得用于发行智能卡的个人化设备的设备特性数据。一旦系统已获得发行智能卡所必需的所有数据,就向设备特性数据所指定的个人化设备传送编程控制命令、应用代码和变量,及被转换过的个人化数据。
另外,由于数据格式模板来源于应用数据记录中的数据或由于个人化格式在一对一的基础上与系统所使用的内部格式相一致,所以没有数据格式标识符通过卡发行人。由于卡发行人还可以用数据格式模板记录代替数据格式标识符,所以系统不需要参照其格式记录的数据库。
智能卡个人化系统的另一个特性是它的卡管理功能。智能卡个人化系统收集关于卡发行过程的信息并将此信息报告给卡发行人管理系统。
智能卡可以包括一个或多个被编程到芯片中以防止卡被欺诈使用的“密钥”。由智能卡个人化系统从卡发行人所保存的密钥记录或另一个保密源获得适当的密钥数据,然后将其传送到个人化设备中。保密源还提供保密函数,智能卡个人化系统使用这些保密函数在向或从该系统的数据传输过程中和系统内的智能卡个人化过程中,保证数据的完整性和保密性。
智能卡管理系统通过一系列在一台计算机或多台计算机上执行的软件模块来执行上述功能。一个模块是一个用于从卡发行人管理系统获得数据格式标识符、卡操作系统标识符、个人化设备标识符、应用程序标识符以及一个持卡人的个人数据的卡发行人管理系统接口。然后卡发行人管理系统接口利用数据格式标识符获得用于定义个人数据并将个人数据转换成通用的内部数据格式的格式模板。一个卡操作系统接口模块获得用于由卡操作系统标识符指定的卡操作系统类型的编程控制命令。一个卡应用接口模块利用应用程序标识符来确定将哪种应用程序被置于该卡上并得到专用的应用代码和变量。一个个人化设备接口模块负责获取用于由个人化设备标识符所指定的个人化设备类型的设备特性数据,并且还负责按照设备特性数据所规定的要求向个人化设备传送编程控制命令、应用代码和变量以及转换后的个人化数据。
通过一个跟踪/报告模块和一个密钥管理模块提供报告和保密函数。
智能卡个人化系统利用一个驻留在计算机存储媒体中的基本数据结构,如一个数据库来组织发行智能卡所需的数据。该数据结构包括几种不同类型的数据元素并利用“索引”或“标识符”来快速访问特定数据。在该系统中具有四个主要数据元素一个数据格式元素、一个卡操作系统元素、一个应用程序元素和一个个人化设备元素。
数据格式元素包含一个用于定义卡发行人所使用的个人化数据的格式的模板。数据格式元素可以被存在一个包含多个用于不同卡发行人的数据格式元素的数据库中,并通过数据格式标识符访问存在数据格式元素中的信息。另外,在发行卡时,数据格式元素可以来源于应用程序元素中的数据以便于经过卡发行人的应用程序标识符识别数据格式。当个人化数据的数据格式与智能卡个人化系统所使用的内部格式完全符合时,数据格式模板在逻辑上隐含产生了一个用于发行过程的虚拟数据格式元素。
卡操作系统元素保存用于指示卡操作系统控制一个智能卡芯片的编程控制命令并通过卡操作系统标识符访问该元素。
应用程序元素包含与不同卡发行人相关的应用所需的应用数据,如程序代码和变量;通过应用程序标识符访问应用数据。
不同类型的用于发行智能卡的个人化设备的操作参数被存在个人化设备元素中并通过一个相应于发行过程中所使用的个人化设备的类型的个人化设备标识符而被访问。
智能卡个人化系统的特殊配置支持并不需要上述系统全部的灵活性的卡发行人。
通过向能够动态适应发行过程中的变化的智能卡个人化过程提供一个输入和输出的中央接口,智能卡个人化系统找出现有技术中的弱点。该系统与任一个发行人管理系统进行接口,管理持卡人数据的传输和对所用的特定个人化设备的卡应用,并采集对实时和脱机查询的统计量以支持关键的管理和报告功能。该系统维护关于发行人数据格式、卡操作系统、卡应用程序以及个人化设备类型的数据库。这个数据库使该系统能够处理数据的任意组合和排列,从而对发行人来说改进了成本和投放市场的时间。而且,该系统接口于不同的有关卡保密的方法论以减少欺诈行为的发生。
附图的简要说明

图1A是表示与一个智能卡个人化系统相结合的智能卡发行过程的方框图。
图1B用于图1A所示的智能卡个人化系统的输入和输出连接的功能性方框图。
图1C是示出了构成图1B所示的智能卡个人化系统的一个实施例的软件模块和数据结构的功能性方框图。
图2是在图1C的基础上附加了一个管理智能卡密钥的保密模块的实施例的功能性方框图。
图3是示出管理多种类型的卡和个人化设备的最小配置的智能卡个人化系统的另一个实施例的功能性方框图。
图4是在图3的基础上附加了一个管理多个卡操作系统的模块的实施例的功能性方框图。
图5是图4的实施例附加了保密模块的功能性方框图。
图6是图3的实施例附加了一个管理多个卡应用的模块的功能性方框图。
图7是图6的实施例附加了保密模块的功能性方框图。
图8是用于实现智能卡个人化系统的各项功能的计算机软件的高级流程图。
图9是利用软件模块和数据记录的智能卡个人化系统的替换实施例的功能性方框图。
图10是用于实现图9所示的智能卡个人化系统实施例的各项功能的计算机软件的高级流程图。
图11是图9所示的智能卡个人化系统实施例所用的一个卡结构模板记录的数据字段图表。
图12是图9所示的智能卡个人化系统实施例所用的一个数据格式模板记录的数据字段图表。
图13是图9所示的智能卡个人化系统实施例所用的一个卡应用数据记录的数据字段图表。
图14是示出了由智能卡个人化系统所跟踪的例项的报告格式。
实施例的说明在下述的实施例的详细描述中,参照作为其组成部分并以示出说明实现本发明的具体实施例的形式的附图。这些被详细描述的实施例足以使本领域的技术人员实施本发明,并应当理解也可以利用其他在不偏离本发明的主题和范围的前提下对结构、逻辑和电学方面作出改进的实施例。因此,下述的详细说明不能作为对本发明的限定,只有后述的权利要求才能限定本发明的范围。
附图中参考标号的起始数字通常相应于图号,出现在多幅附图中的相同部件以相同的参考标号为标识。
发行智能卡标准的业务卡,如常用的信用卡对大多数人来说是熟悉的。一个业务卡通常具有被印制或浮刻在卡表面上的持卡人信息,如姓名和帐号。一般,业务卡包含一个包含有编码后的持卡人数据等的磁条。对每个业务卡的持卡人数据进行印制/浮刻/编码的过程被称之为“个人化”。每个业务卡还会经过一个被称为“初始化”的过程,在该过程中通用于一批卡的特种信息,如发行人标识符和批号等被设置在卡上。
一个智能卡与标准业务卡的区别在于一个计算机微处理器芯片被嵌入到塑料卡中以大大增加卡的数据存储量。在某些种类的智能卡中,卡制造商预先在芯片中装入几种可用的卡操作系统之一,并且在个人化过程中由该操作系统控制芯片的编程。此外,在特定种类的芯片中也可以执行指定给卡发行人的复杂卡应用。
一个智能卡初始化数据主要由三种类型的信息构成应用数据、保密数据和印制数据。对于一个给定的卡应用来说,应用数据对所有的卡都是通用的,并且包括被编程到芯片中的应用程序代码和变量。一般用作密钥或保密函数的保密数据验证卡上的数据并防止卡的欺诈使用。诸如徽标、条码和不同类型的数字信息之类的印制数据被印在卡的表面上。一些或所有相同的数据也可以被浮刻在表面上。也可以采用光学技术使智能卡的部分表面成为具有以适当的光阅读器可读取的数据的存储媒体。
智能卡的个人化信息相似于目前包含在非智能卡中的个人化信息,如持卡人姓名、帐号、卡有效期和照片。由于卡的存储容量增大,一个智能卡中的芯片除了标准业务卡上的基本信息以外,还可以包含诸如个人签名的图形表示、用于确定授权给持卡人的服务的种类的数据以及对那些服务的帐目限定之类的附加数据。
智能卡个人化系统图1A示出了结合本发明的智能卡个人化系统的一个实施例的智能卡发行过程的组成部分。智能卡个人化系统100从一个卡发行人管理系统150(一般专有于卡发行人)接收数据,将该数据转换成一个数据流,并将数据流输出到用于对智能卡160进行个人化的个人化设备130。卡发行人管理系统150管理持卡人数据并确定要发行的卡的种类,要嵌入卡中的卡应用以及利用哪种个人化设备来发行用于一个特定持卡人的卡。如图1A所示,卡发行人管理系统一般为一个计算机程序,但智能卡个人化系统100也能够从其他的输入端接收数据,例如一个人从一个电话键盘区输入数据。
在图1A中将智能卡个人化系统100作为一个在计算机中执行的软件程序来说明。如下所述,智能卡个人化系统100访问定义了不同类型的卡和卡操作系统、卡应用和个人化设备的数据库记录。
软件和数据库的逻辑功能可以分布到一个客户/服务器网络中的多个计算机中或集中到一个处理器中。这些功能也可以被分布到通过标准局域网、广域网、专用电话线或其它用于宽松耦合处理器的通信装置相连接的处理器中。在工业标准工作站和/或个人计算机硬件上以及一个诸如Unix、Windows95或WindowsNT之类的操作系统下执行该软件程序。
系统100控制卡打印机、浮刻设备和综合或附加智能卡接口设备,这些设备在图1A中以个人化设备130表示。个人化设备130还代表诸如大卷卡打印机/浮刻器、小卷卡打印机/浮刻器、自动出纳机(ATM)、销售点终端、无人售货机、个人计算机、网络计算机和联机电信设备之类的设备。由于人们已经在已有的非智能卡个人化设备上进行了投资,所以很多卡发行人不会购买全新的智能卡个人化设备,而是在他们已有的个人化设备上增加一个智能卡接口设备,该接口设备能够在旧设备执行打印和浮刻功能的同时对卡中的芯片进行编程。在这样的配置中,运行智能卡个人化系统100的计算机系统或“主机”被物理连接到这两种设备或仅连接到其中一种设备上。在后一种情况中,主机控制直接相连的设备并与另一设备具有逻辑连接。设备与主机之间的物理连接依制造商和设备模型的不同而不同。通用工业标准连接包括串行RS232、SCSI(小型计算机系统接口)、以太网和串行TTL(晶体管-晶体管逻辑电路)。此外,一些设备需要一个专用的总线连接。
也可以通过标准局域网、广域网、专用电话线或其它用于传输数据的远程通信基础设施来实现智能卡个人化系统100和卡管理系统150和设备130之间的连接。在1996年7月9日授权给Laing等人的美国专利No.5,524,857中描述了在对智能卡个人化时所使用的这种远程连接。另一种连接对所属技术领域的技术人员来说是显而易见的并在本发明的范围之内。
图1B是智能卡个人化系统的一个实施例的方框图,用于说明智能卡个人化系统100与一个卡发行组织为了发行智能卡而采用的功能之间的逻辑连接。由卡发行组织保存的持卡人数据包含有关每个持卡人的信息,如姓名、帐号、卡的有效期以及可应用的服务。图1B中作为持卡人数据152的模型示出了将持卡人数据输入到卡发行人管理系统150中的几种方式。卡发行人管理系统150可以接收诸如磁带、软盘或CD ROM之类的计算机媒体上的持卡人数据。另外,可以通过一个诸如通用交换电话网络、分组交换网络,即Internet、专用线路或电缆/卫星电视信号之类的联机连接来输入持卡人数据152。将持卡人数据152输入到系统150中的其他方式对于所属技术领域的技术人员来说是显而易见的。
除卡发行人管理系统150之外,卡发行人通常还具有与智能卡个人化系统100接口的已有报告功能154,以使卡发行人能够查阅由系统100保存的统计信息。同样,由卡发行人提供并表示为密钥管理器111和密钥数据库128的外部保密源提供了与卡发行人管理系统150和智能卡个人化系统100共同工作的保密函数。图1B还说明了支持具有附加智能卡接口设备的卡发行人的智能卡个人化系统100的一个替换实施例。系统100将个人化信息的一部分导向旧的个人化设备130并将数据的剩余部分导向对芯片编程的智能卡接口设备132中的后处理器132。下面将详细描述这些功能。
后面附图所示的用于智能卡个人化系统100的软件程序的实施例作为代码模块的组合,其中每个模块执行发行过程的一个特定部分。在这些实施例中,通过定义的输入和输出程序调用来连接模块并通过用于对存在数据结构中的数据进行访问的标准数据询问命令来连接数据结构。模块之间以及模块和数据结构之间的通信协议根据编写模块所用的语言和用以支持数据库的基础数据管理系统的不同而不同。
图1C是图1B所示的没有外部保密功能的智能卡个人化系统100的更详细的功能性方框图。图1C示出了软件模块和数据库记录之间使智能卡个人化系统100能够在发行智能卡时组合多种发行人数据格式、卡操作系统、卡应用和个人化设备的内部连接。
智能卡个人化系统100向一个卡发行人管理系统150提供一个定制的卡发行人管理接口101。在这个实施例中,卡发行人管理系统150从一个持卡人数据库152向系统100传送个人化数据。系统100中的每个软件模块都要求个人化数据以一种特定的内部格式被传送。由于个人化数据是由卡发行人定义的不同于软件模块所要求的内部格式的外部格式,所以系统100利用数据格式模板将个人化数据转换成内部格式。系统100通过一个经过卡发行人且系统100用于获得一个如记录120和卡发行人管理系统接口101之间的可选连接所述的可选数据格式模板记录120(图1C中模型所示)的数据格式标识符来获得数据格式模板。另外,卡发行人以向系统100传送数据格式模板记录来取代数据格式标识符。在另一个实施例中,数据格式模板可以来源于卡应用记录124中的数据,该卡应用记录由经过发行人的应用程序标识符指定,如卡应用数据库124和卡发行人管理系统接口101之间的可选连接所述。
在图1C的替换实施例中,通过将保密函数作为卡应用记录的一部分传送到系统中而向智能卡个人化系统100的内部提供保密功能。
图1C中还示出了一个个人化数据格式与内部格式相匹配的替换实施例。由于在这个实施例中不需要外部和内部格式之间的转换,所以不需要数据格式模板,从而不存在数据格式记录120,也不存在卡发行人管理系统接口101与数据格式记录120和卡应用数据库124之间的连接。数据格式记录120可由多个指示系统100的表组成,使得个人化数据的适当分列或指示持卡人数据记录的字段所出现的顺序的简表对于所属技术领域的技术人员来说是显而易见的。用于确定上述个人化数据的格式的各种替换过程隐含在这里所述的智能卡个人化系统100的所有实施例中。
利用一个由卡发行人管理系统150提供的卡标识符,一个卡操作系统接口模块103读取卡操作系统122专用的编程控制命令用于嵌入到所发行的卡中的微处理器芯片。编程控制命令利用个人化数据和卡发行人所选择的卡应用引导芯片的编码。
每个卡应用包括程序代码和作为应用数据124存在数据库中的可变数据,并且以一个应用程序标识符为标识。卡发行人管理系统150向系统100传送一个或多个被卡应用接口模块105使用以获得相应应用数据124的程序应用标识符。
由一个个人化设备标识符定义卡发行人意欲用来发行批量卡的个人化设备。一个个人化设备接口模块107获得相应于个人化设备标识符的个人化设备130类型所专有的设备特性数据126。个人化设备接口107还获得编程控制命令、应用代码和变量以及转换后的个人化数据,并将这个数据的全部内容传送到设备特性数据126所指定的个人化设备130中以发行智能卡。
系统100的一个替换实施例支持一个这样的卡发行人,他已经通过使个人化设备接口107将转换后的个人化信息的一个子集导向旧的个人化设备130而将数据的剩余部分导向智能卡编程设备中的后处理器132,从而增大其已有的带有一个智能卡编程设备的个人化设备。
智能卡个人化系统100还提供一个跟踪/报告模块/机109,它从系统100的其它模块中收集统计信息并对作为硬拷贝报告154输出或作为卡发行人管理系统150中的一个报告功能的输入的统计信息进行格式化。由于这个统计信息是被实时采集的,所以卡发行人管理系统150能够交互地查询跟踪/报告模块109以便于在执行该模块时获得有关智能卡个人化系统的统计信息。图14示出了由跟踪/报告模块109所监视的例项。
在图2所示的一个替换实施例中,智能卡个人化系统100包括一个以密钥管理器模块111和密钥数据库128的形式存在的保密源。在制造智能卡时,自动售货机在芯片上包括,保密结构以防止非授权的程序编写。通常根据编写在卡上的应用来实施保密体系。例如,编写在一个存储值应用中的密钥不同于被编写在保健应用中的密钥。保密体系的实施方案也随卡的类型不同而不同一些卡只需要一个启动芯片编程的密钥,而另一些卡则需要多个密钥来启动芯片编程和执行附加的保密功能。图2示出了密钥管理器111在与一个需要多个密钥的卡上的保密体系接口时的基本功能。
如图2所示,密钥数据被存储在位于智能卡个人化系统100的外部的密钥数据库128中,并被卡发行人或其他保密源维护。扩展密钥管理器111来管理或多或少的密钥和与一个由智能卡个人化系统100本身管理的密钥数据库进行接口,这种作法依赖于应用、操作系统和特定卡发行应用所使用的个人化设备,并且对所属技术领域的技术人员来说是显而易见的。
密钥管理器111还提供了附加装置以保证密钥数据的真实性、完整性和安全性。在一个实施例中,通过不同的加密方法来确保密钥数据的真实性。通过数字签名装置来实现密钥数据的完整性,该数字签名装置利用公共密钥(public keys)来保证正在从有效源发送和接收密钥数据。通过对被传输的具有一个私人密钥的数据加密来保证密钥数据的安全性,该私人密钥与数据接收器共享并且数据接收器在接收数据的同时利用该私人密钥对数据进行解密。
在系统100从密钥数据库128中接收一个密钥记录之后,与卡操作系统接口103和卡应用接口105相连的密钥管理器111执行密钥的真实性、完整性和安全性功能。然后,系统100通过个人化设备接口107将密钥数据与其他卡数据一起传送到个人化设备130中。
在一个替换实施例中,密钥管理器111将保密信息送至智能卡个人化系统100的其他模块中。例如,在将数据送至智能卡个人化系统100之前,可通过卡发行人管理系统150对持卡人数据部分,如PIN(个人标识号)代码进行加密。卡发行人管理系统接口101通过密钥管理器111从密钥数据库128中读出加密密钥,并在将PIN代码编码或编程到磁条和/或芯片中之前对该数据解密。
在另一个替换实施例中,密钥管理器111是一个“钩”在智能卡个人化系统100中的代码,该系统为一个提供所需的保密功能的外部保密源提供一个通路连接。这种外部保密源的一个例子就是一个由第三者编写的保密管理器程序,该程序管理类似于密钥数据库128的由密钥和/或保密函数构成的保密数据库。保密函数是由保密管理器执行的外部例程,或由保密管理器传递并由智能卡个人化系统100执行以提供所需的保密函数的代码模块,或二者的组合。
图3示出了智能卡个人化系统100的最小配置。在这个实施例中,软件只启动卡发行人管理系统接口模块101和个人化设备接口模块107。这个实施例允许卡发行人利用系统100对非智能卡进行个人化,从而节省两个分离的个人化系统的成本,同时允许卡发行人使用多种数据格式和多种类型的个人化设备。图3还示出了一个结合图1C的附加替换实施例,该实施例包括如上所述的跟踪/报告模块109。
在另一个替换实施例中,当光编码设备被用作个人化设备130时,图3所示的智能卡个人化系统100对一个光业务卡上的数据进行编码。
图4和5描述了另一个在卡发行人没有将卡应用编写到智能卡芯片上时实现的替换实施例。这些实施例允许卡发行人通过在多种类型的个人化设备上附加不同的操作系统来发行多种卡,而无需重新配置智能卡个人化系统100。结合图1C,如上所述,图4包括支持报告和后处理的模块。图5示出了在图4的基础上附加了密钥管理器模块111的实施例,该密钥管理器模块111为用于向个人化设备130传输数据的卡操作系统接口103提供安全性。
同样地,图6和7描述了支持卡发行人将智能卡上的芯片只用作卡应用的数据存储设备,而在芯片上无需执行操作系统的实施例。智能卡个人化系统100支持多种卡应用,这些应用适用于以多种个人化设备发行的多种卡类型。除了密钥管理器111向卡应用接口105提供密钥和/或功能而不是向卡操作系统接口103提供密钥和/或功能之外,图6和7与图4和5是相似的。
图8是用于实现上述智能卡个人化系统100的功能的软件的一个实施例的高级流程图。在块801,该软件从卡发行人管理系统得到一个用于一批将被发行的业务卡的个人化设备标识符。根据将被发行的卡的种类,该软件同时还得到一个或多个应用程序标识符和/或一个卡操作系统标识符。然后该软件通过上述过程之一得到相应于个人化数据的格式的特定数据格式模板(块803)。在块805,该系统从由个人化设备标识符指定的个人化设备记录中得到用于发行成批的卡的个人化设备的设备特性数据。
如果一个卡操作系统标识符被卡发行人管理系统传递(块807),则在块809该软件从相应于卡操作系统标识符的卡操作系统数据库记录中读出编程控制命令。块811和813在从数据库中读出应用数据,如代码和/或变量的同时,对一个卡应用执行相同的逻辑。此时,该软件已经得到了该批的所有卡所必需的公用数据,并通过该逻辑来开始循环发行对单个持卡人的卡。
卡发行人管理系统将一个持卡人的个人化数据传递到该软件(块815),该系统将数据项从数据格式模板所定义的格式转换成智能卡个人化系统的模块所使用的内部格式(块817)。如果卡芯片包含需要密钥的保密体系(块819),则该软件在块821从适当的密钥源中得到执行密钥功能所需的密钥数据。
现在该软件准备将数据传送到个人化设备以对该卡编程。如果该卡被密钥保护,则在块823执行密钥功能并传送密钥数据。如果可用,就传送用于芯片操作系统的编程控制代码(块825和827);然后,如果需要,就传送应用代码和/或变量(块829和831)。最后,发送被转换成内部格式的持卡人个人化数据(块833)。
在数据被发送到卡中之后,该软件在块839向统计信息中加上适当的值,收集所述统计信息用于卡发行人管理系统。如果更多的同一批中的卡被持续发行(块841),则该软件返回块815并获取下一个持卡人的个人化数据。否则,该软件确定卡发行人管理系统是否具有要发行的不同批号的卡(块843)并返回块801以获取必要信息来重复对新的一批卡的操作。如果没有要发行的卡了,就退出该软件。
在不超出本发明范围的前提下,可以改变卡发行人管理系统150向智能卡个人化系统100传递必要数据的装置和智能卡个人化系统处理来自卡发行人管理系统的数据的顺序。由图9和10所述的替换实施例所示出的系统100的不同操作环境说明了不同的排列。
在图9中,对于一个诸如分别相应于图1B所示的111和128的保密管理器940和保密数据库942之类的保密源来说,一个保密模块911作为一个进入智能卡个人化系统100的通路。保密管理器940控制对保密数据库942的访问并连接到保密通路911中以执行智能卡个人化系统100的必要保密功能。保密通路911与卡发行人管理系统接口901相连接,它允许接口901请求保密管理器940对由卡发行人管理系统950以加密格式传递的个人化数据进行解密。保密通路911也与卡应用接口903和卡操作系统接口905相连接,使得它能够向那些接口提供必要的密钥和/或保密函数,如上面结合图2所述。
而且,在利用卡标识符获得卡操作系统924专用的编程控制命令之前,图9所示的智能卡个人化系统100的实施例能够获得由应用程序标识符指定的应用数据922。这个实施例允许在读取用于卡操作系统924的编程命令和设备特性数据926之前,将个人化数据和应用数据转换成内部格式,从而提高每个智能卡的处理速度。
标准业务卡具有被印制和浮刻到卡表面上的数据和/或被编码到卡上的磁条中的数据。利用智能卡,数据也可以被存到微处理器中的一个内部存储区中。相同数据可以被置于卡表面上、磁条中和芯片存储器中。卡中和卡上的数据的准确排列随正在被发行的智能卡的种类和卡发行人的要求而改变。
图10是图9所示实施例的高级流程图并结合图11、12和13,进一步说明了如何利用不同的装置来实现智能卡个人化系统100。卡发行人管理系统950在块1001向智能卡个人化系统100传递一个定义了智能卡的配置的卡结构模板。
图11说明了卡结构模板记录1100的数据结构的一个实施例。微处理器芯片标识符1101和卡操作系统标识符1102(如果有)专指要被发行的智能卡的类型。主文件定义1103包含诸如芯片源和该芯片被更改的最后日期之类的控制信息。系统文件定义1104、1105、1107包含芯片存储器中的系统文件的位置地址。系统文件被卡操作系统使用并包含诸如用于卡和应用的PIN代码以及算法表之类的信息。在图11所示的实施例中,主文件和系统文件定义符合国际标准组织(ISO)指令号7816-4。
卡结构模板记录1100的下面三个字段定义了卡表面和磁条上的数据的排列。如果信息被印制在卡上,如持卡人的照片1109,则卡发行人管理系统950将该数据印制在卡表面上的位置传递到卡结构模板记录1100的打印模板中。相似地,要浮刻的数据在卡表面上的位置被传递到浮刻模板中,并且要被编码到磁条中的数据列被传递到磁条模板中。在卡结构模板记录1100中,浮刻数据包括持卡人的姓名(EMName)1111,帐号(EMAcct)1113,和有效日期(EMXdat)1115,以及由帐号(MSAcct)1117和有效日期(MSXdat)1119构成的磁条数据。在打印、浮刻和磁条模板中的数据项的个数随卡发行人所希望的智能卡的配置而变,这对所属技术领域的技术人员来说是显而易见的。
如果卡发行人想将卡应用编写到智能卡的芯片中,则在卡结构模板记录1100的字段1121、1123、1125中卡发行人将应用程序标识符传递到智能卡个人化系统100。每个应用具有与其相关的特定保密函数(1127、1129、1131),并且该信息也被卡发行人管理系统950传递。卡结构模板记录1100还包含用于发行智能卡的个人化设备的个人化设备标识符1123。
在一个替换实施例中,智能卡个人化系统100通常将所用的卡结构模板记录存储到一个内部数据库中,使得卡发行人管理系统950只需要传递一个卡结构模板标识符,该标识符标识哪个卡结构模板记录被用于特定的一批卡。
在块1003,智能卡个人化系统100从卡发行人指定的一个预定位置中获得用于个人化数据的数据格式模板。如果卡发行人已经向系统100传递了一个数据格式标识符,则从数据格式数据库920中读出相应于该数据格式标识符的数据格式模板记录。另外,卡发行人可以传递数据格式模板记录本身。当数据格式标识符和数据格式模板记录都没有被传递到系统100时,由卡应用数据确定个人化数据的格式,下面将更详细地予以说明。
图12示出了一个数据格式模板记录的例子。数据格式模板记录1200定义了持卡人数据库952中的一个理想的个人化数据记录格式,其中帐号1201为第一字段,持卡人姓名1202为第二字段,卡的有效日期1205为第三字段。在一个实施例中,个人化数据记录是以逗号定界的,所以无需用数据字段长度来定义记录格式。从而图12所示的数据格式模板记录1200完全定义了对智能卡个人化系统100的一个以逗号定界的个人化数据记录的结构133444999922,MaryJane Smith,0299。
在块1007,智能卡个人化系统100获得相应于由卡发行人管理系统950传递的应用程序标识符的卡应用的应用数据922。如果没有应用程序标识符被传递,则智能卡个人化系统100得到默认的应用数据(块1008)。相应于应用程序标识符的卡应用数据记录中默认值和/或应用数据被插入到卡结构模板记录1100的相应字段中,即1121、1123、1125。
图13示出了一个卡应用数据记录的实施例。卡应用数据记录1300中的第一字段是应用名称1301。与其他基于计算机的应用程序一样,一个卡应用处理来自向自动出纳机一样的外部源或来自向编码到微处理器的存储器中的数据文件一样的内部源的数据。利用智能卡使微处理器执行适当的应用,并且该应用按顺序访问内部文件以读取或存储数据。为了访问内部数据,卡应用数据记录包含指向芯片存储器中的应用文件(1302、1305、1307)和应用文件内的字段位置的指针。在发行卡时,利用来自持卡人数据库952的数据对一些字段进行初始化。应用数据1300包括一个指向位于芯片存储器中的一个持卡人文件的地址1303,并且定义持卡人文件包含以下三个字段持卡人姓名(ICName)1309,帐号(ICAcct)1311和有效日期(ICXdat)1313。附加内部数据被存储在其他应用文件中,并且那些附加文件的格式也是由应用数据1300定义的。
如果嵌入智能卡中的芯片包含一个由卡结构模板记录指定的操作系统,则智能卡个人化系统100在块1011从卡操作系统数据库924中得到一组用于操作系统的编程控制命令。每种操作系统的编程控制命令包括用于诸如生成和访问芯片存储器中的文件、在位于芯片存储器中的文件中读写记录之类的功能的命令,用于证实PIN(个人标识号)代码的保密命令和用于改变存在芯片中的货币金额的控制处理。
在块1013,智能卡个人化系统100从个人化设备数据库926中得到相应于卡结构模板记录中的个人化设备标识符的设备特性数据。设备特性数据中包括用于控制个人化设备操作的一组个人化编程控制命令。在具有卡操作系统的情况下,个人化控制命令专用于设备的售主,但是通常包括面向管理、格式化和智能卡制造方面的命令。
当智能卡个人化系统100已经得到了定义一个智能卡所需的所有数据时,就准备好从卡发行人管理系统950接收个人化数据记录952。在每个个人化数据记录952在块1015被传递时,如果存在数据格式模板,智能卡个人化系统100在块1017就利用数据格式模板将个人化数据转换成内部格式,并利用卡应用数据和卡结构模板将个人化数据映象到用内部原本语言(internal scripting 1anguage)写成的命令原本(command script)中的变量中。下面进一步说明该转换和映象处理。利用诸如Basic、Java或C之类的标准编程语言代替内部原本语言的替换实施例也属于本发明的范围之内。
智能卡个人化系统100检查智能卡发行过程中各个不同部分的保密要求。在图11所示的卡结构模板的实施例中,在块1019由卡结构模板记录1100指定对应用的保密要求。如果有保密要求,则在块1021,智能卡个人化系统100从保密管理器940中获取保密数据和/或函数,并将这些函数加入到内部原本中。智能卡个人化系统100的一个替换实施例向用以从保密数据库942读取适当的保密数据和/或函数的保密管理器940传递卡操作系统和个人化设备的标识符以及应用程序标识符。保密函数通常利用来自附加数据源的数据结合存在芯片中或来自象保密管理器940一样的外部保密模块的算法表来执行密钥真实性、数据完整性、数据安全性的判断和其他结合图2所述的保密过程,其中所述附加数据源包括存在内部芯片文件中的数据,个人化数据952,操作系统数据库924,卡应用数据库922等。
一旦完成了内部命令原本,就必须将其转换成适用于本地的卡操作系统(如果存在)和个人化设备的专用编程控制命令,以便于将个人化数据传送到智能卡中。在这个实施例中,在块1025和1027,由一个原本语言注释器利用从卡操作系统数据库924和个人化设备数据库926中获取的信息执行这个转换过程。
在块1029,智能卡操作系统100将注释后的原本传递给个人化设备,该设备执行编程控制命令以将适当的个人化数据分别浮刻/印制到智能卡的表面上,编码到智能卡的磁条中和编写到智能卡的芯片中。如前所述,如果卡发行人选择购买一个附加的智能卡编程设备安装到已有的个人化设备上,则智能卡个人化系统100的一个替换实施例直接将浮刻和编码的控制命令分配给个人化设备930而将用于芯片的控制命令分配给智能卡编程设备中的后处理器132。
当一个卡的发行过程已经结束时,如果还有同一类型的其他卡等待发行,则智能卡个人化系统100获取下一个个人化数据记录(块1033)。否则,智能卡个人化系统判断是否还有另一批不同类型的智能卡在等待发行(块1001)并通过从卡发行人那里获得一个新的卡结构模板记录而再次开始发行过程。
在下面的例子中利用样本数据来进一步说明由图9和10所示的智能卡个人化系统100的实施例执行的处理过程。卡发行人管理系统950通过向智能卡个人化系统100发送一个卡结构模板记录,应用程序标识符,一个卡操作系统标识符,一个个人化设备标识符和一个可选的数据格式模板标识符或一个数据格式模板记录来请求发行过程的初始化。在这个例子中,卡发行人管理系统950传递一个包含下示标识符的应用资源模板记录。系统100利用上述和下面结合样本持卡人数据记录详细说明的过程之一得到一个数据格式模板。应用资源模板记录[A1]DFT=CARD1.DFTCAT=CARD1.CATCID=CHIPX.CIDCPT=CARD1.CPTSOURCE=A1记录中的第一语句标记了用于一个特定应用的信息的起始,在此例中为“A1”。接在后面的四条语句定义了用于卡结构模板记录(DFT)、卡应用记录(CAT)、卡操作系统记录(CID)以及个人化设备记录(CPT)的标识符。最后一条语句是由卡发行人管理系统950生成的一个包含持卡人数据记录的文件的名称。卡发行人管理系统950输入持卡人数据作为要发行一个卡的请求或要发行“一批”卡的请求。
系统100从数据库中读取与标识符相应的记录。然后系统100利用包含在卡结构模板和数据格式模板中的信息建立一个内部“原本”,这个原本后来翻译成包含在卡操作系统和个人化设备记录中的特定命令,其中个人化设备记录指示个人化设备处理每个持卡人的个人化数据和向每个持卡人发送卡。
下面示出了持卡人数据记录952的两个例子。
持卡人数据记录Smith,James^12653683091245^0998^041052^mmmmAnderson,Sue^39485003984138^0297^110248^mmmm在这些记录中,由卡发行人所定义的格式将帐户名(持卡人姓名)置于第一个字段内,其后依次为帐号、有效日期、出生日期和医疗保健数据。
在处理每个持卡人的数据记录952时,系统100利用数据格式模板对数据记录进行翻译。系统100还利用数据格式模板和卡应用记录922来验证数据952以保证正确的数据和格式。在下表的第一行中示出了与如上所示的持卡人记录格式相应的数据格式模板示例。包含在表中的James Smith个人化数据记录示出了数据格式模板与持卡人数据记录字段之间的一致性。数据格式模板给持卡人记录中的每个字段分配一个与在系统100内被使用的内部顺序相应的内部标签%1,%2等。
数据格式模板记录%1 |%2 |%3|%4 |%5|Smith,James^12653683091245^0998^041052^mmmm上述例子表示了最简单的情况,即一个持卡人数据记录952的字段是按照智能卡个人化系统100所使用的内部顺序排列的。这种一一对应意味着系统100无需将持卡人数据字段转换成内部字段顺序。在这样的情况下,是不需要数据格式模板记录的。这样,在一个替换实施例中,卡发行人不必向智能卡个人化系统100传递一个数据格式标识符,而只需传递一个用于通知系统100由于持卡人数据字段与内部字段顺序一一对应而不需要数据格式模板的指示器,如一个标志。系统100按照指示器的指示跳过转换步骤。
下面示出的更复杂的例子就是持卡人数据记录952的字段和字段中的数据相对内部系统顺序来说是无序的。在这种情况下就需要进行转换。
发行人格式中的持卡人数据12653683091245 James Smith 0998041052 mmmm转换成内部格式的持卡人数据Smith,James^12653683091245^0998^041052^mmmm系统100利用数据格式模板将数据字段转换成上述内部顺序。该转换可能会导致数据字段的物理重排或可能是逻辑重排,其中每次系统100参照持卡人数据记录中的一个字段时,数据格式模板作为一个关键字被调用。为转换不同排列的持卡人数据而设计的各种数据格式模板对于所属技术领域的技术人员来说是显而易见的,就象本例用于上述最简单的表中的字段或一组分析的指令或其它手法的替换一样。
卡结构模板记录描述了卡上的芯片结构。在如下所示的例子中,$MF项定义了一个根目录(3F00),而$DF项定义了一个医疗应用(5F20)和一个记帐应用(5F10)。$EF项定义的特殊应用,如包含帐户名的6F00和包含帐号的6F10位于每个目录中。所有用文件描述的数据驻留在卡结构模板中,并在智能卡发行过程中的不同情况下被参照。
卡结构模板记录$CHIP=3102,MEM=8192,SIZE=N10$MF PATH=x3F00,TAG=ROOT,TITLE=‘根目录’,SIZE=D7194$DF PATH=x3F005F10,TAG=ACCT,TITLE=‘帐户数据’,SIZE=D2048$DF PATH=x3F005F20,TAG=MED,TITLE=‘医疗’,SIZE=D1024$EF PATH=x3F003100,TAG=ICCID,TITLE=‘发行人ID’,FORMAT=T,SIZE=D10$EF PATH=x3F005F205E00,TAG=MED1,TITLE=‘医疗简要表’,FORMAT=T,SIZE=D80$EF PATH=x3F005F106F00,TAG=NAME,TITLE=‘帐户名’,FORMAT=T,SIZE=A30$EF PATH=x3F005F106F10,TAG=ACCTID,TITLE=‘帐号’,FORMAT=T,SIZE=N14$EF PATH=x3F005F106F20,TAG=EXPIRE,TITLE=‘有效期’,FORMAT=T,SIZE=N4$EF PATH=x3F005F106F30,TAG=BIRTH,TITLE=‘出生日期’,FORMAT=T,SIZE=N6卡应用记录922将持卡人数据952“映象”到该应用所使用的数据字段中。如下所示的卡应用记录922的例子使其数据项按照被智能卡个人化系统100处理的顺序排列。
卡应用记录$VL ICCID VALUE=1234509876$VL MED1%5,TYPE=A$VL NAME%1,TYPE=A$VL ACCTID%2,TYPE=N$VL EXPIRE%3,TYPE=N$VL BIRTH%4,TYPE=N$VL FMTACCT%2(1-4)-%2(5-9)-%2(10-14)ICCID项包含芯片标识符。其余除FMTACCT以外的各项都将一个“标记”映象到持卡人数据记录952的字段中,这些字段中包含信息(如上述数据格式模板中所定义的)并规定字段中的数据类型。这样,MED1标记表示持卡人数据记录952的第五个字段并且数据为字母格式。FMTACCT项将持卡人数据记录952的第二个字段,即帐号,分成几段并在段间插入连字符。
卡操作系统记录924中包含对卡上的芯片编程所需的编程控制命令。如下所示的卡操作系统保持控制命令示例取自ISO指令号7816-4并且不作为任何特定卡操作系统的内部专有命令。
卡操作系统记录SELECT A0A4000002%FWRITE A0D0%0%L%DREAD A0B0%0%L%DRESET VALUE=xFF上述记录中的每一项包含一个标记,其后为用卡操作系统的自然语言编写的相应命令。可变的参数字段用“%”和一个字母表示,在处理每个卡时,在字段中填入适当的持卡人数据。
个人化设备记录926中包含个人化设备特性数据,如用于定义在一套特定的个人化设备上发行一个完整的卡所需的实际顺序和步骤的指令。此例中所使用的指令示例是假想的,并且不代表用于任何特定个人化设备的内部专用指令。
个人化设备记录$EMBOSS#EMB#%FMTACCT%^%NAME%$ENCODE#ENC#%%%ACCTID%^%NAME%$IC#\@#@ICCIDWRITE ICCID@NAMESELECT ACCTSELECT NAMEWRITE NAME@ACCTIDSELECT ACCTIDWRITE ACCTID@EXPIRESELECT EXPIREWRITE EXPIRE$PR在每个卡被发行时,按照以“$”开头的项所定义的四步顺序处理上述个人化设备特性数据。卡应用记录922用于判断每个指令中的可变参数字段的值。
$EMBOSS指令是一个以控制序列#EMB#开始的数据流,它通知个人化设备其后的数据应当被浮刻到卡上。指令中的每个数据字段位于一对百分号之间。在这种情况下,第一个数据字段是FMTACCT,或如卡应用记录922中定义的格式化的帐户字段。系统100搜索卡应用记录922中的FMTACCT项并从持卡人记录952第一示例的第二个数据字段中生成数据串“1265-36830-91245”。下一个字段,NAME,取自持卡人记录952中的第一个数据字段。这样,持卡人记录952的第一示例的浮刻指令变成了#EMB%1265-36830-91245%%Smith,James%。
$ENCODE指令使得系统100以同于浮刻指令的方式将持卡人数据编码到卡上的磁条中。依据后面的IATA(国际空运协会)和ISO标准的附加控制字符被插入到命令中。最终的指令为#ENC#%%%12653683091245%%Smith,James%。
$IC命令规定了要存入芯片的存储器中的信息。卡操作系统记录924用于将个人化设备记录中的指令转换成用于操作系统的编程控制命令。一个控制序列,#\@#用于通知个人化设备后面的数据是芯片数据。要被保存的第一个字段是芯片标识符ICCID。系统100按照以卡操作系统记录924中的WRITE标记标识的命令翻译个人化设备记录926中的WRITE标记。由于在应用记录922中没有为芯片标识符项指定偏移值,所以隐含值“0000”被加入%0变量参数字段中。%L变量参数字段被设置成卡结构模板中$CHIP项中的SIZE字段的值,即“10”或十六进制的“0A”。%D变量参数字段被设置成ICCID的值“1234509876”。最终的命令为A0D000000A1234509876。
下面的命令使卡操作系统将持卡人姓名存入芯片上帐户目录中的帐户名文件中。系统100将SELECT ACCT命令转换成相应的卡操作系统命令。系统100找到卡操作系统记录924中的SELECT项和卡结构模板记录中的ACCT项,并以用于定义在ACCT项中的帐户目录的指定目录路径,即“5F10”代替SELECT项中定义的命令中的%F变量参数字段。最终的命令为10A40000025F10。同样地,SELECT NAME命令使系统100用帐户名文件“6F00”代替%F变量参数字段。最终的命令为A0A40000026F00。这个序列的最后一个命令是WRITE命令。系统100通过用隐含偏移值“0000”代替%0,用卡结构模板记录中NAME项所定义的SIZE字段值“30”或十六进制的“1E”代替%L以及用持卡人数据记录952的第一示例中的持卡人姓名“Smith,James”代替%D来翻译WRITE命令,以产生命令A0D000001Esmith,James~~~~~~~~~~~~~,其中每个“~”代表一个空格以将名字填充到30个字符。
系统100以相似的方式处理个人化设备记录926中的其余命令,以产生一个包含了用于对持卡人数据记录952的第一示例发行一个卡的命令的接近的数据串#\@#A0D000000A1234509876A0A40000025F10A0A40000026F00A1D000001ESmith,James~~~~~~~~~~A0A40000026F10A0A4000002E12653683091245A0A40000026F2040998。
$PR命令使系统100向个人化设备发送命令数据流。
图11、12和13所示的数据格式和结合上述例子讨论的样本数据只是用于说明智能卡个人化系统100的各个实施例的不同功能。依使用的环境而定义所需的数据和格式对于所属技术领域的技术人员来说是显而易见的。
正如所属技术领域的技术人员来说亦为显而易见的,智能卡个人化系统100包括软件程序的替换实施例,在这些软件程序中利用不同于附图所示的模块执行系统的功能。在不偏离本发明的构思和范围的前提下,系统100可以以串行或并行方式或两种方式的组合来处理数据。软件程序可以用几种广泛使用的编程语言中的一种来编写,并且模块可以根据所选择的语言而被编码为子程序、子系统或对象。相似地,系统100所使用的数据被描述和表示为具体化在数据库中的逻辑记录,但本发明并不仅限于所描述的数据记录的排列,也不是任何特殊类型的隐含的数据管理系统的应用。来自销售者,如Oracle、Sybase、Informix或Microsoft的关系数据库提供了用于管理系统中基础数据所需的基本结构,无论它是集中式的还是分布式的,但也可以用其他组织形式的数据结构,即索引的平面文件来代替这些数据库而不超出本发明的范围。
而且,以硬件、固件或软硬件组合实施系统以及以不同方式分配模块和/或数据的本发明的替换实施例对于所属技术领域的技术人员来说是显而易见的并且不超出本发明的保护范围。
应当理解上述描述只是用于说明而非限定性的。参照上述描述,很多其他实施例对于所属技术领域的技术人员来说是显而易见的。因此,应当参照后述的权利要求书来确定本发明的保护范围。
权利要求
1.一种用于发行便携式编程数据载体的方法,包括步骤从一个卡发行人管理系统获取一个个人化设备标识符和一个持卡人的个人化数据;从在由个人化设备标识符标识的数据库中的一个记录中获取用于一种个人化设备类型的设备特性数据;以及向由个人化设备类型的设备特性数据指定的个人化设备传输个人化数据以发行数据载体。
2.如权利要求1所述的方法,还包括将个人化数据转换成一种内部格式,以便于将转换后的个人化数据传输到个人化设备的步骤。
3.如权利要求2所述的方法,其特征在于个人化数据从一种由卡发行人管理系统定义的格式被转换成依据格式模板数据的内部格式。
4.如权利要求3所述的方法,还包括从以一个数据格式标识符标识的数据库中的一个记录中获取格式模板数据的步骤,所述数据格式标识符由卡发行人管理系统提供。
5.如权利要求3所述的方法,还包括从卡发行人管理系统获取格式模板数据的步骤。
6.如权利要求3所述的方法,还包括从在由一个应用程序标识符标识的数据库中的一个应用数据记录中获取格式模板数据的步骤,所述应用程序标识符由卡发行人管理系统提供。
7.如权利要求1所述的方法,还包括步骤收集与数据载体发行相关的信息;以及将来源于收集信息的统计数据报告给卡发行人管理系统。
8.如权利要求1所述的方法,还包括步骤从卡发行人管理系统中获取一个应用程序标识符;从在由用应用程序标识符标识的数据库中的一个记录中获取应用数据;以及将应用数据传输到由设备特性数据指定的个人化设备。
9.如权利要求1所述的方法,还包括步骤从一个保密源中获取保密数据;以及将保密数据传输到由设备特性数据指定的个人化设备。
10.如权利要求所述的方法,还包括步骤从卡发行人管理系统中获取一个卡操作系统标识符;从在由操作系统标识符标识的数据库中的一个记录中获取编程控制命令;以及将编程控制命令传输到由设备特性数据指定的个人化设备。
11.如权利要求10所述的方法,还包括步骤从卡发行人管理系统中获取一个应用程序标识符;从在由应用程序标识符标识的数据库中的一个记录中获取应用数据;以及将应用数据传输到由设备特性数据指定的个人化设备。
12.一种用于发行便携式编程数据载体的系统,包括一个卡发行人管理系统接口,用于从一个卡发行人管理系统获取一个个人化设备标识符和一个持卡人的个人化数据;一个个人化设备接口,用于从在由个人化设备标识符标识的数据库中的一个记录中获取用于一种个人化设备类型的设备特性数据;以及个人化设备接口,还用于向由个人化设备类型的设备特性数据指定的个人化设备传输个人化数据以发行数据载体。
13.如权利要求12所述的系统,其特征在于该系统还从在由一个由卡发行人管理系统提供的数据格式标识符标识的数据库中的一个记录中获取格式模板数据,并将个人化数据从一种由格式模板数据定义的格式转换成一种内部格式,以便于个人化设备接口向个人化设备传输转换后的个人化数据。
14.如权利要求12所述的系统,还包括一个跟踪/报告机,用于从与数据载体发行相关的系统中收集数据和将收集的数据报告给卡发行人管理系统。
15.如权利要求12所述的系统,还包括一个卡应用接口,用于从在由一个通过卡发行人管理系统接口获得的应用程序标识符标识的数据库中的一个记录中获取应用数据;以及个人化设备接口,用于将应用数据传输到由设备特性数据指定的个人化设备。
16.如权利要求12所述的系统,还包括一个保密管理器,用于从一个保密源中获取保密数据并将保密数据传输到个人化设备接口。
17.如权利要求12所述的系统,还包括一个卡操作系统接口,用于从在由一个通过卡发行人管理系统接口获得的卡操作系统标识符标识的数据库中的一个记录中获取编程控制命令;以及个人化设备接口,用于将编程控制命令传输到由设备特性数据指定的个人化设备。
18.如权利要求17所述的系统,还包括一个卡应用接口,用于从在由一个通过卡发行人管理系统接口获得的应用程序标识符标识的数据库中的一个记录中获取应用数据;以及个人化设备接口,用于将应用数据传输到由设备特性数据指定的个人化设备。
19.一种存储在一个存储设备上用于生成便携式编程数据载体的数据结构,包括多个个人化设备元件,其中通过一个唯一的个人化设备标识符对每个个人化设备元件寻址并且每个个人化设备元件指定用于一种个人化设备的操作参数,使得个人化数据被适当地格式化以向发行该数据载体所用的个人化设备传输数据。
20.如权利要求19所述的数据结构,还包括多个数据格式元件,其中通过一个唯一的数据格式标识符对每个数据格式元件寻址并且每个数据格式元件指定一个卡发行人用于格式化个人化数据的模板。
21.如权利要求19所述的数据结构,还包括多个卡操作系统元件,其中通过一个唯一的卡操作系统标识符对每个卡操作系统元件寻址并且每个卡操作系统元件指定用于向个人化设备进行传输的编程控制命令。
22.如权利要求19所述的数据结构,还包括多个应用程序元件,其中通过一个唯一的应用程序标识符对每个应用程序元件寻址并且每个应用程序元件指定由一种特定应用程序用来向个人化设备进行传输的应用数据。
23.如权利要求22所述的数据结构,还包括多个卡操作系统元件,其中通过一个唯一的卡操作系统标识符对每个卡操作系统元件寻址并且每个卡操作系统元件指定用于向个人化设备进行传输的编程控制命令。
24.一种用于发行便携式编程数据载体的系统,包括个人化设备,用于接收一个数据流并据此对便携式编程数据载体进行个人化;从一个卡发行人管理系统获取的个人化数据;以及一个智能卡个人化系统,该系统具有包含从下述组中选出的一个或多个数据元的一个数据库数据格式模板元件,卡应用数据元件,卡操作系统元件,和个人化设备元件,其中智能卡个人化系统输出作为处理由至少一个被选择数据元支配的个人化数据结果的数据流。
25.一种用于发行便携式编程数据载体的方法,包括步骤获取一个持卡人的个人化数据和设备特性数据;以及将个人化数据传输到由设备特性数据指定的个人化设备以发行该数据载体。
26.一种用于发行便携式编程数据载体的系统,包括一个系统接口,用于获取一个持卡人的个人化数据和设备特性数据,并将个人化数据传输到由设备特性数据指定的个人化设备以发行该数据载体。
27.一种用于发行便携式编程数据载体的系统,包括一个接口装置,用于获取一个持卡人的个人化数据和个人化设备的特性数据,并将个人化数据传输到由该特性数据指定的个人化设备以发行该数据载体。
28.一种用于发行便携式编程数据载体的系统,包括一个系统接口装置,用于从一个卡发行人管理系统获取一个个人化装置标识符和一个持卡人的个人化数据;一个个人化接口装置,用于从在由个人化装置标识符标识的数据库中的一个记录中获取用于一种个人化装置类型的特性数据;以及个人化接口装置,还用于向由个人化装置类型的特性数据指定的个人化装置传输个人化数据以发行数据载体。
29.如权种要求28所述的系统,还包括应用接口装置,用于从在由一个通过系统接口装置获得的应用标识符标识的数据库中的一个记录中获取应用数据;以及个人化接口装置,用于将应用数据传输到由特性数据指定的个人化装置。
30.如权利要求28所述的系统,还包括操作系统接口,用于从在由一个通过系统接口装置获得的卡操作系统标识符标识的数据库中的一个记录中获取编程控制命令;以及个人化接口装置,用于将编程控制命令传输到由特性数据指定的个人化装置。
31.如权利要求28所述的系统,其中该系统还从在由一个由卡发行人管理系统提供的数据格式标识符标识的数据库中的一个记录中获取格式模板数据,并将个人化数据从一种由格式模板数据定义的格式转换成一种内部格式,以便于个人化接口向个人化装置传输转换后的个人化数据。
全文摘要
一个智能卡个人化系统包括一个包含卡发行人数据格式模板、卡应用、卡操作系统命令和个人化设备规定的数据库,并为一个能够动态调整发行过程中的变化的卡发行过程提供一个集中的输入和输出接口,以允许卡发行人在卡发行过程中能够容易地改变格式、卡应用、卡操作系统和/或个人化设备(130)。与任一个卡发行人管理系统(150)的系统接口管理向使用的特定个人化设备传输持卡人数据和卡应用,并维护用于实时和脱机询问的统计数据以支持临界管理和报告功能。而且,系统还利用多种保密方法以防止欺诈行为的发生。
文档编号G06K17/00GK1222988SQ97195304
公开日1999年7月14日 申请日期1997年4月14日 优先权日1996年4月15日
发明者D·R·图施, W·W·霍伊泽尔 申请人:尤比克公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1