用于将一个应用程序装入一个芯片卡的方法技术

技术编号:2887214 阅读:183 留言:0更新日期:2012-04-11 18:40
为了解决由同一芯片卡中的不同程序的共存(BANK,SERVICE)而引起的问题,本发明专利技术的目的是利用一个能够转换整个应用程序(15)的装入程序(CHAR)来装配所述芯片卡(1)的操作系统(5),使得这个应用程序的指令和数据位于集成电路中直接可用且相应于所述集成电路的数据存储器(4)中的实际地址的绝对地址(2356)。因此这样做,能够同时确保芯片组中应用程序的共存性和独立性。(*该技术在2017年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术的目的在于将一个应用程序装入一个便携式的芯片载体,特别是芯片卡中。该方法用于我们想在同一芯片上同时拥有几种不同类型的应用的场合。“应用”是指发生在一个芯片卡和一个持卡人将卡插入其中以满足特定需求的读卡器中的操作。这些操作包括卡和读卡器电路中的电子处理以及发生在与读卡器连接的外设上的操作,其中某些操作可能是机械操作。从而一个应用包括一个存储在卡存储器中的卡操作程序,并且该程序包含指令集。一个芯片卡的通用结构包括一个与一个程序存储器连接的微处理器,一个或多个数据存储单元以及一个用以与外界进行通信的接口。考虑到将几个应用程序输入到同一个卡上可以使芯片卡更加实用。例如,可以一起输入一个银行程序和一个汽车预约程序。对这两个应用程序负责的两个服务提供者、一个银行和一个金融机构一般不具有任何共性并且彼此之间是完全独立的。它们甚至不知道它们的客户所拥有的芯片卡上还包括其它服务提供者所提供的应用程序。这种几个应用中共享一个芯片卡资源的主要问题是共同考虑数据和不同应用程序指令的完整性。为了解决由这种共存而引起的问题,根据由具有较高权限一方,例如卡的制造公司进行干涉的原则,开发出了几种方法。这几种方法都是可用的。例如,构成卡的集成电路的制造商可具有这样的权限。另外,所制造的集成电路可以是完全空白的或只包括对卡进行操作的基本指令集。这个基本指令集是该集成电路的操作系统。这个系统可在制造时直接(在这种情况下通常是以一个模板编程)或在测试过程中被编程于集成电路内。另一种可能性是由一个公司将操作系统安装到集成电路中,该公司向服务提供者提供了一批具有操作系统和符合其需求的应用程序的卡。在后一种情况下,通过为每一种情况设计一种专用的操作系统以使几个不同的(但是被预先标识的)的应用能够被存储在卡上而不会使各个应用彼此影响,除非各服务提供者都同意,来实现同一芯片卡中同一集成电路上的各个应用的共存。这种方法的缺点是使用该方法的公司必须从一开始就知道由服务提供者提供的所有卡服务用途。这造成了修正和升级困难。另一个缺点是此方法依赖于各服务提供者在将操作系统和应用程序安装到卡的集成电路中的公司中所拥有的置信度。在这些应用包括了对服务提供者来说是很敏感的操作时,就很难建立和保持这种置信度。除了应用的升级问题之外,还存在将应用程序存储到芯片卡的集成电路的存储器中的困难,因为其实现必须通过对卡上的可用存储区域分配绝对地址,即必须暴露卡集成电路的整个结构,尤其是暴露了用以存储卡机密的地址。为了将应用程序存储到芯片卡上,就必须知道这些用于编码的私有密钥。本专利技术通过在集成电路的操作系统中包括了一个装入宏指令而解决了这个问题,该指令根据一个已知地址计算存储应用程序指令的绝对地址,并修改应用程序,将用于此程序的指令记录到计算出的地址上。在本专利技术中,集成电路的应用程序还包括一个数据存储空间的定义,它对于使用是必须的。本专利技术的装入宏指令读取存在于该应用程序中(通常在程序的开头部分)的此定义,并在数据存储器中保留存储相应数据所需的空间。在装入过程中,本专利技术的装入宏指令理论上还更新一个表示此应用的应用程序存储在存储器中的存储区域。例如,此存储区域可包括一个文件描述符。从而本专利技术涉及一种用于将一个电子芯片装入到一个具有一个用于操作该芯片卡的程序的便携式芯片载体上的方法,该便携式芯片载体包括一个微处理器和存储单元。该程序包括指令,其中-该芯片具有一个包括用于装入存储器的程序的操作系统。这个操作系统控制微处理器和存储器的操作,-利用存储器装入程序,应用程序被记录到存储器中,其特征在于-在应用程序中,我们在芯片存储器中定义一个所需大小的空间以包含定义该应用程序所使用的数据,-在装入过程中,这个存储器装入程序计算绝对地址以将应用程序中所用的数据和应用程序指令记录到存储器中,-于是修改应用程序,-这个装入程序将出现在应用程序中的数据和指令记录在计算出的绝对地址上。芯片卡所固有的另一个问题是给服务提供者以编程新应用或无须知道操作系统的功能即可修改他们的应用的可能性。因此在本专利技术中,卡的集成电路将包括一个命令解释程序。这样的命令解释程序能够使集成电路的微处理器以高级语言(符号)执行指令,这些指令被读到一个程序存储器中并被直接快速地翻译,即转换成微处理器能够执行的指令。然后这些可执行指令被装入到微处理器的指令寄存器中。在这种情况下,对服务提供者的唯一约束条件是他们必须为他们的应用程序提供数据所需的空间定义并且他们必须使用计算通用的高级语言程序。高级语言可以是C、FORTH、FORTRAN或COBOL等。如果需要,装入宏指令可以首先识别正在使用的语言以正确地翻译命令。这样,对于不同的语言,具有不同的翻译器。因此本专利技术的目的在于前述的一种方法,其特征在于-芯片具有一个包括一个命令解释程序33的操作系统,-利用存储器装入程序,芯片的存储器记录以高级语言编写的用于该芯片卡的应用程序15,该应用程序包括不能被微处理器直接执行的指令,在这些指令经过命令解释程序的解释之后,微处理器能够执行从这些指令(不能直接执行)翻译而成的解释指令,-在进行记录时,存储器装入程序计算地址以将高级语言的程序指令记录到芯片存储器中,-修改基于此计算的高级语言指令,-这些高级语言指令被记录到存储器中由装入程序计算出的绝对地址上。参照后面的描述和附图将能够更好地理解本专利技术。这些描述和附图不构成对本专利技术的限制。这些附图如下附图说明图1一个适用于使用本专利技术方法的电子载体的集成电路结构;图2示出了依据本专利技术方法的装入操作的流程图;图3a-3c以高级语言编写的并且在记录到集成电路的存储器之前经过相对寻址和各种转换的程序的简意示例;图4用于这样的程序中的特定指令的语法描述。图1示出了一个使用本专利技术方法的便携式载体的集成电路结构。图中未示出的便携式载体上具有一个电子芯片1。在一个实施例中,便携式载体是一个芯片卡。芯片1包括一个微处理器2和一个存储器。在该实施例中,存储器是一个双存储器。它包括一个用于存储集成电路操作系统的第一存储器3。存储器3最好是一个非可编程存储单元,通过模板对该单元编程或者开始是可编程的,但在编程之后就被锁定以使其不能再被编程。它是一个非易失性存储器,存储单元类型可以是EPROM或EEPROM。存储器的另一部分4可在需要时被编程和擦除,并且最好是EPROM类型。它也是非易失性存储器。服务提供者可包括他想输入的所有应用程序以便集成电路1能够处理所需要的所有应用。记录在存储器3中的操作系统至少包括一种公知类型的第一指令集5。例如,这些指令可以是MOVE、MULT、PLUS或GOTO。一旦将其装入处理器2的指令寄存器6,它们的目的就是触发将数据(或指令)传输到微处理器2的一个数据寄存器7中以使微处理器能够处理这些数据。此系统(公知类型)的功能如下所述。当启动(包含在存储器4的部分6中的)应用程序时,读入此部分的一个指令触发将一个指令从操作系统5装入寄存器6(在某些情况下,它触发从操作系统连续装入几个指令)。此时,有用数据被装入到微处理器的数据寄存器7中。例如该数据可来自存储器4的一个部分9。然后微处理器2处理这些数据,并将结果存入寄存器7(例如)。部分8和9共同构成了为所述应用而保留的存储器4本文档来自技高网...

【技术保护点】
一种用于装入一个被安装到一个芯片载体上的电子芯片(1)的方法,所述电子芯片包括一个微处理器(2)和一个存储器(3,4),并具有一个用于该芯片载体的应用程序(15),这个程序包含指令,其中:-该芯片具有一个包括一个存储器装入程序(LOAD )在内的操作系统(5),该操作系统控制微处理器和存储器的运行,-利用存储器装入程序将该应用程序(15)记录到(20)存储器中,其特征在于:在该应用程序中,定义在芯片存储器(4)中包含该应用程序将要利用的数据的所需的一些空间(DE FIN,resul,temp,index…),-在装入过程中,这个存储器装入程序计算绝对地址以将用于该应用程序的数据和用于该应用程序的指令记录到存储器中,-从而修改该应用程序,以及-此装入程序将出现在应用程序中的数据和指令记录到 计算出的绝对地址上。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:P帕拉迪纳斯JJ范德瓦勒P比格特P乔治S勒科姆特
申请(专利权)人:格马尔托股份有限公司
类型:发明
国别省市:FR[法国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1