CN1445656A - 包括便携式数据处理单元的数据交换系统 - Google Patents

包括便携式数据处理单元的数据交换系统 Download PDF

Info

Publication number
CN1445656A
CN1445656A CN02155732A CN02155732A CN1445656A CN 1445656 A CN1445656 A CN 1445656A CN 02155732 A CN02155732 A CN 02155732A CN 02155732 A CN02155732 A CN 02155732A CN 1445656 A CN1445656 A CN 1445656A
Authority
CN
China
Prior art keywords
data
reciprocation
context
application
processing unit
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
CN02155732A
Other languages
English (en)
Other versions
CN100590590C (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.)
BELLERJATT INVESTMENT Co
Original Assignee
BELLERJATT INVESTMENT Co
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 BELLERJATT INVESTMENT Co filed Critical BELLERJATT INVESTMENT Co
Publication of CN1445656A publication Critical patent/CN1445656A/zh
Application granted granted Critical
Publication of CN100590590C publication Critical patent/CN100590590C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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
    • 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/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/102Bill distribution or payments
    • 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/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/105Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems involving programming of a portable memory device, e.g. IC cards, "electronic purses"
    • 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/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • 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/357Cards having a plurality of specified features
    • G06Q20/3576Multiple memory zones on card

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)
  • Credit Cards Or The Like (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

数据交换系统包括至少一个便携式数据处理单元(5),该单元(5)包括通信装置(14)、处理装置(15)及存储装置(16),后者包括一个执行程序(17)及一个或多个应用描述符(18(1)…18(n)),各应用描述包括至少一个交互作用上下文(19(1)…),该上下文包括命令、数据元素、数据引用、过程、存取条件及外部引用;以达到诸如智能卡等有限的存储空间的高效使用的方式选择数据元素与数据引用以及其它引用的结构。

Description

包括便携式数据处理单元的数据交换系统
本申请是中国专利申请号96196785.4的申请的分案申请。
本发明涉及包括多个数据处理单元的数据交换系统,其中一些便携式数据处理单元建立与系统内一个或多个其它单元的临时通信链路,及其它不移动的单元则可具有与系统内一个或多个其它单元的永久性通信链路。这些处理单元包括数据通信装置、处理装置及存储装置,后者包含执行程序。
本发明是根据Art.54(3)EPC的现有技术EP-A-0,666,550中所要求保护的系统的推广。
类似的系统是从国际专利申请WO-A-87/07063中已知的,其中描述了用于具有多个应用文件的便携式数据载体的系统。这一便携式数据载体的最重要应用之一为适合于多种应用的智能卡(smart card)。已知的数据载体被描述为带有安全特征以支持该数据载体上的多种应用的分层结构数据的载体。应用被看作数据集。本专利申请描述在数据载体上实现分层文件系统以便存储可改变的数据并结合存取许可的分层集。该数据载体响应一组公共命令。文件存取许可对不同的操作是有区别的,并依赖于口令的检验来授权。引入了口令检验尝试计数器以及设置存储数据破坏以防止太多次存取尝试。已知的数据载体是主要作为存储装置而不是作为处理器提供的。执行程序只能执行诸如二进制逻辑运算等非常简单的功能。不可能允许基于与该数据载体通信的终端的请求执行未规定的操作集。唯一的安全选择为引入口令检验。在已知的系统中不可能进行其它存取条件检验。此外,数据载体的各应用在该数据载体的存储装置内有其自己的文件。没有采取特别措施来增进可利用的存储空间的效率,尤其在智能卡上该存储空间是非常受限制的并因此限定了可能的应用的数目。
EP-A-0,479,655涉及智能卡中存取条件检验的实现。公开了用于这一目的的一种规范技术,然而,希望提供包含其它存取条件检验的可能性的措施。
EP-A-0,361,491涉及允许卡的受保护的(再)编程的芯片卡编程系统。它描述了使用一次性写存取条件来控制存取部分要编程的可编程存储器。以这一方式单个卡上应用的数目可以增加。描述了用包含密码协议在内的各种技术进行存取条件检验。
EP-A-0,292,248涉及采用不可改动的操作系统程序在智能卡上加载应用。它包含使用带有指定的存取属性的存储区的数据存取条件强制方法的实现。特定的存取条件为“一次性写”(只是隐含地描述的)及“只能执行”。
US-A-4,874,935涉及采用数据字典的卡编程,其中数据字典描述存储在卡的存储器中的数据元素的布置。数据字典通常被理解为与目录的不同之处在于,数据字典不仅描述实际存储的数据,也描述以后要存储的数据。此外,数据字典通常包含数据格式的描述。数据库管理系统中使用编译格式数据字典,将它们存储在硬盘上作为数据库的一部分。它们也可在软件开发环境中从程序编译得出的目标加载文件中找到。然而,该专利并未提出特别适用于智能卡的数据字典的描述。
EP0466969A1涉及通过保留一部分卡的存储器作为状态信息存储器并提供特定装置来实现控制状态转移的状态机来提供智能卡执行程序中的功能以支持智能卡与终端之间的一序列报文的正确传送。这些状态信息在确定收到报文时执行的动作中是起关键作用的。接受了可变序列报文的状态机是在计算机语言编译程序设计及计算复杂性理论中众所周知的。该专利并未提出实现对同时驻留在智能卡中的若干可能的应用特定的可变的可能动作组的可能性。
本发明的主要目的为提供正规地、精确地与唯一地描述一个系统的装置,该系统由信用处理单元(trusted processing units)以下述方式组成,即这些处理单元在进行它们之间的通信时将发挥作用,其中这种通信是旨在传送值或其它信用信息的。数据处理单元之间的可能通信模式的这种全面描述既可应用于作为整体的系统,也可应用于单个处理单元的详细操作。这种正规描述提供了在实现的正确性验证中的正规推理的基础,这对于系统在全世界的推广将是必要的。
本发明的另一目的为提供最佳地克服便携式数据处理单元尤其是智能卡上的可利用存储空间的有限物理大小所施加的限制的装置。
本发明的又一目的为提供程序代码的受保护加载的更通用的机构并允许这一加载能用于多个程序,每个程序用于各便携式数据处理单元的一个应用。
此外,本发明旨在提供不是便携式处理单元的制造商所规定的而是应用设计的人员为了适应其特殊需要而选择的存取条件检验的使用。
此外本发明还旨在提供一种机制来保护处理单元之间的通信,使得内容与有次序的序列不能受到任何中介装置的干扰。
因此,按照本发明的系统是用权利要求1的特征设计的。
通过以这一严格的框架来组织进行信用处理单元通信的系统的描述,装置之间的可能通信的操作条件与效果便完整地与穷尽地得到了描述。用结构元素的正规精确语义定义扩大之后,数据便成为适合于正规推理的,并因而本系统的实现变得更适用于正确性的正规检查。为这一目的,所有数据没有必要驻留于单个的处理单元的所有存储装置中。在使用这些数据之前将它加载进处理单元便已足够。数据的安全加载是包含在本发明中的。
在第一较佳实施例中,上述数据交换系统中的单个处理单元是用独立权利要求2的特征设计的。
如上面所指出的,本发明旨在推广根据Art.54(3)EPC的现有技术EP-A-0,666,550中已经要求保护的概念。EP-A-0,666,550所要求的保护范围定义如下:
数据交换系统,包括至少一个便携式数据处理单元(5),该单元(5)包括数据通信装置(14)、处理装置(15)及存储装置(16),后者包含执行程序(17),其特征在于,存储装置(16)还包含至少一个包含下述相关数据结构的交互作用上下文(19(1)…19(m)):
a、一组基本通信原码(A(1)…),每当数据处理单元(5)与类似的单元(4)通信时接收它们,所述原码至少包含一个用于有选择地进入所述交互作用上下文(19(1)…)之一的原码;
b、一组过程描述(C(1)…),定义响应各接收的通信原码(A(1)…)要执行的动作,至少包括要在激活交互作用上下文时执行的第一过程描述,及紧接在去激活该上下文之前要执行的最后过程描述:
c、一组可能是空的数据元素(H(1)…),它们或者是被永久存储或者是被计算的,在执行过程描述(C(1)…)中所定义的过程时可以获得它们供使用;
d、一组可能是空的对数据元素的引用,这些引用是与过程描述(C(1)…)关联的,所述数据元素也是可能的其它交互作用上下文可存取的,并且在执行过程描述(C(1)…)中所定义的过程时是可以获得供使用的;
e、一张可能是空的数据表,包含对数据元素的引用(B(1)…)的表,它们是可利用来作为与通信原码关联的过程描述(C(1)…)所使用的通信原码(A(1)…)的一部分供明确引用的;
f、与数据元素关联的一组存取条件,该数据元素是结合过程描述(C(1)…)引用的;
g、与数据表中的数据引用(B(1)…)的表关联的一组存取条件。
该保护范围是从现在的独立权利要求1与2所要求的保护范围中明确放弃的。
通过以这一方式定义便携式处理单元的存储装置内的数据,实际上将处理单元组织成为处理器,即,它不仅允许加与减,并且还执行由例如银行职员等被授权的人员加载在处理单元中的处理过程。通过提供可响应接收的命令提供任意复杂的操作的过程,及提供能作为这些命令的一部分寻址的存储的数据元素的明确的表,能优化使用通信带宽;导致交换的命令数目的减少。按照本发明的系统,该系统的许多实际使用只需要交换两条命令。唯一固定的事物便是存储装置内的结构,它是这样定义的,可以以非常高效的方式增加单元的若干应用,即通过利用尽可能小的附加存储空间。如果该单元是受可利用的存储空间的严重限制的智能卡,这一点尤其重要。此外,按照本发明的结构提供一切可能性来包含安全性措施,以便禁止未被授权的人存取他们无权使用的进程或数据。
如果包含多个交互作用上下文的处理单元进一步以下述各点为特征便能实现本发明的有利实施例:该组过程描述中至少包含一个响应通信原码执行的第一过程描述,它指示所述交互作用上下文之一以便在接受该通信原码的处理单元中进行进一步引用,这一执行导致所指示的交互作用上下文的正确激活。这一上下文激活过程的描述能有利地用来定义与选择上下文关联的安全要求,及执行存储装置的易失性部分中的任何安全与操作数据的初始化。
包含多个交互作用上下文的以下述各点为特征的处理单元可获得进一步的优点:该组过程描述中至少包括响应通信原码执行的一个最后过程描述,它指示所述交互作用上下文之一以便在接受该通信原码的处理单元中进行进一步引用,这一执行导致在接收通信原码时所指示的交互作用上下文的正确去激活。这一去激活过程将控制给予即将通过接受通信原码接替的应用。这在应用意外中止时给予应用设计人员执行存储器内容清除及圆满结束操作的机会。
在另一较佳实施例中,以上定义的数据交换系统的特征在于:存储装置还包括至少两个交互作用上下文,至少一个应用描述及存储对当前正在实施中的交互作用上下文的引用的存储器元素,各应用描述包括:
a、包含对数据元素的引用的数据表,这些引用可被两个或更多交互作用上下文存取并且可以由附加的数据元素扩展;
b、与所述引用或所述附加数据元素关联并定义使用限制的另一组存取条件。
通过这些措施,凡是对不同的交互作用上下文公用的数据元素的引用对于所有这些交互作用上下文都是可存取的,所以它们只需要存储一次,因而节省了存储空间。并且对所述数据引用的公用存取条件也是预定的交互作用上下文可存取的。因此,这些公用存取条件也只需要存储一次,借此节省存储空间及提高效率。
各应用描述还可包括过程库,库中包含可由与各所述应用描述关联的各交互作用上下文的过程描述使用的代码。
最好,该处理单元只使用少量附加存储空间便适用于至少两个应用。为了达到这一目的,按照本发明的数据交换系统的特征在于:该存储装置包括至少两个应用描述以及可由各应用描述内的各交互作用上下文的过程描述或各应用描述内的各过程库的各执行代码单元使用的执行代码单元。
最好,过程库中的执行代码单元能通过包含它们的操作参数的使用说明而得到增强,参数的类别与在计算中作为实际值传送的数据元素的属性有关,这种计算只有在数据属性与参数类别匹配时才能进行。这是在数据级上及功能级上的存取条件检验的高效方法,对于它存在着非常高效的实现。
如果按照本发明的数据交换系统具有下述特征,该系统提供更大的可靠性:执行程序包括对默认交互作用上下文的引用,该上下文用于将存储当前正在实施中的交互作用上下文的引用的存储器单元初始化,以便在恢复到操作的正常状态中检测到内部不相容之后,或者在每当执行程序被启动但从类似的数据处理单元接收的通信原码未曾指定明确的交互作用上下文时,便执行一最后的动作。
为了进一步增进过程描述、过程库、代码片段及执行程序的实现的紧凑性,按照本发明的数据交换系统的特征可在于:执行程序包括构成用于抽象的处理器的编码指令的解释器的例程,使得大多数过程描述及某些执行代码单元是以数字值编码来供所述解释程序例程解释的。除了执行程序提供的抽象代码解释程序协助正规检验所实现的功能的正确性之外,抽象设计的指令集及少量小的实现例程的使用也可使这种检验更好地适用于推理与证明生成的正规方法。
带有关于交互作用上下文描述及应用描述符的存储的紧凑性的进一步优点,按照本发明的数据交换系统的特征可在于:将过程描述编码成在由执行代码单元组成的过程库中所包含的过程的子集上的表中的索引。具体地在当前的发明的上下文中,这些调度表可配置成具有这样的优点,由于数据结构的性质,各别的过程描述的数目通常非常小,例如小于16,使得本系统可进一步具有下述特征:过程描述的编码是很小的值,使得存储装置的一个基本存取单元中能存储一个以上的描述,或者在同一存储器存取基本单元中可将描述与其它有关信息组合。为了解决在单一交互作用上下文内的过程描述的数目大于编码空间直接容许的数目这种罕见的情况,按照本发明实现的系统能有利地采用间接引用的附加级,使得其特征在于:过程描述的至少一个编码值访问执行程序的一个特殊功能,该特殊功能是设计成通过加入结合用所述特殊值编码的过程描述存储的附加编码信息,来为编码过程描述间接选择实际执行的功能。执行上下文数据结构中的数据的这种附加的存储紧凑性是有利的,特别是考虑到存储装置通常需要存储可观数量的不同应用及上下文描述。
为了增进处理单元内的数据与功能的安全性,按照本发明的数据交换系统可包含下述特征:存储器装置包括专用于包含个人标识号的交互作用上下文,及执行程序配置成检验由该数据交换系统的用户提供的个人标识号。
有利地,个人标识号管理交互作用上下文及默认上下文可作为同一设备持有人应用的一部分实现:按照本发明的设备用来通信的大多数设备对这一应用的支持给予设备拥有者观察其存储在设备存储器中的个人数据的机会,例如可以允许智能卡的持有人在提供适当用户界面的任何智能卡终端上修改其PIN。
在具有下述特征的按照本发明的数据交换系统中能提供用于以描述交互作用上下文及应用的数据加载存储装置的密码保护方法的选择的有利的通用性:存储装置包括至少一个专用于管理同时包含在所述存储装置中的其它交互作用上下文的号码与内容的交互作用上下文。市场可能要求提供带有不同的安全级及运算复杂性的通用性的便携式处理单元以便在同一卡上加载不同的应用以及为发卡组织建立不同产品的选择,这些都是按照同一基本应用内部结构建立的,例如由本发明提供的。当前很少有对这一问题的解决方案,并且通常是基于作为执行程序的整体部分实现的适当特殊功能的,既不提供统一的方法也不提供选择范围。
各应用描述可包含一张数值表,它是为了为所有交互作用上下文提供标识符而构成的并且包括下述数值中至少一种:指示应用类型的第一数值、指示提供该应用的实体的唯一标识的第二数值、指示该应用描述的性质的第三数值及各唯一引用与应用描述关联的一个交互作用上下文的其它数字。
唯一地引用一个交互作用上下文的数值串提供在两个通信设备之间建立互相协作性的措施,这比当前为诸如智能卡设想的将赋予各交互作用上下文唯一值的责任转移给供应应用的实体,同时将赋予实体与应用唯一号码的责任分别留给相关的地区与国际公司团体更为高效。供应应用的实体能有利地分配唯一的上下文号来加入实现版本及秘密密钥生成信息。
按照本发明的数据系统可以实现成使其特征在于可将数据通信装置配置成以包含至少两部分的数据块构成数据交换,第一部分为操作性的数据,用它来影响由通信原码所指示的命令所执行的操作的性质或从进行的操作得出的数据,第二部分为安全性的数据,用它来确定执行操作的适当性或操作部分内的数据的可接受性,以用于操作或用来证明操作的完成或得出的数据的正确性。这些适当性、可接受性、证明与正确性是通过在数据上执行相关的加密操作得出的。
数据交换中的这种报文结构以及执行适当的操作定义之前及之后的加密计算的次序为保护在数据交换的协议上不受中间攻击提供一种机制。具体地,它能用来消除对各处理单元的存储装置中明确地保持安全状态的要求,因为它允许包含在指定安全性的部分中各报文中的数据作为加密编码状态信息进行交换:检验加密条件安全地初始化状态变量,这些变量只需在存储装置中存储到发送应答报文为止,减少将这些状态信息暴露给窜改企图的时间。最后,这一报文结构允许端对端安全性的更自由的使用,其中通信中的安全性不依赖于任何中介设备。
从而使鉴别与数据保护成为命令执行的整体部分,而提供比在诸如智能卡等当前系统中可获得的更好的安全性。
可将执行程序配置成接收到执行当前交互作用上下文中指定的操作的通信原码时,执行作为预定的与固定的动作序列的一部分的各操作,各动作是作为与接受的通信原码关联的过程描述的一部分分开指定的,该过程描述至少包括下述动作的各别描述(其中任何一个都可以是空的):
a、通信原码的使用授权;
b、解密操作数据或其任何部分;
c、执行带有输入数据的命令;
d、加密从任何执行的操作得出的任何操作数据;
e、计算任何执行的动作的完成的证明或要在安全计算中使用的得出数据的正确性。
如果数据处理单元在初始化数据传输时生成用作加密计算的基础的随机事务处理数目,安全性便能得到进一步增强。
为了提供在需要时进入新的交互作用上下文的可能性,可将一个指定的值分配给一通信原码,该值便将永远被解释为进入新的交互作用上下文的请求。
在另一较佳实施例中,按照本发明的数据交换系统的特征在于,它包括由该数据处理单元的相同元件构成的另一数据处理单元,在其存储器中可选择地包含一个应用程序员界面,该界面由程序代码组成,该程序代码设计成允许实现附加计算机程序以便使用户对交换的通信原码序列进行控制或影响在其中传输的数据或获知或进一步处理在交换中所接收的数据。
在本发明的这一较佳实施例中,用来进入指定的交互作用上下文的通信原码可包括要在随后的通信中的安全计算中使用的数值,处理单元之一随机地或以类似的独特性质生成第一个值以及有可能的第二个值用来证明所述的一个处理单元的真实性或者识别所述的一个处理单元。
为了进一步从本发明中得到好处,可将各通信原码进一步构造成包含两个或更多数值,这些数值增强供执行程序解释的通信原码的表达能力。
作为第一种替代,除了发送复位信号的第一个以外的各通信原码可由两多或更多数值组成,用第一值来引用与该通信原码关联的动作的过程描述,第二值是由固定数目的二进制值组成的,执行程序将其中每个二进制值解释为对单一数据元素的引用。
作为第二种替代,除了发送复位信号的第一个以外的各通信原码可以由两个或更多数值组成,用第一值来引用与该通信原码关联的动作的过程描述,用第二值以下述方式来确定可供在激活的交互作用上下文中外部引用的数据元素中的哪些在执行应答动作时将被使用,即如果任何数据元素包含与所述第二值匹配的值或者包含足以指示它的一个值时,便选用该元素。
作为第三种替代,除了发送复位信号的第一个以外的各通信原码是由两个或更多数值组成的,用第一值来引用与该通信原码关联的动作的过程描述,第二值由若干二进制值组成,执行程序分配给它们特定的意义供在解释通信原码中的数据格式中或执行应答动作中使用。
上述便携式处理单元可在智能卡或PCMCIA卡中实现。
在本发明的进一步精心制作中,通信装置利用外部通信装置来建立数据链路,数据处理单元或接纳实现数据处理单元的PCMCIA或智能卡的这种类似电子设备使这种外部通信装置可被数据处理单元利用。
在本发明的替代中,数据处理单元是实现为便携式个人计算机的。
通信装置可利用智能卡阅读器或PCMCIA卡槽。
此外,通信装置可主要或附加利用用电磁场c.q.粒子的非接触性数据传输。
上面定义的上下文机制及它使之能利用的技术带来智能卡使用的更广阔的范围及智能卡应用开发的方法,它们比传统方式具有若干优点。
首先,它允许执行智能卡中的应用特定程序代码而无须为对其它应用存储的数据的安全性的潜在威胁彻底检验代码。由于与数据一起存储在卡上的存取条件受到卡操作系统的加强而在应用代码的执行期间不存在外界干扰的可能性,多应用卡方案不需要程序代码检查当局。这一当局是在传统的智能卡中允许私用代码执行设施的唯一方法。通过批准在卡上执行代码,检查当局对整个系统的安全性承担可靠性;这使得多应用智能卡方案的管理复杂得多。关联的复杂性与成本使得传统的卡方案中的应用特定代码几乎不可行。利用这一新技术便能满足智能卡应用供应商对这一设施的需求。
第二,作为卡中的受保护的应用特定程序的直接结果,便能实现专用于在卡中加载其它应用的一个特定应用。以这一方式,一旦将应用加载在卡中,便能受到保护免遭加载它们的那个应用窜改。这一保护给予参加多应用卡方案的各方尤其是发卡实体及应用供应实体达成他们的商业协议的基础。正是基于诸如各卡上所需的存储器量、要装备的卡的数目及卡上的应用的持续时间等实质性事物而不是“信用”及“好好保管”等抽象概念,使得应用供应商合同比在传统实现的智能卡中更容易制订。然而,发卡商与应用供应商并不需要共用秘密密钥,及用合同义务与互相同意的密钥运送设施来保护这一共用。
第三,根据新技术实现的应用软件与先有技术智能卡操作系统相比具有若干优点:
    ·在终端与卡之间只需要最少的数据交换来建立卡与终端之
间的协作,例如它们支持相同的应用。要交换的数据值可以构造成
如在国际标准ISO7816-5草案中所建议的;
    ·为了完成卡与终端之间的一项事务能够实际使用理论上推
算出的最小数目的数据交换,因为该事务是作为专用计算完成的,
无须使用冗长的标准命令序列;
    ·它允许对数据的受控存取,无需如当前正在使用及建议标
准化的由目录支配的复杂的存取路径及所有应用共享的文件层次
结构;
    ·如果终端与智能卡应用合作便允许开发,这种开发过程可
用诸如编译程序及仿真程序等计算机软件工具来支持。从而卡与终
端软件的设计与实现能上升到当前需要的麻烦的与易出错的汇编
码以上。
    ·允许设备标准化,卡与终端都一样,使用抽象体系来描述设
备能力,给出面向未来发展的灵活性,诸如卡或终端制造商提供的
新特征。标准化的终端能力可能包含API(应用程序界面)。与智
能卡中当前的标准化不同,当前的标准化工作集中在规定报文的固
定的数据内容上以便提供以标准确定的方式解释的标识数据,这
样做留给新发展的空间太小。
最后,利用新技术,便给予了智能卡操作系统的实现者以设计卡的操作系统核心及终端操作系统的最优实现的极大自由度。给予了智能卡硬件设计者若干选择来优化带有对包含在系统核心中的基本操作的硬件支持的硅芯片使用。从上面定义的专门化设计开始得到的硬件成本降低能大于基于通用单片计算机上的改进所能得到的。
下面参照示出本发明的基本原理的实现实例的附图,详细描述本发明。
图1示出智能卡上基于分层组织的数据元素的集合的现有技术应用设计;
图2表示一个便携式处理单元与一个类似处理单元之间以当前作为标准接受的格式的通信流的图;
图3表示在诸如智能卡或PCMCIA卡等便携式处理单元及诸如卡终端或便携式个人计算机等较稳定的处理单元中使用交互作用上下文的本发明的基本构成;
图4表示执行上下文的实际组织的实例,强调了包含在交互作用上下文中的过程描述与在执行这些过程时使用的数据元素与库函数之间的不同关系;
图5示出在执行通信原码所调用的过程描述中所包含的程序执行控制与安全上下文切换的流程图的实例。
图1中描绘了现有技术系统中的数据与文件结构。基本上具有连接在若干基本文件3及一个或多个专用文件2上的主文件1。各专用文件可连接在一个或多个其他的专用文件2及一个或多个基本文件3上。现有技术使用目录与文件的树形层次结构。现有技术结构中的从属级的数目原则上是不受限制的。图1中使用的术语取自国际ISO标准7816-4。按照如图2中所示的便携式数据处理单元5与类似的数据处理单元4之间的通信流的标准格式,通信包括一组成对的块。通信由来自数据处理单元4的复位信号mФ启动。这一复位信号可在通信带宽以外,例如由数据处理单元5中的加电逻辑生成但概念上还是报文的有序交换的一部分。便携式数据处理单元5用对复位的应答(ATR)m1应答,可能后面跟着内容。所有后面的块m2、m3、…m(n-1)、mn的对包括以各别的值为首后面跟着内容的块并构成不同的通信原码。
图3示出了根据本发明的两个数据处理单元的内部结构,这两个数据处理单元通过发送和接收数据互相通信。左边的数据处理单元4可以是一终端,右边的数据处理单元可以是例如智能卡的便携式数据处理单元。然而,本发明也适用于两个或更多能够用适当的通信装置或适当的连接拓朴互相通信的便携式数据处理单元。
各数据处理单元4、5包括数据通信装置7、14,通过它们可以交换数据的结构块。各数据处理单元包括处理装置8、15及存储装置9、16。存储装置9、16可以是只读存储器(ROM)、随机存取存储器(RAM)及诸如电可擦除可编程只读存储器(EEPROM)等可编程只读存储器的任何配置。
存储装置9、16包括执行程序12、17,这里用“MAXOS”表示。如果便携式数据处理单元5适用于两个或更多应用,存储装置9、16便包括应用描述13(1)…13(n),18(1)…18(n)。应用描述与数据处理单元相关的应用一样多。各应用描述用“CSA”表示。图3中以放大比例尺示出第二应用描述13(2)、18(2),以便显示各应用描述的内容。各应用描述13(i)、18(i)包括至少一个“交互作用上下文”11(1)…11(m),19(1)、…19(m)。各交互作用上下文用“CTA”表示。用放大比例尺示出这些交互作用上下文中的第一个11(1)、19(1)以便显示它们的内容。各交互作用上下文包含:
—指定由交互作用上下文识别的通信原码并引用在一组过程中指定的适当过程的一组命令;
—一组数据;
—对位于其它交互作用上下文(如果有的话)中的数据的一组数据引用;
—可由执行程序12、17执行的一组过程;
—对数据元素的一组存取条件;
—关于其它数据处理单元所发布的命令要使用的数据元素的一组外部引用;
—可选用的开发人员指定的其它表。
最后,存储装置9、16包括存储单元21、20,其中包含对“当前CTA”,即当前实施中的交互作用上下文的引用。
一个应用描述中若干交互作用上下文的意图是在数据处理单元4、5之间的可能的交互作用中提供功能分离。当功能分离也是安全条件的分离时,这尤其合适。其示例可以是智能卡与终端之间进行第一交互作用以便打开门,而在编程被允许打开的门时进行第二交互作用。第二交互作用比第一交互作用需要更好的安全性,并赋予它自己的交互作用上下文。为了对交互作用上下文进行存取,第一步便是保证可在交互作用上下文内执行的操作的安全性。
图4示出实施作为展示数据元素、存取条件与过程之间的关系的存储器组织模型显示的上下文机制的实际方案。每当存在便携式数据处理单元5的两个或更多的应用时,图4的结构便适用。如果只有一个应用,该结构可大为简化,如稍后要说明的。图4中描绘了数据处理单元5的参考数字。然而,图4的结构同样适用于数据处理单元4的存储装置9。图4中最优地组织了数据元素描述与过程描述,以反映在构成一个应用(CSA)的不同交互作用上下文(CTA)之间的程序代码共享与数据共享。
存储装置16包含数据元素H(1)…H(7)、作为操作系统的一部分的可执行代码元素G(1)…G(5),及应用描述18(1)、18(2)(CSA1、CSA2)。图4中,省略了操作系统内部的数据与代码。图4中提供的数据元素、可执行代码元素及应用描述的数目只是作为示例给出的:这些数目可根据实际需要改变。
各应用描述18(1)、1 8(2)物理地出现在存储装置中。它们提供抽象的第一底层以反映存储器使用。各应用描述18(1)、18(2)包含:
—由可执行代码F(1)…F(4)组成的过程库,该可执行代码可如箭头P(1)…P(5)所示引用操作系统为这一目的提供的代码元素;
—供当前应用描述18内的交互作用上下文19(1)…19(2)内的过程使用的数据元素E(1)…E(7)的表。这一数据表包含数据存取条件及指向存储数据元素的存储区的指针q(1)…q(7);
—包含若干交互作用上下文描述19(1)、19(2)的交互作用上下文表。
图4中所示的应用描述18(1)内的过程库、数据元素表及交互作用上下文表内的元素数目只是为了表示的目的。当然,元素的数目可根据所要求的应用改变。
参加数据交换的处理单元4、5中的交互作用上下文19(1)、19(2)的内容及应用描述18(1)数据结构是互补的,即来自一个单元的应答被另一单元解释为命令。通过这一互补性质可从单一的文本描述生成数据结构的尽可能紧凑的编码内容。数据交换系统通常包括带有不同目的的处理单元的许多构成,它们在系统操作过程期间为了数据交换而进行通信来完成这一目的。各处理单元的存储装置中可以只包含与其在系统中的预期目的相关的数据结构部分。作为整体的系统是用交互作用上下文的所有不同内容的集合描述的。某些交互作用上下文或它们的一部分内容也可在任何时刻根据需要加载。这种加载可以安全地进行,例如受到上面提到的管理应用保护的。
交互作用上下文19(1)、19(2)物理地出现在存储应用描述18(1)的存储装置中。逻辑上,交互作用上下文提供第二层存储器使用控制。这一第二层与应用描述层提供的组合控制为诸如智能卡等便携式数据处理单元有效地实现了执行上下文机制。各交互作用上下文19(1),19(2)包括:
—过程描述C(1)…C(5)的表。这些过程描述可引用应用描述18内的过程库中的过程描述,如示例箭头S(1)所示。此外这些过程描述可引用由操作系统提供的可执行代码元素G(1)…G(5),如示例箭头t(1)所示。作为另一种替代,这些过程描述可包含对过程在执行期间所使用的、并出现在相关的应用描述18的数据表中的任何数据元素的明确引用,如箭头r(1)…r(6)所示;
—包含相关的交互作用上下文中的过程可以使用的专用数据元素B(1)…B(5)的数据表。数据元素表示为对带有在存取实际数据时要遵循的有关存取条件的相关应用描述18的数据表的引用,如箭头u(1)…u(5)所示;
—包含由相关的交互作用上下文19(1)、19(2)作为命令接受的通信原码A(1)…A(4)的外部接口表。通信原码内的各命令引用相关的交互作用上下文内的过程表的若干过程描述C(1)…C(5),如箭头V(1)…V(4)所示。命令在被通信设备4发布时可用命令后面的一个或多个地址引用该应用描述的数据表中的元素。各命令可伴随有数据元素作为对命令处理的输入。这里给出的地址数目只是示例性的,并且是根据各命令的实际需要确定的。
数据元素的保护是通过提出存取条件提供的。通信原码A(1)…A(4)内的任何外部命令只能寻址相关的交互作用上下文19的数据表中所引用的数据元素。只有在满足存取条件时才允许存取。这些存取条件规定允许命令进行的存取类型;这种存取条件可以是不得存取、只读存取、读与写存取及秘密密钥使用。其它存取条件也能应用。例如,通信原码A(1)的命令可通过引用箭头W(2)对数据元素B(2)进行只读存取,而通信原码A(2)的命令可通过引用箭头W(3)对同一数据元素B(2)进行读与写存取。
过程描述C(1)…C(5)可引用相关的应用描述18的数据表中的数据元素,而不能引用其它的。再说一次,只有在满足存取条件时才进行存取。这些存取条件还规定允许的存取类型:例如,不许存取、只读存取、读与写存取及秘密密钥使用。对于相同的应用描述数据表元素E(1)…E(7),同一交互作用上下文19中的不同过程描述的存取条件可以不同,例如,引用箭头r(1)可表示只读存取条件,而引用箭头r(2)可表示读与写存取条件。
存取条件是在相关级别,即应用描述级或交互作用上下文级上检查的,并且只有一次。交互作用上下文19(1)、19(2)中的数据表的元素B(1)…B(5)通过箭头u(1)…u(5)直接引用应用描述18(1)的数据表中的数据元素的指针,因为存取条件已经在应用描述18(1)的数据表元素E(1)…E(7)中满足。然而,引用应用描述18(1)中的数据表元素的交互作用上下文19(1)、19(2)中的过程描述C(1)…C(5)必须首先满足与应用描述18(1)中的数据表元素E(1)…E(7)关联的存取条件。应用描述18(1)及其关联的交互作用上下文19(1)、19(2)的数据表内的任何数据元素或过程描述元素都不能被存储装置16中任何其它应用描述引用。构成过程描述的可执行代码只能通过与各过程描述C(1)…C(5)关联的受限制的数据引用组间接寻址数据。执行程序通过对经估计作为与过程描述关联的命令接受的通信报文中实际指定的地址而获得的数据元素的引用,利用B(1)…B(5)所描述的数据元素临时扩展了引用表。从而除非明确地指定并且服从指定的使用条件,便不能存取其它数据。换言之,关于应用描述及与其关联的交互作用上下文,图4的较佳存储器引用模型为在数据处理单元5的一个单一应用中的操作提供了一个专用的上下文。数据元素H(1)…H(7)是存储在对所有应用公用的存储装置16中的,但包含供在应用描述18(1)的上下文中专用的数据,这种专用性是由执行程序保证的,它只允许存在对各存储单元的一个单一指针,诸如从E(1)到H(2)的q(1)。只有代码元素G(1)…G(5)可由存储在存储装置16内的任何应用描述1 8(1)…引用。图4中并未明确指出应用描述18(1)以外的应用描述对公用代码G(1)…(5)的上述引用。然而,任何熟悉本技术的人员都能容易地将图4的结构扩展到两个或更多应用描述18(1)、18(2)、…。
已经说明了如何使用不同种类的存取条件保护数据元素之后,下面说明存储器管理规定。对于存储器管理,希望操作系统能分开管理可改变的数据(数据元素)与不可改变的数据(操作系统代码)。图4中所示的存储器引用模型提供存储装置16内的代码与数据元素分离,它们分别受到来自相关的应用描述18内的数据表与过程库的指针q(1)…q(7),p(1)…p(5)的引用。各交互作用上下文19(1)、19(2)内的数据表元素只包含对这些指针的引用而不包含对存储装置16内的代码G(1)…G(5)及数据元素H(1)…H(7)的直接引用。相关的应用描述18的数据表提供操作系统执行存储器管理所需的间接级。
通过在两级上提供公用代码库来避免代码复制:象过程描述C(3)的命令主体引用应用描述18(1)中的过程库中的代码元素F(2),以便在不同的交互作用上下文之间共享公用代码。但是,过程描述C(3)的主体也直接引用存储在存储装置16中并由操作系统提供的代码G(3)。操作系统提供的所有代码元素G(1)…G(5)是为高效执行而实现的。
可以用存储器地址或者用带有适当地构成的表中的索引的附加间接级引用代码元素F(1)、F(2)。这里提供的引用的分层结构非常适用于这一带索引的实现。
基本上,按照图4的存储器结构也适用于只提供数据处理单元5的一个应用的情况。在这一情况中,唯一的应用描述18(1)甚至可与一个交互作用上下文19(1)重合,这时该交互作用上下文包含下述相关的定义组:
a、每当数据处理单元5与类似的单元4通信时接收的一组基本通信原码A(1)…,所述原码至少包含用来进入所述至少一个交互作用上下文的一个原码;
b、定义响应各接收的通信原码A(1)…要执行的动作的一组过程描述C(1)…,至少包括在激活交互作用上下文时要执行的第一过程描述,及在去激活该上下文之前要执行的最后过程描述;
c、永久地存储或计算的一组可能是空的数据元素H(1)…,在执行过程描述C(1)…中所定义的过程时可获得这些数据元素供使用;
d、一组可能是空的对数据元素的引用,这些引用是与过程描述C(1)…关联的,所述数据元素可被可能的其它交互作用上下文存取,并且在执行过程描述C(1)…中所定义的过程时可以获得这些数据供使用;
e、一张可能是空的数据表,包含对数据元素的数据引用表,可以获得它们作为通信原码的一部分供明确地引用,以便由与该通信原码关联的过程描述使用;
f、与结合过程描述引用的数据元素关联的一组存取条件;
g、与数据表中的数据引用B(1)…关联的一组存取条件。
如果只有一个为数据处理单元5提供的应用,并且至少有两个交互作用上下文19(1)、19(2),则各应用描述包括:
a、包含对数据元素的引用E(1)…的一张数据表,这些引用是可以被两个或更多交互作用上下文19(1)…存取的,并可以用附加数据元素来扩展;
b、与所述引用E(1)…或所述附加数据元素关联并定义使用限制的另一组存取条件。
两个或更多交互作用上下文的每一个中的过程描述组还包含一个附加的最后过程描述,供在去激活该上下文之前执行。
图5表示在上面用“MAXOS”(12、17)定义的执行程序中的控制流程。
在启动系统之后,软件便以在步骤30中处理复位代码启动。在步骤31中,进入数据处理单元的核心操作安全级。将描述这一级的存取条件存储在存储器的不可修改部分中,诸如ROM或硬件逻辑中。在步骤32中,检验非易失性存储器的相容性及撤消可能由突然停电留下的任何未完成的修改,例如由抽出智能卡留下的。非易失性存储器相容性检验只包含检查存储在存储器中的状态信息及计算检验和。存储器的内容(如果完全存取了)只用来计算检验和。从而,相容性检验是一种安全操作。相容性检验设施的确切性质取决于数据处理单元内的硬件的细节及非易失性存储器修改的例程,它们在很大程度上与规定的安全体系结构无关。在总的存储器相容性检验之后,验证存储在存储器中的安全上下文的预计算级别。最后,启动数据处理单元的随机存取存储器。
在步骤33中,如果宣布执行环境是安全的,便进入数据处理单元的安全应用安全级。在这一级上,对与核心操作有关的存储器的任何存取是封锁的。对来自这一级的应用数据与描述的存取是通过核心中的例程专门提供的,这些例程维持正在进行的存储器操作的状态信息。
在复位后首次进入时,在步骤34中应用数据元素描述符用来检验存储数据与描述符的相容性,如果在与所述属性不一致的状态中便改变存储器。从存储在应用描述符中的应用标识符组成对复位的应答(ATR)报文,并以计算的另一接收数据处理单元4不能预测的事务处理号结束。在数据处理单元内部生成终端命令来激活默认的交互作用上下文。紧接在将ATR报文发送到另一数据处理单元4之后,便执行这一内部上下文激活命令而为随后的命令提供一个交互作用上下文。ATR报文清楚地表示数据处理单元准备好接受进一步的命令。可将默认交互作用上下文设计成“智能卡持有人应用”的一部分,这是在所有多应用智能卡中作为一个标准应用提供的。在这一特定应用上下文中,用户(即智能卡持有人)能观察其个人数据或打开卡上的任何其它应用。
在步骤35中,作为上下文激活命令的结果,为标准智能卡持有人CTA进入交互作用上下文(CTA)安全级。
在完全激活了应用之后,便准备好接收来自其它数据处理单元的命令。进一步的处理取决于所接收的命令:激活应用的命令与要执行的命令的处理不同。因此,在确定了在步骤36中接收到通信原码并在步骤37中确定它是可接受的之后,在步骤38便检验是否需要激活新的应用。如果否,进步骤39,在其中对命令进行检验以判定是否允许及能否接受输入数据。这些检验只对应用描述符中规定的命令执行。在步骤39中还可进行输入数据的解密。
如果检验成功,便在步骤40进入“数据存取保护级”。在这一级(最高安全级)上,在步骤41执行应用供应者编码的例程。这些例程存储在应用描述符中并用作对另一数据处理单元4发布的特定命令的应用进行特定的反应。这一安全级将存储器存取限制在为正在执行的命令专门定义的子集上。
在步骤41中执行带有提交的输入数据的命令之后,便在步骤42离开数据数据存取保护级。
在步骤43中生成输出数据及命令完成的(加密)证明。这种功能只为在过程描述中规定这样做的命令执行,对于任何定义组合动作可以是空的。步骤43以后程序在步骤36等待新的通信原码。
如果未定义专用的命令例程并且命令可用只包含操作系统功能的过程执行,便不进入数据存取保护级(步骤40),而命令将直接在交互作用上下文安全级上执行,因为操作系统例程是设计成不破坏任何数据保护。
如果在步骤38中确定没有新的应用要激活,程序便进行到步骤44,在其中执行上下文去激活过程。在步骤45中,离开当前应用特定的安全级,并且在步骤46中,在执行程序“MAXOS”的安全级上检验伴随命令的数据。
如果为所请求的应用规定的适当鉴别允许该命令,便在步骤47进入新的应用特定的CTA安全级。这一级将限制对新打开的应用所具有的数据的存取。
在步骤48,数据处理单元通过执行过程表中所定义的初始化指令来响应上下文激活命令生成数据,。如果存在这一应用供应者编码的例程,便在步骤49进入数据存取保护级。在步骤50中执行上下文激活过程。在步骤51中离开数据存取保护级并将应答传递给另一数据处理单元4,并且数据处理单元4在步骤43之后是准备好接收新命令的,如上所述。
描述了图1至5以后,下面作出对按照本发明的数据交换系统的一些一般性说明。
各应用描述18(1)、18(2)内的过程库中的代码可以通过加入它们的操作参数的使用规定而得到增强,该参数被分为与能在计算中作为实际值传送的数据元素的属性有关的类别,这种计算只在数据属性与参数类匹配时才进行。这提供了对数据元素及函数两者的存取条件进行检验的一种方法。比较适当编码的数据属性位图与参数类可为这一附加的技术提供有效的实施。
执行程序12、17可包含对一交互作用上下文的引用,该交互作用上下文用来初始化存储对当前正在实施的交互作用上下文的引用的存储器单元20中的当前交互作用上下文。利用这一措施,便有可能在恢复到正常操作状态中检测到内部不相容性之后或每当执行程序12、17被启动但从另一数据处理单元5接收的通信原码未指定明确的交互作用上下文时执行最后的动作。这一默认交互作用上下文也可是包含在上述卡持有人应用中的这样一种上下文。
此外,存储装置9、16可包括专用于包含个人标识号(PIN)的交互作用上下文11、19,并且执行程序12、17配置成验证数据交换系统的用户提供的个人标识号。可使用若干种个人标识号及口令。一个口令可用来保护设备在有可能泄露隐秘敏感的事务处理中的使用。第二口令可用来在传递表示口令持有人可支付的钱数的数据的情况下保护该事务处理。第三口令可用来保护其中执行的操作认为是对应用的安全性关系重大的事务处理,例如在可能需要它的各交互作用上下文18中指定的正在请求的保护模式。可提供其它口令。这一PIN管理交互作用上下文也可是包含在上述卡持有人应用中的一个这种上下文。
各应用描述13、18可包含一张数值表,该表是为所有交互作用上下文11、19提供标识符而构成的,以及各应用描述13、18可包含下述各值中任何项的组合:表示应用类型的第一数值、表示供应该应用的实体的唯一标识的第二数值、表示应用描述13、18的性质的第三数值及各唯一地引用一个交互作用上下文11、19的其它数字。前两个数字可按照在贸易中严格建立的规则分配,而其余数字可由应用供应实体选择认为是适当的数字。尤其是可分配数值来区别实现的不同版本或标识应用在其加密计算中所采用的密钥集的生成。此外,设备可在对复位的应答报文中包括一张用于包含在其存储装置中的各应用上下文11、19的由与该交互作用上下文一起存储的唯一标识值组成的标识号的表。交互作用上下文标识号的表中的第一元素可以是默认上下文的标识。
数据通信装置7、14最好配置成以数据块构成数据交换。这些数据块包含至少两部分,第一部分为看作操作性的数据,它用来影响通信原码所指示的命令所执行的操作的性质或者从进行的操作所得出的数据。第二部分看作安全性数据,用它来确定执行操作的适当性或操作部分内的数据的可接受性,以用于操作或用来证明操作的完成或揭示的数据的正确性。
当以这一方式构成数据时,可将执行程序17配置成在接收到通信原码时执行当前交互作用上下文20、21中指定的操作,每个操作作为预定的与固定的动作序列的一部分,各操作是作为与接受的通信原码关联的过程描述规则的一部分分开指定的。第一动作可以指定为在通信序列中的这一点上准许使用通信原码的功能。第二动作可指定为解密操作数据或其任何部分的功能,而第三动作可指定为适当的操作过程。第四部分可指定为加密从所执行的操作中得出的任何操作数据,而第五动作可指定为计算所执行的动作的完成或得出的数据的正确性的证明的功能,或者用在接收数据处理单元中的安全性计算。这些动作反映在图5的流程图中。
此外,数据处理单元5在其对复位报文的应答中包含一个选择成其值不能被接收数据处理单元4预测的数字,它能用来作为加密计算的基础。可将这一数字指定为“卡事务处理号”。
可提供赋予一个指定值的一个通信原码,将其解释为进入新的交互作用上下文11、19的请求。可将这一通信原码指定为“激活命令”。伴随这一激活命令的数据足以指定可能通过引用作为对复位报文的应答的一部分传递的标识号激活的上下文。响应这一激活命令执行的动作首先由包含在接受原码的上下文中、被指定为去激活的过程描述所描述,其次在包含在指定为要进入的上下文中、被指定为激活的过程描述中描述。
用来进入指定的交互作用上下文11、19的通信原码最好包括要在随后的通信中的安全计算中使用的数值。第一值可由处理单元之一随机生成,第二值可用来标识一个处理单元。所述的值可按照所使用的加密协议的要求而进行不同地计算,这一差别可作为过程描述C1的一部分指定。这一标识可能是计算的结果,计算是这样的,这便是使得结果值足以标识在要激活的交互作用上下文11、19中的随后数据交换中可能进行的计算或其它动作所要求的设备与其存储器的状态。所述第二值可指定为“终端标识”。
此外,激活命令作为结果数据的一部分给出一数值,用来充分地标识正被激活的上下文中随后的数据交换中可能进行的计算或其它动作所要求的特定响应数据处理单元,该号码可指定为“智能卡标识”。
此外,对智能卡标识号可以用密码功能从存储在数据处理单元5中的数据或从作为激活命令的一部分接收的数据来计算,其方式为,当响应从带有不同的终端标识号的启动设备接收的激活命令计算时该号码以不可预测的方式变化;这样计算出的智能卡标识可指定为“智能卡假名”。此外,在执行要进入的上下文的激活过程的过程描述中所描述的动作之前,执行程序可执行作为过程描述指定的加密计算,即在激活时指定要执行的上下文确定是否可激活该上下文。这些计算可包含使用智能卡事务处理标识、终端事务处理标识与终端标识及存储在存储装置中的其它值。
作为对这些用激活命令中的特定数据支持的加密协议的一种替代,可以使用带有引用的数据元素的位字段说明的命令。这时,各通信原码由两个或更多数值组成,第一个值用来引用与该通信原码关联的动作的过程描述,第二值由固定数目的二进制值组成,各二进制值被执行程序12、17解释为对单个数据元素的引用。这一数据元素是在相关的交互作用上下文11、19中的外部数据元素引用表中指定的,表中的各数据元素是由二进制值的表中的对应位置上的一个二进制数的二进制值指定的。可将这一第二值指定为“操作数地址”。这样指定的各数据元素由操作执行程序12、17以该动作的过程描述中所描述的方式用在应答动作中。
作为对加密协议与带有引用的数据元素的位字段说明的命令的一种替代,可应用带有数据元素的数据匹配说明的命令格式。在这一情况中,各通信原码由两个或更多数值组成,第一值用来引用与该通信原码关联的动作的过程描述,第二值用来以下述方式确定在执行应答动作时将要使用可供在激活的交互作用上下文12,19中外部引用的数据元素中的哪一些,即如果任何数据元素包含与所述第二值匹配的值便选择它。可将这一第二值指定为“操作数标记说明符”。此外,交互作用上下文11、19中可包括过程描述,指示作为命令的一部分给出的操作标记说明符以何种方式与包含在可供该上下文中外部引用的任何数据元素中的数据进行比较,在执行过程描述指定适当的命令动作之前执行哪一个过程描述来选择预期的数据元素。
在另一个替代中,可使用带有命令解释的位字段说明的命令格式。这时各通信原码由两个或更多数值组成,第一值用来引用与该通信原码关联的动作的过程描述,第二值是由若干二进制值组成的,执行程序12,17赋予它们特定的含意供在解释通信原码中的数据格式及执行应答动作中使用。这里可将第二值指定为“命令修饰符”。所有装备有这一附加技术的单元都能识别赋予这些值的含义。
如果应用后一种替代,命令修饰符可包含确定将命令的第三部分用作操作数地址还是操作数标记说明符的一个二进制值。然而,作为替代,命令修饰符可包含一个二进制值,它确定作为对命令的响应执行的操作将使用作为一个数据元素的数据还是由数据元素的连接组成的数据,每一个数据元素结合作为命令的一部分用操作数地址或操作数标记说明符指定的各数据元素加以处理。作为替代,命令修饰可包含一个二进制值,它确定与命令一起提供的数据是否采用标记长度值方法编码来区分相继的连接数据元素。
另一种选择是命令修饰符可包含一个二进制值,它确定执行命令蕴含的动作是否会实际导致存储在数据处理单元5(智能卡)中的数据的实际改变,或实际导致数据处理单元5计算的数据,或命令结果是反映该单元对于命令的可接受性的状态的数据、伴随它的数据、可能从计算中得出的数据的长度或其它各式各样的属性。
简言之,上面提出的在智能卡中实现的新技术中是独立执行环境的概念。在这一方法中,计算机中的处理装置与其它资源是在不同的应用之间共享的,似乎该应用是计算机的唯一用户。基于智能卡实施中的这一新技术,附加提供了一种机制来为由若干相关的应用共享的数据定义多种存取条件。由独立执行环境支持的并如上面介绍的第二种技术便是定义各环境中命令的功能意义的可能性,以达到数据交换系统中的两个类似的数据处理单元4、5之间的各交互作用中的最小数目的命令。最后,有可能将新技术用于在各上下文中分开赋予引用存储的数据元素的名字。从而能使作为从数据处理单元4、5之一接收的命令的一部分的对存储的数据元素的引用成为有效:由于在当前的智能卡实践中所使用的非常少的数据元素及少数有区别的操作在各环境中只需要少数位来编码名字与指令空间。在实际智能卡中,类似方式的存取条件、其鉴别方法及加密操作在数量上非常有限,并且它们能在封装在应用描述18中的交互作用上下文描述19(1)…的两层分层结构中非常有效地表示。

Claims (33)

1、一种数据交换系统的数据处理单元,所述的数据交换系统包括多个数据处理单元,该多个数据处理单元中至少有一个是便携式的,所述的数据处理单元其特征在于,包括:
数据通信装置(14),其用于传输和接收通信原码,该通信原码由交互作用上下文作为一命令而被接受;
存储装置(16),其用于存储一组数据元素(H),包括一组可执行代码元(G)的执行程序(17),和至少一个应用描述(CSA);及
处理装置,其与所述的数据通信装置和所述的存储装置相连接,
所述的应用描述(CSA)包括:
交互作用上下文表(CTA表),其包括至少一个交互作用上下文(CTA1);及
数据表(E),其包括一组数据存取条件和一组对所述的该组数据元素的一组指示符,所述的数据表由所述的交互作用上下文使用;
所述的交互作用上下文(CTA1)包括:
外部界面表(A),其包括至少一个通信原码;该通信原码由所述的数据处理单元经所述的数据通信装置作为命令接收;及
过程表(C),其包括至少一个过程描述,该过程描述引用要由所述的处理装置响应被接受的所述的通信原码处理的可执行代码元(G),当所述的过程描述引用的数据元素的存取条件被满足时,所述可执行代码元被允许存取相应的指示符指示的数据元素。
2、如权利要求1所述的数据处理单元,其特征在于,过程表(C)包括至少一个过程描述,该过程描述由对所述的一组可执行代码元中的一指定的可执行代码元的一直接引用组成。
3、如权利要求1或2所述的数据处理单元,其特征在于,所述的应用描述(CSA)还包括一过程库,该过程库由多个可执行代码(F)组成,该多个代码有对所述的一组可执行代码(G)的预定引用,而且至少一个所述的过程描述(C1,……)在所述的过程库中有一个对一指定的可执行代码元的引用。
4、如权利要求1或2或3所述的数据处理单元,其特征在于,所述的过程表(C)包括至少一个过程描述,该过程描述由一个对一数据表元素的引用组成。
5、一种存储器,其用于存储与一处理相关联的数据结构,该处理由处理器来执行,该数据结构包括:
应用描述,其定义与该处理相关联的(i)至少一个数据及对数据的引用,以及(ii)至少一个操作及对操作的引用;以及
至少一个与该应用描述相关联的交互作用上下文,该交互作用上下文被构造成使该处理与另一处理隔离。
6、一种方法,包括:
定义与由处理器所执行的处理相关联的(i)至少一个数据及对数据的引用,以及(ii)至少一个操作及对操作的引用,以及,
使该处理与其它任何正在执行的处理隔离。
7、如权利要求6所述的方法,其中,定义的步骤由一应用描述处理执行。
8、如权利要求7所述的方法,其中,使该处理与另一处理隔离的步骤由与该应用描述处理相关联的至少一个交互作用上下文执行。
9、如权利要求8所述的方法,其中,执行程序有权使用应用描述处理。
10、一种设备,其包括:
至少一个处理元,及存储器,该存储器包括:
a.应用描述,其定义与一处理相关联的(i)至少一个数据及对数据的引用,以及(ii)至少一个操作及对操作的引用,以及,
b.与该应用描述相关联的至少一个交互作用上下文,
其中处理元使用交互作用上下文使该处理与至少一个其它处理隔离。
11、一种设备,其包括:
存储介质,及
存储在该存储介质上的控制元,用于当智能卡上的多个应用描述由一处理器执行时,通过在各自的上下文中运行该多个应用描述而将该多个应用描述分离,而且用于允许第一应用描述在第二应用描述的控制下存取信息,该第二应用描述是基于与其相关联的至少一个存取条件而确定的。
12、一种智能卡,其包括:
至少一个处理元,及存储器,
其中,至少一个交互作用上下文,使用所述的存储器并在所述的处理元上运行,使应用描述彼此隔离。
13、如权利要求12所述的智能卡,其中所述的至少一个处理元是一运行在处理器上的抽象处理器。
14、如权利要求13所述的智能卡,其中所述的抽象处理器在一卡操作系统上运行。
15、如权利要求12,13,14中任何一项所述的智能卡,其中所述的交互作用上下文执行在一实体上的至少一个安全检查来防止从一个应用描述到一个不同的应用描述的存取。
16、一种设备,包括:
至少一个处理元,及
存储器,
其中至少一个交互作用上下文,使用所述的存储器并在所述的处理元上运行,使应用描述彼此隔离。
17、如权利要求16所述的设备,其中所述的至少一个处理元是一运行在处理器上的抽象处理器。
18、如权利要求17所述的设备,其中所述的抽象处理器在一卡操作系统上运行。
19、如权利要求16,17,18中任何一项所述的设备,其中所述的交互作用上下文执行在一实体上的至少一个安全检查来防止从一个应用描述到一个不同的应用描述的存取。
20、一种数据处理单元,其包括:
至少一个处理元,及
存储器,
其中至少一个交互作用上下文,使用所述的存储器并在所述的处理元上运行,使应用描述彼此隔离。
21、如权利要求20所述的数据处理单元,其中,所述的至少一个处理元是一运行在处理器上的抽象处理器。
22、如权利要求21所述的数据处理单元,其中,所述的抽象处理器在一卡操作系统上运行。
23、如权利要求20,21,22中任何一项所述的数据处理单元,其中,所述的交互作用上下文执行在一实体上的至少一个安全检查来防止从一个应用描述到一个不同的应用描述的存取。
24、一种使用一装置的方法,其包括这样一个步骤:使用至少一个交互作用上下文来防止从一个应用描述到一个不同的应用描述的存取。
25、如权利要求24所述的方法,其中所述的交互作用上下文用一抽象处理器来实现。
26、一种存储器,其用于存储数据,该数据用来被一由处理器处理的过程取用,该存储器包括:
一个结构,该结构用于保持与一应用相关联的一组交互作用上下文,且该结构被构造成在可用的交互作用中的一个应用的操作期间提供该应用与至少一个其它操作的应用之间的分离。
27、一种存储器,其用于存储数据,该数据用来被一由处理器处理的过程取用,该存储器包括:
一个与一应用相关联的交互作用上下文结构,该交互作用上下文结构被构造成保持指定至少一个通信原码的一组命令,该命令用来与至少一个其它应用进行通信,以及一组与至少一个其它的交互作用上下文结构相关联的数据的引用,该其它的交互作用上下文结构与其它应用相关联。
28、一数据交换系统,其包括:多个数据处理单元,每个所述的数据处理单元包括数据通信装置、处理装置、及存储器,后者包括执行程序,其中该存储器还包括如交互作用上下文的根据下面的数据结构对该数据处理单元之间的通信的可能模式的描述,
一组分配在所述多个数据处理单元上的数据元素,这些数据元素或者被永久地存储或者被计算,而且当执行过程描述中所定义的过程时,这些数据元素可供使用;及
与所述的数据元素相关联的第一组存取条件,当确定存取相关数据元素时这些条件被查询。
29、如权利要求28所述的数据交换系统,其中,一个或更多所述的数据处理单元在一PCMCIA卡中实现。
30、如权利要求28所述的数据交换系统,其中,一个或更多所述的数据处理单元在一智能卡中实现。
31、一个用于数据交换系统的数据结构,该数据结构包括:
一组分配在所述多个数据处理单元上的数据元素,这些数据元素或者被永久地存储或被计算,而且当执行过程描述中所定义的过程时,这些数据元素可供使用;
一组对所述数据元素的引用,所述的第一组的引用与过程描述相关联,从而当执行过程描述中所定义的过程时,所述的数据元素可供使用;及
与所述的数据元素相关联的第一组存取条件,当确定存取相关数据元素时这些条件被查询。
32、如权利要求31所述的数据交换系统,其中,处理单元之一在一PCMCIA卡中实现。
33、如权利要求31所述的数据交换系统,其中,处理单元之一在一智能卡中实现。
CN02155732A 1995-08-04 2002-12-09 包括便携式数据处理单元的数据交换系统 Expired - Lifetime CN100590590C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP95202143A EP0757336B1 (en) 1995-08-04 1995-08-04 Data exchange systems comprising portable data processing units
EP95202143.4 1995-08-04

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CNB961967854A Division CN1154071C (zh) 1995-08-04 1996-08-02 数据处理单元及包括该数据处理单元的数据交换系统

Publications (2)

Publication Number Publication Date
CN1445656A true CN1445656A (zh) 2003-10-01
CN100590590C CN100590590C (zh) 2010-02-17

Family

ID=8220554

Family Applications (3)

Application Number Title Priority Date Filing Date
CNB2004100328703A Expired - Lifetime CN100383777C (zh) 1995-08-04 1996-08-02 包括便携式数据处理单元的数据交换系统
CNB961967854A Expired - Lifetime CN1154071C (zh) 1995-08-04 1996-08-02 数据处理单元及包括该数据处理单元的数据交换系统
CN02155732A Expired - Lifetime CN100590590C (zh) 1995-08-04 2002-12-09 包括便携式数据处理单元的数据交换系统

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CNB2004100328703A Expired - Lifetime CN100383777C (zh) 1995-08-04 1996-08-02 包括便携式数据处理单元的数据交换系统
CNB961967854A Expired - Lifetime CN1154071C (zh) 1995-08-04 1996-08-02 数据处理单元及包括该数据处理单元的数据交换系统

Country Status (13)

Country Link
US (2) US6094656A (zh)
EP (1) EP0757336B1 (zh)
JP (3) JP3459649B2 (zh)
CN (3) CN100383777C (zh)
AT (1) ATE197743T1 (zh)
AU (1) AU706393B2 (zh)
DE (1) DE69519473T2 (zh)
DK (1) DK0757336T3 (zh)
ES (1) ES2153455T3 (zh)
GR (1) GR3035224T3 (zh)
NZ (1) NZ313777A (zh)
PT (1) PT757336E (zh)
WO (1) WO1997006516A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109983440A (zh) * 2016-11-28 2019-07-05 Arm有限公司 数据处理

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2153455T3 (es) 1995-08-04 2001-03-01 Belle Gate Invest B V Sistema de intercambio de datos que incluye unidades portatiles de procesamiento de datos.
US6385645B1 (en) * 1995-08-04 2002-05-07 Belle Gate Investments B.V. Data exchange system comprising portable data processing units
EP0874334A1 (en) * 1997-04-21 1998-10-28 Koninklijke KPN N.V. Secure application module for multiservice applications and a terminal provided with such a secure application module
FR2772957B1 (fr) * 1997-12-19 2000-02-04 Gemplus Card Int Procede de gestion d'applications evolutives dans un systeme terminal / carte a puce
JP3815022B2 (ja) * 1998-02-09 2006-08-30 富士ゼロックス株式会社 利用資格検証装置および方法、ならびに、利用資格検証システム
JPH11272825A (ja) * 1998-03-24 1999-10-08 Toshiba Corp アクセス管理方法及びその装置
AU755388B2 (en) * 1998-04-01 2002-12-12 Chip Application Technologies Limited Data carrying device and systems for use therewith
AUPP274098A0 (en) * 1998-04-01 1998-04-30 Chip Application Technologies Limited Data carrying device and systems for use therewith
CN1322430A (zh) * 1998-09-29 2001-11-14 太阳微系统公司 在话音上的数据叠加
US7073129B1 (en) 1998-12-18 2006-07-04 Tangis Corporation Automated selection of appropriate information based on a computer user's context
TW463107B (en) * 1998-12-22 2001-11-11 Ibm Extended card file system
US6823520B1 (en) 1999-01-22 2004-11-23 Sun Microsystems, Inc. Techniques for implementing security on a small footprint device using a context barrier
US6633984B2 (en) * 1999-01-22 2003-10-14 Sun Microsystems, Inc. Techniques for permitting access across a context barrier on a small footprint device using an entry point object
US6907608B1 (en) 1999-01-22 2005-06-14 Sun Microsystems, Inc. Techniques for permitting access across a context barrier in a small footprint device using global data structures
US6922835B1 (en) * 1999-01-22 2005-07-26 Sun Microsystems, Inc. Techniques for permitting access across a context barrier on a small footprint device using run time environment privileges
US7093122B1 (en) 1999-01-22 2006-08-15 Sun Microsystems, Inc. Techniques for permitting access across a context barrier in a small footprint device using shared object interfaces
JP4596715B2 (ja) 1999-06-10 2010-12-15 サン・マイクロシステムズ・インコーポレーテツド 別個のメモリ領域におけるデータの組の種々のバージョンを記憶する配列及びメモリ内のデータの組を更新する方法
AU1586500A (en) * 1999-12-06 2001-06-12 Sun Microsystems, Inc. Computer arrangement using non-refreshed dram
CA2393642A1 (en) 1999-12-07 2001-06-14 Eduard Karel De Jong Secure photo carrying identification device, as well as means and method for authenticating such an identification device
KR100693874B1 (ko) 1999-12-07 2007-03-12 선 마이크로시스템즈 인코포레이티드 판독을 제어하는 마이크로프로세서를 포함한 컴퓨터 판독매체 및 이러한 매체와 통신하도록 설정된 컴퓨터
FR2809894B1 (fr) * 2000-05-31 2002-10-25 France Telecom Procede de cryptographie, microcircuit pour carte a puce et cartes a puce incluant un tel microcircuit
US7828218B1 (en) 2000-07-20 2010-11-09 Oracle America, Inc. Method and system of communicating devices, and devices therefor, with protected data transfer
EP1314297B1 (en) * 2000-08-31 2005-05-04 Sun Microsystems, Inc. Method of operating a computer system using a hand insertable data carrier and corresponding system
FR2816429B1 (fr) * 2000-11-06 2003-04-11 Gemplus Card Int Carte a puce avec descripteur d'application
US20040003132A1 (en) * 2000-12-06 2004-01-01 Biosentients, Inc. Data pool architecture, system, and method for intelligent object data in heterogeneous data environments
US20100223295A1 (en) * 2000-12-06 2010-09-02 Io Informatics, Inc. Applied Semantic Knowledgebases and Applications Thereof
WO2002097746A1 (de) * 2001-06-01 2002-12-05 Anton Gunzinger System und verfahren zur übertragung von information, informationsträger
CN100347667C (zh) * 2001-06-27 2007-11-07 索尼公司 集成电路器件、信息处理设备、信息存储器件的存储管理方法、移动终端设备、半导体集成电路器件、以及使用移动终端设备的通信方法
US20030084302A1 (en) * 2001-10-29 2003-05-01 Sun Microsystems, Inc., A Delaware Corporation Portability and privacy with data communications network browsing
US20030084171A1 (en) * 2001-10-29 2003-05-01 Sun Microsystems, Inc., A Delaware Corporation User access control to distributed resources on a data communications network
US7085840B2 (en) * 2001-10-29 2006-08-01 Sun Microsystems, Inc. Enhanced quality of identification in a data communications network
US7275260B2 (en) * 2001-10-29 2007-09-25 Sun Microsystems, Inc. Enhanced privacy protection in identification in a data communications network
US7496751B2 (en) * 2001-10-29 2009-02-24 Sun Microsystems, Inc. Privacy and identification in a data communications network
US6912633B2 (en) * 2002-03-18 2005-06-28 Sun Microsystems, Inc. Enhanced memory management for portable devices
US20030177366A1 (en) * 2002-03-18 2003-09-18 Sun Microsystem, Inc., A Delaware Corporation Method and apparatus for dynamic personal identification number management
US6996802B2 (en) * 2002-03-18 2006-02-07 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using initialization order and calling order constraints
US7181737B2 (en) * 2002-03-18 2007-02-20 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using static procedure return addresses
US7010783B2 (en) * 2002-03-18 2006-03-07 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using reduced dynamic memory allocation
US7167843B2 (en) * 2002-06-05 2007-01-23 Sun Microsystems, Inc. Apparatus for private personal identification number management
US7162456B2 (en) * 2002-06-05 2007-01-09 Sun Microsystems, Inc. Method for private personal identification number management
US7596531B2 (en) * 2002-06-05 2009-09-29 Sun Microsystems, Inc. Method and apparatus for protecting against side channel attacks against personal identification numbers
US8010405B1 (en) 2002-07-26 2011-08-30 Visa Usa Inc. Multi-application smart card device software solution for smart cardholder reward selection and redemption
US8626577B2 (en) 2002-09-13 2014-01-07 Visa U.S.A Network centric loyalty system
US9852437B2 (en) 2002-09-13 2017-12-26 Visa U.S.A. Inc. Opt-in/opt-out in loyalty system
US7121456B2 (en) 2002-09-13 2006-10-17 Visa U.S.A. Inc. Method and system for managing token image replacement
US8015060B2 (en) 2002-09-13 2011-09-06 Visa Usa, Inc. Method and system for managing limited use coupon and coupon prioritization
US7484095B2 (en) * 2003-01-16 2009-01-27 Sun Microsystems, Inc. System for communicating program data between a first device and a second device
US7272830B2 (en) * 2003-01-16 2007-09-18 Sun Microsystems, Inc. Ordering program data for loading on a device
US7281244B2 (en) * 2003-01-16 2007-10-09 Sun Microsystems, Inc. Using a digital fingerprint to commit loaded data in a device
US7165246B2 (en) * 2003-01-16 2007-01-16 Sun Microsystems, Inc. Optimized representation of data type information in program verification
US20040143739A1 (en) * 2003-01-16 2004-07-22 Sun Mircosystems, Inc., A Delaware Corporation Run time code integrity checks
US8121955B2 (en) * 2003-01-16 2012-02-21 Oracle America, Inc. Signing program data payload sequence in program loading
US7222331B2 (en) * 2003-01-16 2007-05-22 Sun Microsystems, Inc. Linking of virtual methods
US20040199787A1 (en) * 2003-04-02 2004-10-07 Sun Microsystems, Inc., A Delaware Corporation Card device resource access control
US7827077B2 (en) 2003-05-02 2010-11-02 Visa U.S.A. Inc. Method and apparatus for management of electronic receipts on portable devices
US8554610B1 (en) 2003-08-29 2013-10-08 Visa U.S.A. Inc. Method and system for providing reward status
US7104446B2 (en) 2003-09-03 2006-09-12 Visa U.S.A., Inc. Method, system and portable consumer device using wildcard values
US7051923B2 (en) 2003-09-12 2006-05-30 Visa U.S.A., Inc. Method and system for providing interactive cardholder rewards image replacement
US8005763B2 (en) 2003-09-30 2011-08-23 Visa U.S.A. Inc. Method and system for providing a distributed adaptive rules based dynamic pricing system
US8407083B2 (en) 2003-09-30 2013-03-26 Visa U.S.A., Inc. Method and system for managing reward reversal after posting
US7653602B2 (en) 2003-11-06 2010-01-26 Visa U.S.A. Inc. Centralized electronic commerce card transactions
US7374099B2 (en) * 2004-02-24 2008-05-20 Sun Microsystems, Inc. Method and apparatus for processing an application identifier from a smart card
US7140549B2 (en) * 2004-02-24 2006-11-28 Sun Microsystems, Inc. Method and apparatus for selecting a desired application on a smart card
US7165727B2 (en) * 2004-02-24 2007-01-23 Sun Microsystems, Inc. Method and apparatus for installing an application onto a smart card
US7191288B2 (en) 2004-02-24 2007-03-13 Sun Microsystems, Inc. Method and apparatus for providing an application on a smart card
WO2006005773A1 (es) * 2004-06-09 2006-01-19 Microelectronica Española, S.A.U Método y dispositivo para la compartición de información entre parcelas de memoria de entornos de recursos limitados
DE102004044454A1 (de) * 2004-09-14 2006-03-30 Giesecke & Devrient Gmbh Tragbares Gerät zur Freischaltung eines Zugangs
JP5150116B2 (ja) * 2006-03-31 2013-02-20 パナソニック株式会社 Icカード及び読み書き装置
WO2007136045A1 (ja) * 2006-05-23 2007-11-29 Softbank Bb Corp. 携帯通信端末及び通信サーバ
US9137212B2 (en) 2006-12-04 2015-09-15 Oracle America, Inc. Communication method and apparatus using changing destination and return destination ID's
US8725638B2 (en) * 2007-05-18 2014-05-13 Visa U.S.A. Inc. Method and system for payment authorization and card presentation using pre-issued identities
US20080309665A1 (en) * 2007-06-13 2008-12-18 3D Systems, Inc., A California Corporation Distributed rapid prototyping
US7979685B1 (en) 2007-11-27 2011-07-12 Oracle America, Inc. Multiple instruction execution mode resource-constrained device
US8789753B1 (en) 2008-03-28 2014-07-29 Oracle International Corporation Method for using and maintaining user data stored on a smart card
US8225386B1 (en) 2008-03-28 2012-07-17 Oracle America, Inc. Personalizing an anonymous multi-application smart card by an end-user
US8152074B1 (en) 2008-03-28 2012-04-10 Oracle America, Inc. Method for preparing by a smart card issuer an anonymous smart card and resulting structure
US7992781B2 (en) 2009-12-16 2011-08-09 Visa International Service Association Merchant alerts incorporating receipt data
US8429048B2 (en) 2009-12-28 2013-04-23 Visa International Service Association System and method for processing payment transaction receipts
CN103716434B (zh) * 2013-12-27 2017-04-19 北京大唐智能卡技术有限公司 一种数据交互方法和系统
CN106021199B (zh) * 2016-05-13 2019-02-15 中国农业银行股份有限公司 一种面向业务数据的字符串报文处理方法和装置
US11475030B2 (en) 2016-11-10 2022-10-18 Ronald Scott Visscher System with a unique and versatile evaluation method

Family Cites Families (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4425642A (en) 1982-01-08 1984-01-10 Applied Spectrum Technologies, Inc. Simultaneous transmission of two information signals within a band-limited communications channel
JPS61177585A (ja) * 1985-02-04 1986-08-09 Toshiba Corp 携帯用電子装置密封体
CN85100700A (zh) 1985-04-01 1987-01-31 陆伯祥 计算机莫尔条纹证件及其识别系统
US4874935A (en) 1986-03-10 1989-10-17 Data Card Coprporation Smart card apparatus and method of programming same
JP2661930B2 (ja) 1986-05-16 1997-10-08 エイ・ティ・アンド・ティ・コーポレーション 複数のアプリケーションファイルをもつポータブルデータキャリヤのための装置
US4816654A (en) * 1986-05-16 1989-03-28 American Telephone And Telegraph Company Improved security system for a portable data carrier
FR2600441B1 (fr) 1986-06-18 1990-09-21 France Etat Unite de gestion de memoire
JP2514954B2 (ja) 1987-03-13 1996-07-10 三菱電機株式会社 Icカ−ド
GB2204973A (en) 1987-05-19 1988-11-23 Gen Electric Co Plc Data processing system
GB8720332D0 (en) 1987-08-28 1987-10-07 Mars Inc Data carrying devices
US4953160A (en) 1988-02-24 1990-08-28 Integrated Network Corporation Digital data over voice communication
JP3017736B2 (ja) * 1988-03-09 2000-03-13 株式会社東芝 携帯可能電子装置
JPH01277993A (ja) 1988-04-28 1989-11-08 Toshiba Corp 携帯可能電子装置
US5283885A (en) 1988-09-09 1994-02-01 Werner Hollerbauer Storage module including a refresh device for storing start and stop refresh addresses
JPH02156357A (ja) 1988-12-08 1990-06-15 Fujitsu Ltd プログラム破壊防止方法
US5057997A (en) 1989-02-13 1991-10-15 International Business Machines Corp. Interruption systems for externally changing a context of program execution of a programmed processor
JPH0390977A (ja) 1989-09-01 1991-04-16 Toyo Ink Mfg Co Ltd 情報識別方法
US5204663A (en) * 1990-05-21 1993-04-20 Applied Systems Institute, Inc. Smart card access control system
ES2047774T3 (es) 1990-07-20 1994-03-01 Siemens Nixdorf Inf Syst Procedimiento para impedir desviaciones inadmisibles del protocolo de desarrollo de una aplicacion en un sistema de intercambio de datos.
FR2667417B1 (fr) 1990-10-02 1992-11-27 Gemplus Card Int Carte a microprocesseur concue pour recevoir des programmes multiples en memoire programmable.
JP3007425B2 (ja) 1991-02-14 2000-02-07 凸版印刷 株式会社 Icカード
US5148546A (en) 1991-04-22 1992-09-15 Blodgett Greg A Method and system for minimizing power demands on portable computers and the like by refreshing selected dram cells
US5204897A (en) 1991-06-28 1993-04-20 Digital Equipment Corporation Management interface for license management system
DE4126213C2 (de) * 1991-08-08 2000-06-15 Deutsche Telekom Ag Chipkarte für mehrere Diensteanbieter
FR2683357A1 (fr) 1991-10-30 1993-05-07 Philips Composants Microcircuit pour carte a puce a memoire programmable protegee.
US5721788A (en) 1992-07-31 1998-02-24 Corbis Corporation Method and system for digital image signatures
JPH06119393A (ja) * 1992-08-20 1994-04-28 Ricoh Co Ltd 電子ファイル装置
EP0706692B1 (en) * 1992-10-26 2003-04-16 Intellect Australia Pty. Ltd. Host and user transaction system
CN1112786C (zh) * 1992-10-28 2003-06-25 李光实 具有远距离自动响应能力的电子识别系统及其自动识别方法
DE4242247C2 (de) 1992-12-15 1998-05-14 Orga Kartensysteme Gmbh Ausweiskarte mit optischem Datenträger
EP0631491B1 (de) 1993-01-18 1999-03-24 DARDEL, Eric Dr. Vorrichtung zum orten und punktieren von blutgefässen
FR2703800B1 (fr) 1993-04-06 1995-05-24 Bull Cp8 Procédé de signature d'un fichier informatique, et dispositif pour la mise en Óoeuvre.
US5446901A (en) 1993-06-30 1995-08-29 Digital Equipment Corporation Fault tolerant distributed garbage collection system and method for collecting network objects
US5469559A (en) 1993-07-06 1995-11-21 Dell Usa, L.P. Method and apparatus for refreshing a selected portion of a dynamic random access memory
US5534372A (en) 1993-07-28 1996-07-09 Konica Corporation IC card having image information
US5649118A (en) * 1993-08-27 1997-07-15 Lucent Technologies Inc. Smart card with multiple charge accounts and product item tables designating the account to debit
US5544246A (en) * 1993-09-17 1996-08-06 At&T Corp. Smartcard adapted for a plurality of service providers and for remote installation of same
US5832119C1 (en) 1993-11-18 2002-03-05 Digimarc Corp Methods for controlling systems using control signals embedded in empirical data
US6546112B1 (en) 1993-11-18 2003-04-08 Digimarc Corporation Security document with steganographically-encoded authentication data
JP3594980B2 (ja) * 1993-12-10 2004-12-02 株式会社東芝 ファイル管理方式
US5481715A (en) 1993-12-15 1996-01-02 Sun Microsystems, Inc. Method and apparatus for delegated communications in a computer system using trusted deputies
EP0666550B1 (en) 1994-02-08 1997-05-02 Belle Gate Investment B.V. Data exchange system comprising portable data processing units
FR2717931B1 (fr) 1994-03-23 1996-05-31 Gemplus Card Int Système de vérification d'identité.
US5404377A (en) 1994-04-08 1995-04-04 Moses; Donald W. Simultaneous transmission of data and audio signals by means of perceptual coding
JPH07336460A (ja) 1994-06-03 1995-12-22 Hitachi Ltd データ通信装置
US5568641A (en) 1995-01-18 1996-10-22 Hewlett-Packard Company Powerfail durable flash EEPROM upgrade
US5930363A (en) 1995-03-17 1999-07-27 Transmo Limited Card charging systems
US5594227A (en) 1995-03-28 1997-01-14 Microsoft Corporation System and method for protecting unauthorized access to data contents
CN1181141A (zh) 1995-04-07 1998-05-06 软体未来设计股份有限公司 数据处理系统和方法,以及计算机程序体系结构
CA2173695A1 (en) 1995-04-14 1996-10-15 Panagiotis Kougiouris Method and system for providing interoperability among processes written to execute on different operating systems
AU702649B2 (en) 1995-05-12 1999-02-25 Rovi Solutions Corporation Video media security and tracking system
US6385645B1 (en) * 1995-08-04 2002-05-07 Belle Gate Investments B.V. Data exchange system comprising portable data processing units
ES2153455T3 (es) 1995-08-04 2001-03-01 Belle Gate Invest B V Sistema de intercambio de datos que incluye unidades portatiles de procesamiento de datos.
US5768385A (en) 1995-08-29 1998-06-16 Microsoft Corporation Untraceable electronic cash
US5721781A (en) 1995-09-13 1998-02-24 Microsoft Corporation Authentication system and method for smart card transactions
DE19536169A1 (de) 1995-09-29 1997-04-03 Ibm Multifunktionale Chipkarte
DE19542910B4 (de) 1995-11-17 2005-01-05 Deutsche Telekom Ag Verfahren und Vorrichtung zum Schutz gespeicherter Daten
DE19600081C2 (de) 1996-01-03 1999-11-18 Ibm Sicherung der Datenintegrität bei Datenträgerkarten
FR2743910B1 (fr) 1996-01-19 1998-02-27 Solaic Sa Procede de mise en oeuvre d'un programme securise dans une carte a microprocesseur et carte a microprocesseur comportant un programme securise
US5742756A (en) 1996-02-12 1998-04-21 Microsoft Corporation System and method of using smart cards to perform security-critical operations requiring user authorization
DE19616819A1 (de) 1996-04-26 1997-10-30 Giesecke & Devrient Gmbh CD mit eingebautem Chip
DE69711755T2 (de) 1996-05-02 2002-11-14 Texas Instruments Inc Verbesserungen in Bezug auf Sicherheitssysteme
KR100186412B1 (ko) 1996-05-07 1999-04-15 구자홍 메모리를 내장한 광 디스크
US5896393A (en) 1996-05-23 1999-04-20 Advanced Micro Devices, Inc. Simplified file management scheme for flash memory
JP3241266B2 (ja) 1996-06-03 2001-12-25 本田技研工業株式会社 3次元cadシステム
US5781723A (en) 1996-06-03 1998-07-14 Microsoft Corporation System and method for self-identifying a portable information device to a computing unit
US5889868A (en) 1996-07-02 1999-03-30 The Dice Company Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
CN1183449C (zh) 1996-10-25 2005-01-05 施卢默格系统公司 用微控制器使用高级程序设计语言
US5915027A (en) 1996-11-05 1999-06-22 Nec Research Institute Digital watermarking
US5884316A (en) 1996-11-19 1999-03-16 Microsoft Corporation Implicit session context system with object state cache
EP0849734B1 (en) 1996-12-20 2003-04-16 Texas Instruments Incorporated Improvements in or relating to security systems
FR2757661B1 (fr) 1996-12-24 1999-01-22 Gemplus Card Int Procede de transfert securise de donnees par un reseau de communication
US5790489A (en) 1997-01-21 1998-08-04 Dell Usa, L.P. Smart compact disk including a processor and a transmission element
US6575372B1 (en) 1997-02-21 2003-06-10 Mondex International Limited Secure multi-application IC card system having selective loading and deleting capability
US5862117A (en) 1997-03-12 1999-01-19 Em Microelectronic-Marin Sa Device, in particular a compact disc, comprising a data storage medium and an integrated circuit
EP0864996A3 (en) 1997-03-13 1999-09-15 Hitachi, Ltd. Portable electronic device and method for personal identification
US6220510B1 (en) 1997-05-15 2001-04-24 Mondex International Limited Multi-application IC card with delegation feature
US6005940A (en) 1997-05-16 1999-12-21 Software Security, Inc. System for securely storing and reading encrypted data on a data medium using a transponder
JP4246812B2 (ja) 1997-06-12 2009-04-02 パナソニック株式会社 半導体回路及びその制御方法
KR19990012099A (ko) 1997-07-26 1999-02-25 윤종용 전자주민카드를 이용한 사용자 확인 방법
US6564995B1 (en) 1997-09-19 2003-05-20 Schlumberger Malco, Inc. Smart card application-selection
TW389900B (en) 1997-10-09 2000-05-11 Victor Company Of Japan Optical disces, producing methods and production apparatus of the optical discs
US6484946B2 (en) 1997-12-22 2002-11-26 Hitachi, Ltd. IC card information display device and IC card for use therewith
US6545981B1 (en) 1998-01-07 2003-04-08 Compaq Computer Corporation System and method for implementing error detection and recovery in a system area network
IL123028A (en) 1998-01-22 2007-09-20 Nds Ltd Protection of data on media recording disks
US6311186B1 (en) * 1998-02-20 2001-10-30 Priority Call Management, Inc. Telecommunications switching system utilizing a channelized database access mechanism
FR2776153B1 (fr) 1998-03-10 2000-07-28 Ordicam Rech Et Dev Procede pour l'identification securitaire d'une personne et dispositif portatif pour la mise en oeuvre du procede
US6241153B1 (en) 1998-03-17 2001-06-05 Cardxx, Inc. Method for making tamper-preventing, contact-type, smart cards
EP0944256A1 (en) 1998-03-19 1999-09-22 Hitachi Europe Limited Copy protection apparatus and method
US6212633B1 (en) 1998-06-26 2001-04-03 Vlsi Technology, Inc. Secure data communication over a memory-mapped serial communications interface utilizing a distributed firewall
US6374355B1 (en) 1998-07-31 2002-04-16 Lucent Technologies Inc. Method for securing over-the-air communication in a wireless system
JP2000094874A (ja) 1998-09-22 2000-04-04 Canon Inc 電子部品内蔵カードとその製造方法
US6257486B1 (en) 1998-11-23 2001-07-10 Cardis Research & Development Ltd. Smart card pin system, card, and reader
US6480831B1 (en) 1998-12-24 2002-11-12 Pitney Bowes Inc. Method and apparatus for securely transmitting keys from a postage metering apparatus to a remote data center
US6480935B1 (en) 1999-01-15 2002-11-12 Todd Carper Smart card memory management system and method
US6349336B1 (en) 1999-04-26 2002-02-19 Hewlett-Packard Company Agent/proxy connection control across a firewall
US6535997B1 (en) 1999-05-19 2003-03-18 International Business Machines Corporation Data integrity in smartcard transactions
US6292874B1 (en) 1999-10-19 2001-09-18 Advanced Technology Materials, Inc. Memory management method and apparatus for partitioning homogeneous memory and restricting access of installed applications to predetermined memory ranges
JP2001126046A (ja) 1999-10-29 2001-05-11 Kyodo Printing Co Ltd Icカード、icカード認証システム、及びその認証方法
US6572025B1 (en) 2000-05-10 2003-06-03 Japan Gain The Summit Co., Ltd. Information code product, manufacturing device and method for manufacturing the same, information code reading device, authentication system, authentication terminal, authentication server, and authentication method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109983440A (zh) * 2016-11-28 2019-07-05 Arm有限公司 数据处理
CN109983440B (zh) * 2016-11-28 2023-07-25 Arm有限公司 数据处理

Also Published As

Publication number Publication date
WO1997006516A1 (en) 1997-02-20
GR3035224T3 (en) 2001-04-30
DK0757336T3 (da) 2001-03-19
JP2007226839A (ja) 2007-09-06
US6094656A (en) 2000-07-25
NZ313777A (en) 1999-09-29
JP2003067700A (ja) 2003-03-07
PT757336E (pt) 2001-04-30
ATE197743T1 (de) 2000-12-15
USRE39269E1 (en) 2006-09-05
CN1195413A (zh) 1998-10-07
DE69519473D1 (de) 2000-12-28
CN1154071C (zh) 2004-06-16
DE69519473T2 (de) 2001-05-10
JPH11505355A (ja) 1999-05-18
CN1549198A (zh) 2004-11-24
EP0757336A1 (en) 1997-02-05
AU6632196A (en) 1997-03-05
AU706393B2 (en) 1999-06-17
CN100590590C (zh) 2010-02-17
ES2153455T3 (es) 2001-03-01
JP3459649B2 (ja) 2003-10-20
EP0757336B1 (en) 2000-11-22
CN100383777C (zh) 2008-04-23

Similar Documents

Publication Publication Date Title
CN1154071C (zh) 数据处理单元及包括该数据处理单元的数据交换系统
CN1079968C (zh) 包括便携式数据处理单元的数据交换系统
US6385645B1 (en) Data exchange system comprising portable data processing units
CN1159669C (zh) 卡式记录媒体和其存取控制方法
US7140549B2 (en) Method and apparatus for selecting a desired application on a smart card
US7165727B2 (en) Method and apparatus for installing an application onto a smart card
US7374099B2 (en) Method and apparatus for processing an application identifier from a smart card
US20050188360A1 (en) Method and apparatus for providing an application on a smart card
US20070067325A1 (en) Methods and apparatus to load and run software programs in data collection devices
CA2293297C (en) Chip card comprising means for managing a virtual memory, associated communication method and protocol
CN101689173B (zh) 用于经由虚拟软件的因特网安全的方法和系统
CN1189914A (zh) 卡接口
Schwarzhoff et al. Government Smart Card Interoperability Specification
Asgari et al. Classification of Smart Card Operating Systems
JP2007531926A (ja) 識別メディアへデータ及びアプリケーションを書き込む方法
Paavilainen Java based smart cards

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
CX01 Expiry of patent term

Granted publication date: 20100217

EXPY Termination of patent right or utility model