CN1189914A - 卡接口 - Google Patents

卡接口 Download PDF

Info

Publication number
CN1189914A
CN1189914A CN96195204A CN96195204A CN1189914A CN 1189914 A CN1189914 A CN 1189914A CN 96195204 A CN96195204 A CN 96195204A CN 96195204 A CN96195204 A CN 96195204A CN 1189914 A CN1189914 A CN 1189914A
Authority
CN
China
Prior art keywords
card
data
string
command
identifier
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
CN96195204A
Other languages
English (en)
Other versions
CN1138196C (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.)
SmartMove NZ Ltd
Original Assignee
SmartMove NZ 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=19925257&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN1189914(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by SmartMove NZ Ltd filed Critical SmartMove NZ Ltd
Publication of CN1189914A publication Critical patent/CN1189914A/zh
Application granted granted Critical
Publication of CN1138196C publication Critical patent/CN1138196C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/0004Hybrid readers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/0008General problems related to the reading of electronic memory record carriers, independent of its reading method, e.g. power transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/0013Methods or arrangements for sensing record carriers, e.g. for reading patterns by galvanic contacts, e.g. card connectors for ISO-7816 compliant smart cards or memory cards, e.g. SD card readers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10009Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
    • G06K7/10297Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves arrangements for handling protocols designed for non-contact record carriers such as RFIDs NFCs, e.g. ISO/IEC 14443 and 18092
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data

Abstract

一种连接于主应用程序及数据存储卡之间的卡读卡机/写入机。所述卡读卡机/写入机用命令的高级语言从应用程序读取及向它写入。所述卡读卡机/写入机将主程序的高级语言命令译为对应的用于从数据存储卡读取或写入的低级命令序列。所述卡读卡机/写入机存储了多组这样的低级命令,并且能够为任何和所述卡读卡机/写入机连接的卡确定卡类型,及能够为所确定的卡类型使用适当的命令集。所述卡读卡机/写入机也将来自于卡的低级命令译为用于主应用程序的高级命令。所述卡读卡机/写入机可由需要的情况下的其它的卡类型的低级命令级装入。

Description

卡接口
技术领域
本发明涉及具有磁性或电子数据存储能力的卡(“智能卡”),特别涉及在这样的卡和具体应用程序控制器之间的接口。
背景技术
智能卡及智能卡读卡机已在专利中公开。例如参见美国专利4102493和4404464。智能卡一般符合ISO标准7816的一个或多个部分。
几种现有的智能卡读卡机/写入机采用程序化的微处理器以在外部控制系统控制下对智能卡进行一系列的预定动作。外部控制系统必须对正被使用的智能卡有充分的了解。对正被使用的智能卡的任何改变必须反映为外部控制系统的改变。外部控制系统的设计者或使用者必须彻底理解读卡机/写入机将采用的智能卡。
另外几种现有的智能卡读卡机/写入机含有程序化微处理器以自主地对智能卡进行所有的动作。这些读卡机/写入机一般形成完整的产品,即,自动售货机或销售点终端。改变这些产品以支持新的或不同的智能卡需要重新设计或修改读卡机/写入机的基本元件。从而限制了最初的设备生产商在传统产品中加入智能卡技术的能力。
现有的智能卡读卡机/写入机分为两类。第一类是作为卡联接器的读卡机/写入机卡联接器只具有硬件及读写智能卡所必需的最少的软件。卡联接器支持来自不止一个卡生产商的多种卡。但是由于卡的最终用途未知,因而这种支持被极大地限定在最简单及最一般的任务上。联接器一般被用作进入智能卡领域的开发工具,或者作为向现有的产品设计中加入智能卡能力的工具。在任一种情况下,联接器的使用者必须获得或具有对智能卡,卡数据结构,及数据传输过程的充分认识。
另一类是具有嵌入式智能卡能力的应用或产品,读卡机是主控制系统的内在部分。由于数据内容,结构,安全性及传输过程由设备生产商预先决定,因而只能支持少数几种类型的卡。
目前,在生产商的产品中加入智能卡能力或将现有的读卡机改造以处理新的智能卡没有简易的方法。除此之外,生产商在智能卡领域是专家。如果竞争者沿这条路继续进行下去,则重新处于有利的竞争位置将要花费大量的财力及时间。另外,目前没有能够读多种类型的磁卡及多种类型的芯片卡的读卡机。
发明公开
因此本发明的一个目的是提供一种在具有磁性或电子数据存储能力的卡和特定应用程序控制器之间使用的接口,从而至少在克服上述缺陷方面取得一定的进展。
第一方面,本发明在于使主应用程序和数据存储卡连系的卡读卡机/写入机,其特征在于:
所述卡读卡机/写入机可响应所述的采用至少一种指定的高级语言的应用程序,
存储有分别对应于一种已知数据存储卡类型的多个低级协议集,
所述卡读卡机能够为任意和它连接的卡确定卡类型,由于它具有一协议集,并从其存储的协议中选择适合于所确定的卡类型的低级协议,
所述卡读卡机/写入机从主程序读出并将高级语言命令译为所述确定的低级协议中的相应命令,并将这些低级命令写入所述卡中,
及所述卡读卡机/写入机从所述卡中读出所述确定的低级协议的命令,并译为所述高级语言中的相应命令,并将这些命令写入主应用程序。
第二方面,本发明在于一种将主应用程序和数据存储卡连接的方法,包含如下步骤:
确定卡类型,
为确定的卡类型从存储的协议中选择合适的低级协议,
从主程序读取高级语言命令,
将所述读取的高级语言命令译为所述确定的低级协议中的相应命令,
将所述相应命令写入所述卡中,
从所述卡中读取所述确定的低级协议的命令,
将所述低级协议命令译为由所述高级语言产生的相应命令,及
将由所述高级语言产生的所述相应命令写入所述主应用程序。
第三方面,本发明在于一种使控制器能够通过卡读取/写入站从多个包含有磁性或电子数据存储装置的多个已知类型的卡设备读取和向它写入数据的方法。该方法使用一个存储程序,存储数据处理器,所述方法包括:存储含有已知卡特征数据串及各个串对应的卡标识符的第一数据阵列,存储含有卡标识符及各个标识符对应的命令串的第二数据阵列,并且在所述处理器执行程序,该程序使所述处理器:
(1)检测在所述读取/写入站的卡的存在并将卡检测信号传给所述控制器,
(2)读取表征该卡的数据串,
(3)在至少一个所述第一数据阵列中搜索匹配的数据串,一旦匹配成功就取回相应的卡标识符,
(4)采用取回的卡标识符在所述第二数据阵列中选择适当的命令串,
(5)从所述控制器接受类属处理指令,
(6)使用选择自第二数据阵列中的命令串将来自所述控制器的指令译为适合于插入的卡的命令,
(7)根据所述类属指令或者从所述卡读取数据,或者向它写入数据。
第四方面,本发明在于一个将智能卡及其它具有电子或磁性数据存储的卡和要求对所述卡进行读/写访问的控制器连接的通用卡接口,它包括:
一个卡读取/写入站,在其中插入卡以进行数据转移,一个具有相关存储器及输入-输出端口的处理器,
所述读取/写入站连接至一个输入-输出端口,而所述控制器连接至一个第二输入-输出端口,
存储在所述存储器中的接口软件及数据阵列,
所述数据阵列包括第一和第二数据阵列,其中所述第一数据阵列含有已知卡特征数据串及各个串对应的卡标识符,所述第二数据阵列含有卡标识符及各个标识符对应的命令串,所述软件当由所述处理器执行时,使所述处理器:
(1)检测在所述读取/写入站的卡的存在并将卡检测信号传给所述控制器,
(2)读取表征该卡的数据串,
(3)在至少一个所述第一数据阵列中搜索匹配的数据串,一旦匹配成功就取回相应的卡标识符,
(4)采用取回的卡标识符在所述第二数据阵列中选择适当的命令串,
(5)从所述控制器接受类属处理指令,
(6)使用选择自第二数据阵列中的命令串将来自控制器的指令译为适合于插入的卡的命令,
(7)根据所述类属指令或者从所述卡读取数据,或者写入数据。
第五方面,本发明在于一种使应用软件能够和任何已知类型的智能卡或其它具有电子或磁性数据存储的卡设备连接的方法,它包括:
(1)从所连接的卡中读取表征该卡的数据串,
(2)在包含有已知卡特征数据串及各个串对应的卡标识符的第一数据阵列中搜寻一匹配的数据串,一旦找到匹配的数据串就取回对应的卡标识符,
(3)利用取回的标识符,从含有卡标识符及各个标识符对应的命令串的第二数据阵列中选择适当的命令串,
(4)从所述应用软件接受类属处理指令,
(5)利用从所述第二数据阵列中选择的命令串将从所述应用软件来的指令译为适于正插入的卡的低级命令,及
(6)根据所述类属指令或者从所述卡读取数据,或者写入数据。
第六方面,本发明在于一种使应用软件能够和任何已知类型的智能卡或其它具有电子或磁性数据存储的卡设备连接的软件算法,它包含一个功能模块的分层结构,其中:
第一级模块从所连接的卡中读取表征该卡的数据串,并将所述数据串传递给第二级模块,
第二级模块在包含有已知卡特征数据串及各个串对应的卡标识符的第一数据阵列中搜寻一匹配的数据串,一旦找到匹配的数据串就取回对应的卡标识符,并将所述卡标识符传递给第三级模块,
第三级模块利用传递给它的标识符,从含有卡标识符及各个标识符对应的命令串的第二数据阵列中选择适当的命令串,
第五级模块从所述应用软件接受类属处理指令,并将这些指令传递给第四级模块,
第四级模块利用第三级模块选择的命令串将来自于所述第四级模块的指令译为适于正插入的卡的低级命令,及
第一级模块根据从第四级模块传递来的转换过的类属指令或者从所述卡读取数据,或者写入数据。
本发明的通用卡接口能够识别提供给它的任何ISO卡类型,使用适于该种卡类型的协议和该卡通信,及使用一种高级命令语言和主应用程序通信。
图面简要说明
下面将参考附图说明本发明的一个特定实施例。
图1是本发明的最佳实施例的设备的透视图,
图2是图1的实施例的设备的横截面的侧视图,
图3是本发明的最佳实施例的控制系统组合体的印刷电路板(PCB)的透视图,
图4是本发明的最佳实施例的PCB的另一个透视图,
图5是本发明的一个实施例的电气和电子器件的方框图。
本发明的最佳实现方式
本发明的一个实施例是采用通用卡接口(即UCI)作为支持各种各样的智能卡和信用卡的软件控制的卡接口。
参见图1到图5,UCI具有两个主要部分,一个物理卡接受部分31和一个控制系统组合体32,控制系统组合体32包括控制卡接受设备31所需要的全部电子线路。卡接受部分31具有一个接受所有类型卡的单插槽33,卡接受设备31的形式主要取决于UCI的应用。例如,显示器的大小,辅助键盘上按钮的数字配置,卡插槽33的配置及卡的物理接受方式(卡是完全缩进卡接受部件中还是卡部分留在卡接受部件外面)都是可改变的。控制系统组合体32与应用无关,并且能够支持上述各种改变的卡接受部件。
参见图1和图2,本发明的特定实施例的卡接受部件易于装配到现有自动售货机上,特别地可置于标准的钞票合法性确认器的空位上。卡接受部件具有友好的用户界面,包括一个2线LCD显示器40,该显示器要么为绿色,要么为黄色,以改善阴暗条件下的可视性,一个具有3个按钮(OK43,BALANCE41,及CANCEL42)的用户输入面板,所述3个按钮应能对用户的触摸作出响应,及一个卡插入插槽33。卡插入插槽33具有一个推挽式接受器,一个外部物体交换空间,着陆接触点,封闭的检测器开关,并且按照卡水平插入,芯片一侧向上来接受卡。
参见图3到图5,UCI控制系统组合体包含一个主微处理器46及一个支援微处理器47。主微处理器46可为,例如Dallas DS5002 FP-16。支援微处理器47可为,例如Motorola MC68302。
例证的主处理器来源于工业标准“8051”体系结构,具有安全存储器保护机制以防范偶然或有意的窜改或检查。正如8051结构一样,存储器被分为程序使用的部分及用于存储数据的部分。该存储器48是均由电池支持的静态RAM,电池49是长寿命的锂电池。在电源发生故障的情况下,存储器48被自动转换到电池并处于写保护。用于数据及程序的存储容量是独立配置的。在所有情况下如果需要可选范围为128K字节到512K字节。
例证的支援处理器基于工业标准“68000”结构,增强了高速数据通信能力,由于支援处理器仅仅对磁卡读取及数据传输之类的低安全性功能负责,在存储器中不保留敏感的数据,该处理器由一个监视时钟保护以防止误操作。存储器50由用于程序及数据的128K字节的静态RAM组成。存储器50并不必需后备电池,因为当需要时,可从主微处理器重新调入。一个32K字节的ROM含有嵌入的引导装入程序,除了嵌入的引导装入程序外的所有软件均是可远程再调入的。
UCI电气子部件还包括Dallas DS1293S之类的实时时钟51,该实时时钟具有精确的时刻及日历功能,它按照一个独立的时钟以32.768KHz的频率运行,并从主微处理器46接受电力。
PCB上的一个小插座52允许在需要的情况下将一个SAM(物理上删减的智能卡)加到该印刷电路板上。这个SAM在高安全性应用中可用于保存密码键或加密算法。主微处理器46也可实现这一任务,但是从商业观点看最好采用SAM。
UCI的PCB具有适于接受一个1或2磁道磁条阅读器的连接口,UCI向该阅读器提供5V电压,并接受标准TTL逻辑信号。
该阅读器能接受符合ISO7811或ISO7813的卡。UCI可同时阅读两个磁道,这两个磁道为磁道2和磁道1或磁道3。
智能卡接受器电路被设计成支持符合ISO7816的卡,外加适当的机械卡接受器机制。借助于校正卡接受器,通过普通的插槽可接受混合“磁性和芯片”卡。这是在要求逐渐迁移的市场所希望的。同步(存储,或令牍)卡和异步(微处理器)卡都可被接受。程序电压(VPP)最好限于现代卡所期望的5V。
由UCI优先支持的其它使用者接口可选项包括:-辅助键盘可直接地和UCI连接。一般地只需要点阵辅助键盘,但是支持大的辅助键盘配置也不需要额外的努力。-液晶显示器(LCD)可直接地和UCI连接。大多数采用Hitachi HD44780芯片(一种工业标准)或它的同等物的液晶显示器都是适用的。这些显示器可以为各种格式,从1线,16字符,到4线,24字符。-一个状态指示器。最好在UCI的前部布置两个发光二极管(LED)以提供低成本的UCI的状态指示。如果使用发光二极管,那么发光二极管应在卡插槽的两个末端处伸出卡插槽面板,双倍作为状态指示器,并高亮显示卡插槽位置。-一个声音反馈指示器。在面板上含有一个蜂鸣器为键击或错误状态提供声音反馈。合适的蜂鸣器的一个例子是在3100Hz标称频率产生90dB(@0.1m)的声音强度的蜂鸣器。
UCI对于第三方设备是通用接口,在所述第三方设备中包括有所述UCI。售主接口包括三个截然不同的元件,一个高压继电器,一个当前循环串行总线及一个RS232串行接口。此外,卡接受设备支持通过RS485/RS232连接器16的串行数据调制解调器连接,或打印机连接。
控制系统组合体包括两个电源,具体地说一个向基本微处理器存储器和时钟提供后备电源的在板电池,及一个稳压主电源。用于电池电源的一种合适的电池可为,例如3.6伏1200mAHr的电池。
本发明的UCI具有以绝对少的指令和过多的智能卡和磁卡连接,及通晓这些卡,并且执行任何需要的动作的能力。它可读取ISO7811信用卡磁道1或磁道2,从ISO7816-3(T=0及T=1)智能卡读取及写入数据,及从ISO7816存储卡读取和写入数据。
在传统的智能卡联接器中,由于联接器的最终用途未定,因而卡的电子支援被限于非常简单的任务。但是本发明通过附加软件(微处理器程序)的层扩展了联接器的能力,各层加入了更多的功能度,同时,简化了和卡的通信任务。为了加入这些层并且用它们实现有用的功能,UCI包括一个格式数据库,它含有有关UCI可能接受的每一种类型的卡的信息。这一信息形成了使用该卡的规则及准则。它包括卡数据结构,传送过程,数据内容,及安全信息的摘要。如果需要指示,准则将引导UCI参考安全模块。该安全模块是一个类似于智能卡的小的微处理设备,所述智能卡是PCB的一个半固定部件。
借助于从格式数据库得到的信息,UCI可容易地确定UCI的全部功能度及卡组合。这样可修正为响应任意的外部指令而在内部采取的动作的序列。外部设备并不需要鉴别各种类型的卡之间的差别。由于外部设备对每一种新插入的卡发出的指令相差不大,因而在UCI和外部设备之间的软件接口被简化。
通过认识到有限数量的指令可以完成对卡所需要的绝大多数动作,可进一步简化软件接口。最顶层的软件层积聚确定软件接口所必需的全部指令或命令。当一低层软件层使用指令时,格式数据库中的信息也被用于检查任何潜在的对系统安全性的违背。
该软件以如下表所示的层状的模结构的形式被组织。
                   表1:微处理器程序的层
     层        目的                     使用  可应用的标准
加密,安全性   卡格式库 卡原始库
     8应用 和外部环境的接口
     7表示 和应用层的通用接口     Y
     6方法过程 和所有活性卡的通用接口     Y     AS2805
     5方法原函数     支持程序     Y     Y
     4实体过程 和所有卡数据结构,例如文件,包,目录的接口     Y     Y
     3实体原函数 对文件,包,目录的支持程序     Y     Y
     2流控制,ISO级命令 卡(ISO)命令级的接口     Y ISO7816部分3,ISO7816部分4
     1低级原函数,硬件驱动程序 硬件支持,控制。位/字节级的卡接口     Y ISO7810,ISO7816部分1,ISO7816部分2
如同在最佳实施例的上表中所表示的,UCI的操作分为八层。
每层可被认为是对象集的组成,其中一个对象是函数及数据的自含式布置。
各层的对象一般只能由紧邻其的上或下层访问。层之间的接口在基于格式数据库信息的控制下组织严密,可防止冒失的操作。
格式数据库中的数据仅可提供给选定的对象和层,这样减少了外部设备获得特定卡格式敏感知识的可能性。同样,对安全性和密码程序模块的访问也被限制在选定的对象和层上。
格式数据库包含两个主要部分,格式库及原始库。原始库含有所有接受的卡的预标记细节,这包括卡容量,电信号定时,字符交换协议,在基础卡上可用的特征的列表。这些信息由卡生产商提供。格式库含有生产商售出卡后,由发行人加入到卡中的细节。
现在来看各层的操作,这些层从第1层的初始的低级的面向字符的操作开始直到第8层的高级通用接口。
第1层的职责包括插入或取出卡,及简单的向卡传输或读出数据所要求的基本动作。
插入卡就启动始终被监视的微动开关,发出信号给更高层以通知卡插入,以便采取适当的动作,更高层向下传递指令以试图识别插入的卡的类型。随后该卡就具有根据ISO7816施加的电力和控制信号。当不再需要该卡时,卡接口电路以ISO7816确定的顺序取消电力。如果过早地取出卡,那么立即尽可能快地进行同样的程序。向更高层通知卡已取出,从而采取进一步的“关闭”动作,它包括删除话路密钥,异常记录,或向卡持有人发出警报,在这一级含有的另一个功能是数据流的加密或解密。
在这一层完成对卡读取或写入单个字符和数据的位,但是把字符组合为信息和命令是更高层的范围,对数据流,信息,命令或内似物中含有的信息的处理留给更高的代码层。
UCI的第2层在卡命令级控制和卡的相互作用,例如2层适合于正确地格式用于由1层传送给卡的命令和数据。对智能卡的信息格式化,错误检测,特征传输由第2层按照ISO7816的规范进行。
对各种UCI特征,例如时刻时钟,蜂鸣器,通信端口,显示器及辅助键盘的支持在一这层由代码加强。在这一层找到的其它支援代码包括打印驱动程序,显示驱动程序,调制解调器驱动程序,辅助键盘缓冲器,及ISO7810磁卡阅读数据缓冲器。
在卡插入期间,第2层被用来启动对卡的复位过程。卡对复位过程的响应被用来确定卡是以同步方式还是以异步方式进行通信。这一信息由第3层使用。
对第3层的连接通过“陷阱”或软件被中断。层1+2存在的陷阱用于:实时时钟,系统,辅助键盘,LCD,通信端口,磁卡读卡机,智能卡/安全模块。
UCI的第3层的操作取决于卡的类型。因而正确在识别卡的类型是重要的,取决于卡是同步卡(典型地令牌卡,或存储卡,不基于微处理器)还是基于微处理器的异步卡。
为了识别同步卡,首先从卡读取三个字节。将它们和包含于一个小阵列中的3,2或甚至1个字节串比较。在相邻的列中是各种卡生产商提供的卡的参考编号。对任一串的匹配表明该卡已知,并被允许。表2表示了这样的阵列的一个例子。现在识别出该卡是来自特定生产商的特定类型的同步卡,UCI可只选择那些适用于这种卡的命令和方法过程。从而向更高层通知所断定的卡类型。
         表2
    匹配的串     卡类型
    123     类型3
    56E     类型1
    AB     类型12
    C     类型3
    7     类型18
为了识别异步卡,将ISO7816复位应答串的历史字节和包含于一个小阵列的一列中的串比较。在相邻的列中是各种卡生产商提供的卡的参考编号。串之间的匹配表明该卡的类型已知,并被允许。这样的一个阵列表示于表3。
            表3
     匹配的串     卡类型
    24,10,00     类型6
    30,11,03     类型2
    31,1F,FF     类型15
    4C,IF,FF     类型7
    4D,1F,FF     类型19
    23,00     类型7
现在识别出该卡是来自特定生产商的特定类型的异步卡,UCI可只选择那些适用于这种卡的命令和方法过程。从而向更高层通知所断定的卡类型。
通过下面的函数来使用上面概述的方法。int decide_card_type(void)Returns:M_CARD_TYPE,或NULL(如果卡类型未知)。
为了和同步卡通信,第3层利用一个函数“Access_Sync_Card来控制通信,例如:int   Access_Sync_Card(int command,int card_type,int len,char*pointer)其中command选自  READ_UPDATE
             ERASE_UPDATE
             READ_FIXED
             READ_TOKEN
             READ_MANUFACTURER
         DECREMENT_TOKENS
         PRESENT_SECRET_CODEcard_type是如同在L3.1,L3.3确定的卡类型,len是将从buffer获取的字节的数目,或者预期的从卡返回的数据字节的数目,*pointer指向在完成函数调用时,含有用于卡的数据,或来自卡的数据的buffer,所述函数返回NO_ERROR,如果命令成功,或者ERR_CARD_LOCKED或者ERR_FUNCTION REFUSED或者ERR_THREE_BAD_PRESENTATIONS如果命令不成功。
根据卡类型,及命令,函数“Access_Sync_Card”访问示于表4的“动作串”指针表。
卡类型                                  命令
READ_UPDATE  READ_FIXED  READ_TOKEN READ_MANUFACTURER DECREMENT_TOKENS
  1   0   s1   s2   s4   s8
  3   s5   s1   s2   s4   s8
  4   s5   s1   s3   s4   s7
  5   0   s12   0   s13   0
  12   0   s11   0   s13   0
  13   0   s15   0   s14   0
  17
  18
空指针指示对当前卡,命令无效。
表4
表4的指针s1等指向另外的表,例如表5.this time of“actionstrings”。一个“动作串”可由一个或多个卡使用。
  指针                              动作串
   s1
   s2
   s3
   s4  READ_128,RESET_ADDRESS,STEP8,ERASE32,WRITE32,NULL
   s5  RESET_ADDRESS,STEP10,READ32,NULL
   s6  RESET_ADDRESS,STEP10,WRITE16,NULL
   s7  STEP96,NULL
   s8
   s9
表5
一个“动作串”由带有一个或多个“标记”的串组成,带有一个NULL端点符。大多数“标记”后跟随着一个“计数”值。“计数”确定“标记”起作用时卡位或时钟循环的数目。例如“动作串”为如下格式:[tag[,count],][tag[,count],]NULL其中tag是RESET_ADDRESS
     SETP count
     READ count
     ERASE count
     WRITE count之一。
为了和异步卡通信,第3层采用一个函数“Access_Async_Card来控制通信,例如:int   Access_Async_Card(int command,int card_type,int len,char*pointer,int P1,int P2)其中command选自  READ_FILE
             WRITE_FILE
             SELECT_FILE
             SELECT_DIRECTORY
             SELECT_KEY
             UPDATE_FILE
             PRESENT__SECRET_CODEcard_type是如同在L3.2,L3.3确定的卡类型,len是将从buffer获取的字节的数目,或者预期的从卡返回的数据字节的数目,*pointer指向在完成函数调用时,含有用于卡的数据,或来自卡的数据的buffer,P1:参数1:例如文件中的偏移P2:参数2:例如选定的文件数并且函数返回下列之一:
    4001      ERR_FUNCTION_INVALID
    4002      ERR_FUNCTION_MISMATCH
    4xxx hex  由UCI代码检测到的其它错误状态
    6xxx hex  =ISO和生产商错误代码(未翻译)
    9000      NO_ERROR
    9xxx hex  =ISO和生产商错误代码(未翻译)如果命令执行成功,函数返回“NO_ERROR”。
根据卡类型,及命令,函数“Access_Async_Card”访问示于表6的“格式串”指针表。
 卡类型                        命令格式串
READ_FILE WRITE_FILE   SELECT_FILE SELECT_DIRECTORY  SELECT_KEY
 6 0 f21   f12 f14  f18
 COS16DES fl5 f21   f12 f14  f18
 PCOS f15 f21   f13 f14  f17
 2 0 f32   0 f33  0
MCOS 0 f31 0 f33 0
 COS 0 f35   0 f34  0
 15 0   f39 0  f41
 19
空指针指示对当前卡,命令无效。
表6
指针指向另外的表,例如表7的“格式串”。一个“格式串”可由一个或多个卡使用。
  指针       动作串
  f154  51 80 3A 00 P2 00
  f12  55 80 3A 00 03 00
  f14  63 80 34 00 00 08
  f18  41 84 DA 00 P2 LEN
  f31
  f33
  f35
  f39
  f41
表7
格式串是用来直接传输给卡的机器代码指令。格式串是以如下格式构成的小阵列:FLAG,CLA,INS,P1,P2,LENFLAG:if bit 0设定:  “写”命令if bit 1设定:参数中的len必须和串中的LEN匹配,否则返回错if bit 2设定:参数中的P2必须和串中的P2匹配,否则返回错if bit 3设定:参数中的P1必须和串中的P1匹配否则返回错if bit 4设定:串中的LEN被使用,参数被忽略if bit 5设定:串中的P2被使用,参数被忽略if bit 6设定:串中的P1被使用,参数被忽略
为了和更高层连接,第3层使用了“命令串”。命令串由一个或多个标记组成,用NULL终止。各个命令串(CS)由其CS编号或CS名定位。命令标记同样由其命令标记名定位。命令串可从标记和其它命令串构成,以实现有关卡及有关系统的功能。
命令标记存在以实现UCI中几乎所有可能的动作。在许多方面它们可被看成形成一种高级程序语言。命令标记分为三类,相对的,直接的和间接的。直接命令标记的行为动作不能被改变,确切的行为动作嵌入到标记中。相对的和间接的标记采用参数来改变标记的行为动作。在相对标记情况下,命令串中变化参数跟在标记后面。在间接命令标记情况下,参数从一个参数堆栈中读取,该参数堆栈可由其它标记改变。命令标记的例子包括:用于接口事件的
Determine card type&issuer,(确定卡类型及发行者)
Call  Access_Sync_Card function,(调用Access_Sync_Card函数)
Call  Access_Async_Card function,(调用Access_Async_Card函数)
Read magnetic card data;(读取磁卡数据)用于控制外部设备的
Send messages to printers,modems,displays,(发送信息给打印机,调制解调器,显示器)
Get dada from keypads,input switches,(从辅助键盘,输入开关获取数据)
Read real-time clock;(读取实时时钟)及用于内部程序操作的
Copy,manipulate data strings,(拷贝,操作数据串)
Compare strings,(比较串)Test“condition”,(测试“状态”)Skip next command tag if condition,(如果状态为真,跳过下一命令标记)Jump to new command string,(跳转至新的命令串)Call new command string.(调用新的命令串)
为了和卡连接,重要的是了解卡存储器的数据结构和格式。为了组织及供给所需要的有关卡存储器的数据,UCI具有一个文件格式数据库。一旦识别出卡类型及发行者编号,并且(如果能应用的话)选定一个用途,该数据库就可被用作使用用途文件的指南。表8是这样的显示出卡类型,发行者及用途分部的数据库的一个例子。用于给定用途的文件由文件编号,及可能的文件名定位,而文件编号及可能的文件名又指向一文件描述符。
卡类型   发行者    用途  文件号   文件名     文件描述符
卡A 银行1 银行信用卡I 1
2
3
4
5
6
7
信用卡m 1
2
3
4
5
6
银行2 银行信用卡j 1
2
3
4
5
6
7
8
9
10
11
卡B 银行3 信用卡n  I
 e
 J
 s
银行信用卡k 1
2
3
4
5
6
7
8
9
10
11
文件描述符列举下列文件属性:文件名借方关键字指针贷方关键字指针密码指针读权限写权限更新权限文件大小加密方法
关键字指针也可指示任意的对远程键存取,AS2805(或类似)协议,在线信贷,或其它装置的需要。
每选择一个新文件(或者在存储卡情况下“文件区”)时,文件状态寄存器被更新,包含下述信息的部分或全部:文件层次/目录文件号/名文件标记符    任选长名文件描述      包(purse)/关键字/标准/属性选项          包(purse)特性大小          以“字节+位”表示访问准则      读/写/更新级,及锁定。
当卡不支持进一步的高级特征时,寄存器的相关部分为空。
从支持不止一个发行人的卡上也可得到相似的,但有限的信息。下列为转换目录时一般可获得的一些数据:目录号存取条件。
一些通用数据可通过基础检查从卡中访问。这一信息由第4层到第6层使用以支持和确证从表8中得出的信息。
UCI程序的第4层负责实体过程。其目的是和卡数据结构,文件,PURSE,和目录连系起来。第4层执行的一个功能是确定插入的卡的发行者。一旦卡的类型被确定,一些命令串就试着去识别卡的文件及数据布局。尝试区别卡类型的命令串的一个例子示于表9。
 卡类型    尝试的命令串  作为结果产生的发行者编号
 1  1,2,3  16,16,16
 2  7,38  3.8
 3  8  2
 4  9,32  15,8
 5  25,42  16,9
 6  10  16
 7  4,5,6  9,16,16
 8  16  12
 9  11  4
 10  23,51  3,4
 ....  ..........  ......
表9
如果一个命令串按照程序执行,那么作为结果产生的发行者编号成为止发行者(或共同占有使用)的索引。
一旦确定了卡发行者编号,更高的代码层可确定当前卡的能力及应用组合。
主要用于发行者识别的命令串动作的一个例子是:CS:nIF card is“Async”and Muti directorySelect Master directoryFind First“Unrestricted Read”fileOpen FileRead FileIF file contents=CRD pattern
  copy file data to CRD buffer
    set  lssuer  Number=n第4层也负责为卡处理关键字及密码。
第5层含有用于和卡连系的基本进程。对在UCI第8层访问的和每一种卡相关的类函数,第5层包括一个表示对该用途的相应的命令串的卡类型+发行者编号的表5。如果对于当前的卡或用途,请求的函数无效,那么零替代命令串编号。
该表允许将第8层的类函数描述译为低层的用途特性描述。
第5层也包括对下列的支援程序:
通信协议(确定DES,HELC,调制解调器,延迟上装)
借方,贷方事项
按照AS2805或类似的财务事项
MACing
事项记录上装
信息格式化
和卡用途的安全模块逻辑连接
对通信的关键字和密码处理
RSA加密程序
当第5层包括用于基本过程的表及程序时,第6层利用这些表及程序以在第7层和第8层的类函数及指令和低层的卡类型或发行者,或低层的用途特性指令之间转换。
第7层提供由外部设备使用的统一的归约指令集。
UCI的第8层使使用者(外部设备)和所有的下层隔离,从而使用者可发出简单的类命令并允许UCI采取完成这些命令所需要的复杂的动作。实际上第8层的接口看上去和卡类型无关。
在第8层的UCI可由使用者通过例如开关,按钮,及中继或RS232串行数据链路而被通信连接。
将由第8层作用的类命令的例子是:新卡检测识别新卡,读卡编号,整体的及使用者概述结账(acc)更新整体的,使用者信息借贷账(acc,amnt)信贷账(acc,amnt)读未格式数据文件(文件名)更新未格式数据文件(文件名)上装事项下装OS(操作系统)读辅助键盘打印信息显示信息配置显示器,打印机,调制解调器,I/O设备载入关键字(S)
作为UCI操作的一个例子,当插入一个新卡时,第8层从“新卡检测”(第1层)接收一个信号。外部设备(使用者软件)随后决定识别该卡,并可能实施一个事项。从第8层:执行识别新卡等它转换为下列动作:-执行decide_card_type以确定生产商卡类型
(这一动作使用了表2和表3中覆盖的过程,这些过程再使用相对于第2层提到的过程)-执行相对于第4层概述的过程以识别任何可能的应用
(这一动作使用了第3层的函数,命令串,命令标识,及表6和7有关的数据)。
作为UCI操作的另一个例子,当从卡中借贷账时,从第8层:执行借贷(acc#,amt$)函数[L8.1.5]从第6层:使用第5层的表,检查对于该卡是否存在用于“借贷”的命令串从第6层:如果在表中是可用的,执行命令串(命令标记符序列)从第3层:命令串被解释为下列动作:-在卡上选择应用区/子目录,-在子目录中选择文件或包(purse)文件,-如果需要选择正确的密码关键字(如同在命令串中指示的一样),
(使用表8来帮助选择子目录,文件及关键字)提供任何使用的密码关键字,用“数值”改变文件或包(purse)文件,记录事项细节(如果需要的话)。
于是发出给UCI的简单的类命令都是由使用者软件所要求的,UCI完成和实际卡的连系的各个方面,而不依赖于发行者的卡类型。
最佳实施例中描述的UCI具有如下优点:1)可识别多种卡类型,2)知道每一种卡的特征和限制,3)知道数据在每一种卡上的布置及所有存取的有关原则,4)动作不是预先规定的,而是由外部设备确定,及5)和外部设备的接口简单,从而外部设备的生产商只需了解一点或不需要了解有关智能卡,安全算法,或财务事项处理的知识。

Claims (12)

1.一种使主应用程序和数据存储卡连接的卡读卡机/写入机,其特征在于:
所述卡读卡机/写入机可响应使用至少一种指定的高级语言的所述应用程序,
存储多个低级协议集,每个低级协议集对应于一种已知的数据存储卡类型,
所述卡读卡机能够为任意和它连接的卡确定卡类型,由于它具有一协议集,并从其存储的协议中为所确定的卡类型选择适合的低级协议,
所述卡读卡机/写入机从主程序读出并将高级语言命令译为所述确定的低级协议中的相应命令,并将这些低级命令写入所述卡中,
及所述卡读卡机/写入机从所述卡中读出所述确定的低级协议的命令,并译为所述高级语言中的相应命令,并将这些命令写入所述主应用程序。
2.如权利要求1所述的卡读卡机/写入机,其特征在于它可装入适于除最初存储的协议集的卡类型  外的其它卡类型的卡类型协议集。
3.如权利要求1或2所述的卡读卡机/写入机,其特征在于多个分别对应于一种已知数据存储卡类型的卡特征串被存储,所述卡读卡机/写入机从和它连接的卡中读取表征该卡的数据串,所述卡读卡机/写入机用一个所述存储的卡特征串和所述读取的数据串匹配,从而确定卡类型。
4.如权利要求1到3的任一所述的卡读卡机/写入机,其特征在于每个所述低级协议集包含一组命令串,所述卡读卡机/写入机将主程序的高级语言命令译为相应的命令串。
5.如权利要求1到4的任一所述的卡读卡机/写入机,其特征在于所述卡读卡机/写卡机识别来自主程序的,所述确定的卡类型不支持的命令,一旦识别出一个不支持的命令就向所述主程序写入一个错误命令。
6.一种将主应用程序和数据存储卡连接的方法,包含如下步骤:
确定卡类型,
为确定的卡类型从存储的协议中选择合适的低级协议,
从主程序读取高级语言命令,
将所述读取的高级语言命令译为所述确定的低级协议中的相应命令,
将所述相应命令写入所述卡中,
从所述卡中读取所述确定的低级协议的命令,
将所述低级协议命令译为由所述高级语言产生的相应命令,及
将由所述高级语言产生的所述相应命令写入所述主应用程序。
7.如权利要求6所述的方法,其中确定卡类型包括如下步骤:从卡读取表征该卡的数据串,并用多个存储的卡特征串中的一个特征串和所述读取的数据串匹配,从而确定该卡类型,所述多个存储的卡特征串的每一个对应于一种已知的数据存储卡类型。
8.如权利要求6或7所述的方法,包括识别来自主程序的,所述确定的卡类型不支持的高级语言命令,一旦识别出一个不支持的命令就向所述主程序返回一个错误命令。
9.一种使控制器能够通过卡读取/写入站从多个包含有磁性或电子数据存储装置的已知类型的卡设备读取和向它写入数据的方法,该方法使用了一个存储程序,存储数据处理器,所述方法包括:存储含有已知卡特征数据串及各串所对应的卡标识符的第一数据阵列,存储含有卡标识符及各标识符对应的命令串的第二数据阵列,并在所述处理器执行一程序,使得所述处理器:
(1)检测在所述读取/写入站的卡的存在并将卡检测信号传给所述控制器,
(2)读取表征该卡的数据串,
(3)在至少一个所述第一数据阵列中搜索匹配的数据串,一旦匹配成功就取回相应的卡标识符,
(4)采用取回的卡标识符在所述第二数据阵列中选择适当的命令串,
(5)从所述控制器接受类属处理指令,
(6)使用选择自第二数据阵列中的命令串将来自所述控制器的指令译为适合于插入的卡的命令,
(7)根据所述类属指令或者从所述卡读取数据,或者向它写入数据,
10.一种将智能卡及其它具有电子或磁性数据存储的卡和要求对所述卡进行读/写访问的控制器连接的通用卡接口,它包括:
一个卡读取/写入站,在其中插入卡以进行数据转移,一个具有相关存储器及输入-输出端口的处理器,
所述读取/写入站和一个输入-输出端口连接,所述控制器和另一个输入-输出端口连接,
存储在所述存储器中的接口软件及数据阵列,
所述数据阵列包括第一和第二数据阵列,其中所述第一数据阵列含有已知卡特征数据串及各个串对应的卡标识符,所述第二数据阵列含有卡标识符及各个标识符对应的命令串,所述软件当由所述处理器执行时,使所述处理器:
(1)检测在所述读取/写入站的卡的存在并将卡检测信号传给所述控制器,
(2)读取表征该卡的数据串,
(3)在至少一个所述第一数据阵列中搜索匹配的数据串,一旦匹配成功就取回相应的卡标识符,
(4)采用取回的卡标识符在所述第二数据阵列中选择适当的命令串,
(5)从所述控制器接受类属处理指令,
(6)使用选择自第二数据阵列中的命令串将来自控制器的指令译为适合于插入的卡的命令,
(7)根据所述类属指令或者从所述卡读取数据,或者向它写入数据。
11.一种使应用软件能够和任何已知类型的智能卡或其它具有电子或磁性数据存储的卡设备连接的方法,它包括:
(1)从所连接的卡中读取表征该卡的数据串,
(2)在包含有已知卡特征数据串及各个串对应的卡标识符的第一数据阵列中搜寻一匹配的数据串,一旦找到匹配的数据串就取回对应的卡标识符,
(3)利用取回的标识符,从含有卡标识符及各个标识符对应的命令串的第二数据阵列中选择适当的命令串,
(4)从所述应用软件接受类属处理指令,
(5)利用从所述第二数据阵列中选择的命令串将从所述应用软件来的指令译为适于正插入的卡的低级命令,及
(6)根据所述类属指令或者从所述卡读取数据,或者向它写入数据。
12.一种使应用软件能够和任何已知类型的智能卡或其它具有电子或磁性数据存储的卡设备连接的软件算法,它包含一个功能模块的分层结构,其中:
第一级模块从所连接的卡中读取表征该卡的数据串,并将所述数据串传递给第二级模块,
第二级模块在包含有已知卡特征数据串及各个串对应的卡标识符的第一数据阵列中搜寻一匹配的数据串,一旦找到匹配的数据串就取回对应的卡标识符,并将所述卡标识符传递给第三级模块,
第三级模块利用传递给它的标识符,从含有卡标识符及各个标识符对应的命令串的第二数据阵列中选择适当的命令串,
第五级模块从所述应用软件接受类属处理指令,并将这些指令传递给第四级模块,
第四级模块利用第三级模块选择的命令串将来自于所述第四级模块的指令译为适于正插入的卡的低级命令,及
第一级模块根据从第四级模块传递来的转换过的类属指令或者从所述卡读取数据,或者写入数据。
CNB961952040A 1995-05-09 1996-05-09 智能卡的卡读写机、主应用程序连接方法和接口 Expired - Fee Related CN1138196C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NZ27209495 1995-05-09
NZ272094 1995-05-09

Publications (2)

Publication Number Publication Date
CN1189914A true CN1189914A (zh) 1998-08-05
CN1138196C CN1138196C (zh) 2004-02-11

Family

ID=19925257

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB961952040A Expired - Fee Related CN1138196C (zh) 1995-05-09 1996-05-09 智能卡的卡读写机、主应用程序连接方法和接口

Country Status (14)

Country Link
US (2) US6213392B1 (zh)
EP (1) EP0826215B2 (zh)
JP (1) JPH11505049A (zh)
KR (1) KR100285111B1 (zh)
CN (1) CN1138196C (zh)
AT (1) ATE198803T1 (zh)
AU (1) AU687312B2 (zh)
BR (1) BR9608285A (zh)
DE (1) DE69611613T3 (zh)
DK (1) DK0826215T3 (zh)
ES (1) ES2156275T5 (zh)
GR (1) GR3035751T3 (zh)
PT (1) PT826215E (zh)
WO (1) WO1996036051A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100365650C (zh) * 2003-02-26 2008-01-30 索尼株式会社 用于非接触ic卡的通信系统和通信方法
CN102750559A (zh) * 2008-05-20 2012-10-24 索尼株式会社 信息处理装置和信息处理方法
CN107403119A (zh) * 2017-06-13 2017-11-28 北京三快在线科技有限公司 一种智能卡信息读取方法及装置
WO2020134038A1 (zh) * 2018-12-26 2020-07-02 深圳市江波龙电子股份有限公司 一种存储设备的控制方法及存储设备、电子设备

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6698654B1 (en) * 1995-05-09 2004-03-02 Smartmove (Nz) Ltd. Method of interfacing with data storage card
AU687312B2 (en) * 1995-05-09 1998-02-19 Smartmove (Nz) Limited Card interface
AU5595398A (en) * 1996-12-03 1998-06-29 Strategic Analysis, Inc. Method and apparatus for formatting smart cards and card readers
US6718319B1 (en) 1996-12-03 2004-04-06 Strategic Analysis, Incorporated Method and apparatus for formatting smart cards and card readers
ES2125830B1 (es) * 1997-03-04 1999-11-16 Infos Ingenieria Informatica S Lector/grabador de tarjetas microprocesadoras.
JPH1127746A (ja) * 1997-07-03 1999-01-29 Sony Corp 携帯端末機
US6685312B2 (en) 1997-10-24 2004-02-03 Fargo Electronics, Inc. Ink jet card printer
US6702282B2 (en) 1997-10-24 2004-03-09 Fargo Electronics, Inc. Card transport mechanism roller support
US5928347A (en) * 1997-11-18 1999-07-27 Shuttle Technology Group Ltd. Universal memory card interface apparatus
US6615189B1 (en) 1998-06-22 2003-09-02 Bank One, Delaware, National Association Debit purchasing of stored value card for use by and/or delivery to others
US7809642B1 (en) 1998-06-22 2010-10-05 Jpmorgan Chase Bank, N.A. Debit purchasing of stored value card for use by and/or delivery to others
FR2785700B1 (fr) * 1998-11-10 2001-01-12 St Microelectronics Sa Procede de gestion d'un circuit electronique
US6032136A (en) * 1998-11-17 2000-02-29 First Usa Bank, N.A. Customer activated multi-value (CAM) card
US7660763B1 (en) 1998-11-17 2010-02-09 Jpmorgan Chase Bank, N.A. Customer activated multi-value (CAM) card
DE19855813A1 (de) * 1998-12-03 2000-06-15 Kreft Hans Diedrich Mittel und Verfahren zum Test von Karten in einem Terminal
DE69938034T2 (de) * 1999-01-04 2009-01-15 Nidec Sankyo Corp. Kartenlesegerät
US6932527B2 (en) * 1999-01-25 2005-08-23 Fargo Electronics, Inc. Card cartridge
US7154519B2 (en) * 1999-01-25 2006-12-26 Fargo Electronics, Inc. Printer and ribbon cartridge
US6832866B2 (en) * 1999-01-25 2004-12-21 Fargo Electronics, Inc. Printer or laminator supply
US7344325B2 (en) * 1999-01-25 2008-03-18 Fargo Electronics, Inc. Identification card printer having ribbon cartridge with cleaner roller
US7018117B2 (en) * 1999-01-25 2006-03-28 Fargo Electronics, Inc. Identification card printer ribbon cartridge
AU3349400A (en) * 1999-01-25 2000-08-07 Fargo Electronics, Inc. Method and apparatus for communicating between printer or laminator and supplies
US6694884B2 (en) 1999-01-25 2004-02-24 Fargo Electronics, Inc. Method and apparatus for communicating between printer and card supply
US20040040026A1 (en) * 1999-06-08 2004-02-26 Thinkpulse, Inc. Method and System of Linking a Smart Device Description File with the Logic of an Application Program
AU5470600A (en) * 1999-06-20 2001-01-09 Thinkpulse, Inc. Method and system of performing a security check of a smart device description file
US8793160B2 (en) 1999-12-07 2014-07-29 Steve Sorem System and method for processing transactions
US6758616B2 (en) 2000-01-21 2004-07-06 Fargo Electronics, Inc. Identification card printer
DE10008308A1 (de) * 2000-02-23 2001-08-30 Orga Kartensysteme Gmbh Kartenterminal
JP2001250092A (ja) * 2000-03-03 2001-09-14 Toshiba Corp カード型電子機器、及びカード型電子機器に適用されるコンテンツ管理方法
US7147558B2 (en) * 2000-03-22 2006-12-12 Wms Gaming Inc. System and method for dispensing gaming machine credits in multiple different media of monetary exchange
US6631849B2 (en) * 2000-12-06 2003-10-14 Bank One, Delaware, National Association Selectable multi-purpose card
US7313546B2 (en) 2001-05-23 2007-12-25 Jp Morgan Chase Bank, N.A. System and method for currency selectable stored value instrument
WO2003010701A1 (en) 2001-07-24 2003-02-06 First Usa Bank, N.A. Multiple account card and transaction routing
US8020754B2 (en) 2001-08-13 2011-09-20 Jpmorgan Chase Bank, N.A. System and method for funding a collective account by use of an electronic tag
US7311244B1 (en) 2001-08-13 2007-12-25 Jpmorgan Chase Bank, N.A. System and method for funding a collective account by use of an electronic tag
DK1430448T3 (da) 2001-08-24 2007-04-23 Cubic Corp Universel billettransportenhed
JP3641230B2 (ja) * 2001-10-22 2005-04-20 株式会社東芝 メモリカードを制御するための装置および方法
US6985167B2 (en) * 2002-03-01 2006-01-10 Fargo Electronics, Inc. Card cleaner roller assembly
US7756896B1 (en) 2002-03-11 2010-07-13 Jp Morgan Chase Bank System and method for multi-dimensional risk analysis
US7899753B1 (en) 2002-03-25 2011-03-01 Jpmorgan Chase Bank, N.A Systems and methods for time variable financial authentication
AU2003230751A1 (en) 2002-03-29 2003-10-13 Bank One, Delaware, N.A. System and process for performing purchase transaction using tokens
US20040210498A1 (en) 2002-03-29 2004-10-21 Bank One, National Association Method and system for performing purchase and other transactions using tokens with multiple chips
AU2003214550A1 (en) * 2002-04-10 2003-10-20 Axalto Sa A system comprising a smart card and a reader
EP1353289A1 (en) * 2002-04-10 2003-10-15 Schlumberger Systèmes System comprising a smart card and a reader
US20030197770A1 (en) 2002-04-19 2003-10-23 Klinefelter Gary M. Card cartridge and card feed adapter for an ink jet sheet feeder printer
US20030197056A1 (en) * 2002-04-19 2003-10-23 Dunham Matthew K. Identification card printer data encoder module
AU2003209968A1 (en) * 2002-05-28 2003-12-12 Lukasz Figiel A computer peripheral
US8239304B1 (en) 2002-07-29 2012-08-07 Jpmorgan Chase Bank, N.A. Method and system for providing pre-approved targeted products
US6945524B2 (en) 2002-09-05 2005-09-20 Fargo Electronics, Inc. Card singularization gate
US7809595B2 (en) 2002-09-17 2010-10-05 Jpmorgan Chase Bank, Na System and method for managing risks associated with outside service providers
US7044517B2 (en) * 2003-03-14 2006-05-16 Toyoda Gosei Co., Ltd. Front grille for a vehicle
FI20035072A0 (fi) * 2003-05-22 2003-05-22 Nokia Corp Liitäntäväylä, elektroniikkalaite ja järjestelmä
US8306907B2 (en) 2003-05-30 2012-11-06 Jpmorgan Chase Bank N.A. System and method for offering risk-based interest rates in a credit instrument
US7878505B2 (en) * 2003-08-19 2011-02-01 Hid Global Corporation Credential substrate rotator and processing module
US7953663B1 (en) 2003-09-04 2011-05-31 Jpmorgan Chase Bank, N.A. System and method for financial instrument pre-qualification and offering
US7206010B2 (en) * 2004-04-16 2007-04-17 Zih Corp. Systems and methods for providing a media located on a spool and/or a cartridge where the media includes a wireless communication device attached thereto
US7392222B1 (en) 2004-08-03 2008-06-24 Jpmorgan Chase Bank, N.A. System and method for providing promotional pricing
DE102004049671B4 (de) * 2004-10-12 2007-08-02 Mühlbauer Ag Elektronisches Modul für die Herstellung, Programmierung und das Testen von Chipkarten und zugehöriges Verfahren
KR100706343B1 (ko) * 2005-04-18 2007-04-13 주식회사 케이티프리텔 통합 정보 관리 ic 칩 및 이를 이용한 다중 서비스 제공방법
US7401731B1 (en) 2005-05-27 2008-07-22 Jpmorgan Chase Bank, Na Method and system for implementing a card product with multiple customized relationships
US7747874B2 (en) * 2005-06-02 2010-06-29 Seagate Technology Llc Single command payload transfers block of security functions to a storage device
US7493656B2 (en) 2005-06-02 2009-02-17 Seagate Technology Llc Drive security session manager
US7455218B2 (en) * 2005-06-20 2008-11-25 Microsoft Corproation Rich object model for diverse Auto-ID tags
KR100747601B1 (ko) * 2005-09-27 2007-08-08 한국전자통신연구원 Rfid태그 사용자 데이터 접근 시스템 및 방법
US7309007B2 (en) * 2005-10-04 2007-12-18 First Data Corporation Systems and methods for personalizing transaction cards
CN100461139C (zh) * 2005-10-26 2009-02-11 威盛电子股份有限公司 快闪存储卡存取装置与方法
US8408455B1 (en) 2006-02-08 2013-04-02 Jpmorgan Chase Bank, N.A. System and method for granting promotional rewards to both customers and non-customers
US7784682B2 (en) 2006-02-08 2010-08-31 Jpmorgan Chase Bank, N.A. System and method for granting promotional rewards to both customers and non-customers
US7753259B1 (en) 2006-04-13 2010-07-13 Jpmorgan Chase Bank, N.A. System and method for granting promotional rewards to both customers and non-customers
US20080147495A1 (en) * 2006-12-19 2008-06-19 General Electric Company System and method for providing promotions
US20080147496A1 (en) * 2006-12-19 2008-06-19 General Electric Company System and method for providing promotions
US7966355B2 (en) * 2007-02-13 2011-06-21 Modu Ltd. Interface for extending functionality of memory cards
US8676642B1 (en) 2007-07-05 2014-03-18 Jpmorgan Chase Bank, N.A. System and method for granting promotional rewards to financial account holders
US20090089148A1 (en) * 2007-09-27 2009-04-02 General Electric Company System and method for providing promotions
US8417601B1 (en) 2007-10-18 2013-04-09 Jpmorgan Chase Bank, N.A. Variable rate payment card
USD636021S1 (en) 2008-07-17 2011-04-12 Jpmorgan Chase Bank, N.A. Eco-friendly transaction device
USD617378S1 (en) 2009-02-12 2010-06-08 Jpmorgan Chase Bank, N.A. Transaction device with a gem-like surface appearance
USD620975S1 (en) 2009-02-12 2010-08-03 Jpmorgan Chase Bank, N.A. Transaction device
CN103152080B (zh) * 2009-02-26 2015-12-23 中兴通讯股份有限公司 支持增强型近场通信的终端及其处理方法
US8725589B1 (en) 2009-07-30 2014-05-13 Jpmorgan Chase Bank, N.A. Methods for personalizing multi-layer transaction cards
EP2477919B1 (en) 2009-09-18 2015-06-17 Assa Abloy AB Card substrate rotator
USD623690S1 (en) 2010-03-05 2010-09-14 Jpmorgan Chase Bank, N.A. Metal transaction device with gem-like surface
WO2012000438A1 (zh) * 2010-06-29 2012-01-05 飞天诚信科技股份有限公司 一种对电子钱包进行操作的方法
USD643064S1 (en) 2010-07-29 2011-08-09 Jpmorgan Chase Bank, N.A. Metal transaction device with gem-like surface
US10475024B1 (en) 2012-10-15 2019-11-12 Square, Inc. Secure smart card transactions
USD854083S1 (en) 2013-03-27 2019-07-16 Jpmorgan Chase Bank, N.A. Hybrid transaction device
US9760740B1 (en) 2014-06-23 2017-09-12 Square, Inc. Terminal case with integrated dual reader stack
US10108947B2 (en) * 2014-07-31 2018-10-23 Square, Inc. Smart card reader with public key index on host device
US10753982B2 (en) 2014-12-09 2020-08-25 Square, Inc. Monitoring battery health of a battery used in a device
US10504106B2 (en) * 2016-07-25 2019-12-10 Mastercard International Incorporated Methods, systems, networks, and media for transferring data streams through vibration to haptic devices
US10102014B2 (en) * 2016-08-26 2018-10-16 Sap Se User interface employing nested data
US10318319B2 (en) 2016-08-26 2019-06-11 Sap Se Two-model user interface system

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4392207A (en) * 1980-09-09 1983-07-05 Burroughs Corporation Card reader-data link processor
US4618925A (en) 1981-05-22 1986-10-21 Data General Corporation Digital data processing system capable of executing a plurality of internal language dialects
US4839640A (en) * 1984-09-24 1989-06-13 Adt Inc. Access control system having centralized/distributed control
JP2539385B2 (ja) 1986-08-08 1996-10-02 株式会社日立製作所 情報処理装置
US4768150A (en) * 1986-09-17 1988-08-30 International Business Machines Corporation Application program interface to networking functions
JPS63250789A (ja) 1987-04-07 1988-10-18 Hitachi Maxell Ltd Icカ−ドシステムとそのリ−ダライタ
JPS63250726A (ja) * 1987-04-07 1988-10-18 Hitachi Maxell Ltd リ−ダライタ
US5226161A (en) * 1987-08-21 1993-07-06 Wang Laboratories, Inc. Integration of data between typed data structures by mutual direct invocation between data managers corresponding to data types
US4808803A (en) * 1987-08-24 1989-02-28 Figgi International, Inc. Security system
JP2748253B2 (ja) 1990-06-08 1998-05-06 共同印刷株式会社 Icカード情報処理システム
FR2667171B1 (fr) * 1990-09-25 1994-08-26 Gemplus Card Int Support portable a micro-circuit facilement programmable et procede de programmation de ce micro-circuit.
JP3489123B2 (ja) * 1992-04-15 2004-01-19 株式会社日立製作所 アプリケーション結合方法
US5581760A (en) * 1992-07-06 1996-12-03 Microsoft Corporation Method and system for referring to and binding to objects using identifier objects
EP0583723A1 (en) 1992-08-20 1994-02-23 THOMSON multimedia Card, card reader and method for protocol selection
FR2701133B1 (fr) 1993-02-04 1995-03-10 Gemplus Card Int Procédé de communication avec un support portatif.
US5463772A (en) 1993-04-23 1995-10-31 Hewlett-Packard Company Transparent peripheral file systems with on-board compression, decompression, and space management
EP0624851A1 (en) * 1993-05-13 1994-11-17 Angewandte Digital Elektronik GmbH Coupler between the applications on the card level and the applications on the system level
US5329291A (en) * 1993-08-18 1994-07-12 Liang Ying Co., Ltd. Cathode ray tube optical filter device with cursor pointing function
JPH07104981A (ja) * 1993-09-30 1995-04-21 Hitachi Software Eng Co Ltd オブジェクトリンク情報を用いたプログラム構築装置
US5732270A (en) * 1994-09-15 1998-03-24 Visual Edge Software Limited System and method for providing interoperability among heterogeneous object systems
US5613120A (en) * 1994-10-20 1997-03-18 Silicon Graphics, Inc. System and method for enabling, without recompilation, modification of class definitions and implementations in an object-oriented computer program
GB9422803D0 (en) * 1994-11-11 1995-01-04 At & T Global Inf Solution A card reader
US5729745A (en) * 1994-11-14 1998-03-17 Microsoft Corporation Methods and apparatus for creating a base class for manipulating external data connections in a computer generated document
AU712699B2 (en) 1995-04-28 1999-11-11 Koninklijke Kpn N.V. A device for transparent interaction between an IC card and a remote terminal
AU687312B2 (en) * 1995-05-09 1998-02-19 Smartmove (Nz) Limited Card interface
US6698654B1 (en) * 1995-05-09 2004-03-02 Smartmove (Nz) Ltd. Method of interfacing with data storage card
US5761625A (en) 1995-06-07 1998-06-02 Alliedsignal Inc. Reconfigurable algorithmic networks for aircraft data management
US5706502A (en) * 1996-03-25 1998-01-06 Sun Microsystems, Inc. Internet-enabled portfolio manager system and method
US6145119A (en) * 1997-03-31 2000-11-07 International Business Machines Corporation Programming development environment for intranet and internet applications employing unique project data structure
US6308164B1 (en) * 1997-04-28 2001-10-23 Jeff Nummelin Distributed project management system and method
US6185733B1 (en) * 1998-01-20 2001-02-06 International Business Machines Corporation Method and apparatus for remote object code inclusion

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100365650C (zh) * 2003-02-26 2008-01-30 索尼株式会社 用于非接触ic卡的通信系统和通信方法
CN102750559A (zh) * 2008-05-20 2012-10-24 索尼株式会社 信息处理装置和信息处理方法
CN102750559B (zh) * 2008-05-20 2015-07-15 索尼株式会社 信息处理装置和信息处理方法
CN107403119A (zh) * 2017-06-13 2017-11-28 北京三快在线科技有限公司 一种智能卡信息读取方法及装置
CN107403119B (zh) * 2017-06-13 2021-04-23 北京三快在线科技有限公司 一种智能卡信息读取方法及装置
WO2020134038A1 (zh) * 2018-12-26 2020-07-02 深圳市江波龙电子股份有限公司 一种存储设备的控制方法及存储设备、电子设备

Also Published As

Publication number Publication date
EP0826215A4 (en) 1998-12-16
AU687312B2 (en) 1998-02-19
DE69611613T2 (de) 2001-08-09
US20040103415A1 (en) 2004-05-27
EP0826215B1 (en) 2001-01-17
US6213392B1 (en) 2001-04-10
BR9608285A (pt) 2000-04-25
PT826215E (pt) 2001-07-31
WO1996036051A1 (en) 1996-11-14
EP0826215B2 (en) 2005-01-26
AU5517996A (en) 1996-11-29
KR100285111B1 (ko) 2001-03-15
KR19990008336A (ko) 1999-01-25
ES2156275T5 (es) 2005-07-16
ATE198803T1 (de) 2001-02-15
DE69611613T3 (de) 2005-10-13
DK0826215T3 (da) 2001-05-07
ES2156275T3 (es) 2001-06-16
GR3035751T3 (en) 2001-07-31
JPH11505049A (ja) 1999-05-11
EP0826215A1 (en) 1998-03-04
DE69611613D1 (de) 2001-02-22
CN1138196C (zh) 2004-02-11

Similar Documents

Publication Publication Date Title
CN1138196C (zh) 智能卡的卡读写机、主应用程序连接方法和接口
CN1154071C (zh) 数据处理单元及包括该数据处理单元的数据交换系统
TW389873B (en) Software installation and testing for a build-to-order computer system
CN1224903C (zh) 逐模块验证
CN1159669C (zh) 卡式记录媒体和其存取控制方法
CN1079968C (zh) 包括便携式数据处理单元的数据交换系统
CN1203404C (zh) 具有逐模块验证的完全迟缓链接
CN1815513A (zh) 游戏管理系统、卡单元以及游戏管理服务器
CN1208720C (zh) 用于对非置信模块进行可信验证的方法及装置
CN1130629C (zh) 带管理一个虚拟存储器装置的芯片卡及相应的通信方法
CN1682227A (zh) 医学信息管理系统
CN1677436A (zh) 射频标识标记及其相关确定装置
CN102707963B (zh) 设备标志
CN1745400A (zh) 半导体存储卡及对其进行控制的程序
CN1208905A (zh) 数据处理方法和装置
CN1794260A (zh) 认证媒体发行系统和认证媒体发行方法
CN1169046C (zh) 完全迟缓链接
CN101681415A (zh) 用于改变和添加用于数字内容的功能的激活密钥而不必改变和重编译所述数字内容的方法和设备
US7406549B2 (en) Support for non-standard device containing operating system data
CN103106119B (zh) 程序自动生成装置和程序自动生成方法
CN102520895A (zh) 使用事件为中心的登记模型的打印机驱动器与应用的分离
US20080306994A1 (en) Method and System for Processing User-Defined Object Based on Object Storage
US20020054513A1 (en) Method for program revise of an IC smartcard system
CN1849576B (zh) 从存储媒体中检索数据的方法、装置及系统
CN1752953A (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
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee