CN1257449C - Ic卡应用中防止程序跳飞时对信息记录载体误操作的方法 - Google Patents

Ic卡应用中防止程序跳飞时对信息记录载体误操作的方法 Download PDF

Info

Publication number
CN1257449C
CN1257449C CN 03115014 CN03115014A CN1257449C CN 1257449 C CN1257449 C CN 1257449C CN 03115014 CN03115014 CN 03115014 CN 03115014 A CN03115014 A CN 03115014A CN 1257449 C CN1257449 C CN 1257449C
Authority
CN
China
Prior art keywords
instruction
information recording
recording carrier
card
program
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.)
Expired - Fee Related
Application number
CN 03115014
Other languages
English (en)
Other versions
CN1519702A (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.)
Shanghai Huahong Integrated Circuit Co Ltd
Original Assignee
Shanghai Huahong Integrated Circuit Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Huahong Integrated Circuit Co Ltd filed Critical Shanghai Huahong Integrated Circuit Co Ltd
Priority to CN 03115014 priority Critical patent/CN1257449C/zh
Publication of CN1519702A publication Critical patent/CN1519702A/zh
Application granted granted Critical
Publication of CN1257449C publication Critical patent/CN1257449C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

一种IC卡应用中防止程序跳飞时对信息记录载体误操作的方法:在一个完整的COS中对信息记录载体进行读写操作处理的指令有多条;给每一条对信息记录载体有操作行为的指令分配一个跟踪寄存器,通过这一组跟踪寄存器对每条指令处理过程中的特有信息的跟踪记录,来检验相对应的指令执行的流程是否是按规定流程动作,即:在对信息记录载体进行直接操作的函数入口位置对这一组跟踪寄存器的值进行判断,确定在该条指令的程序分析处理过程中是否出现过指令跳飞的情况:如果该组跟踪寄存器的特征值异常,则说明指令分析处理过程中出现过跳飞的异常情况,以此来拒绝对信息记录载体的操作并做相应的报错处理,从而可以避免因指令跳飞情况下对信息记录载体的误操作的发生。

Description

IC卡应用中防止程序跳飞时对信息记录载体误操作的方法
技术领域
本发明涉及IC卡应用中防止程序跳飞时对信息记录载体误操作的方法。
背景技术
近年来,IC卡的应用日益广泛,而在这些应用当中IC卡中往往存储着与持卡人利益或与IC卡应用安全性相关的重要信息,这些信息的写入、更新与读出通常是通过IC卡中的卡内操作系统(COS)来完成的,如果IC卡在相对恶劣应用环境下出现程序跳飞现象而对IC卡中的信息记录载体出现误操作,造成读出或写入了错误的数据信息,将会对持卡人的利益或是IC卡的应用安全性造成重大损害。
发明内容
本发明的目的在于提供一种IC卡应用中防止程序跳飞时对信息记录载体误操作的方法,从而避免在IC卡应用中程序跳飞情况下对信息记录载体误操作所造成的损失。
本发明所提供的一种IC卡应用中防止程序跳飞时对信息记录载体误操作的方法,卡内操作系统是以接收由读卡机发来的特定指令来完成一个相应的处理流程,包括下列步骤:在卡内操作系统中对信息记录载体进行读写操作处理的指令有多条,每一指令分别包含其自己所属的不同状态、指令识别码及处理流程的特有信息;给每一条对信息记录载体有操作行为的指令分配一个跟踪寄存器,通过这一组跟踪寄存器对每条指令处理过程中的特有信息的跟踪记录,即:分别在对应指令的整个执行过程中实行监视指令在RF接收、状态判别、指令识别码判别、操作权限校验、EEPROM擦写底层函数调用位置,并在对应的程序判别语句附近置相应的标志位为1,来检验相对应的指令执行的流程是否是按规定流程动作,其中:允许存在两条或是两条以上的指令拥有同一个特有信息,但一个正常的指令流程处理下来,作为整体的这一组跟踪寄存器的值是唯一的;在对信息记录载体进行直接操作的函数入口位置对这一组跟踪寄存器的值进行判断,确定在该条执行指令的程序分析处理过程中是否出现过指令跳飞的情况:如果该组跟踪寄存器的值异常,即指令分析处理过程中出现过跳飞的情况,则拒绝对信息记录载体的操作并做相应的报错处理。
由于采用了上述的技术解决方案,可以可靠有效的检测出指令跳飞情况的发生,杜绝了因指令跳飞情况下的对信息记录载体的误操作。从而大大提高了IC卡在相对恶劣的应用环境中使用的安全可靠性。
附图说明
图1是本发明的流程框图。
具体实施方式
参见图1,本发明,即:IC卡应用中防止程序跳飞时对信息记录载体误操作的方法,卡内操作系统(COS)通常是以接收由读卡机发来的特定指令来完成一个相应的处理流程的。在一个完整的应用体系中,往往有许多条指令的处理都涉及到对非易失信息记录载体(如EEPROM)的读写操作,这些指令分别有着自己所属的不同状态、指令识别码及特有的处理流程等特有信息。因此可给每一条对非易失信息记录载体有操作行为的指令分配一个跟踪寄存器,通过这一组跟踪寄存器对每条指令处理过程中的特有信息的跟踪记录(如对某一跟踪寄存器相应的位置1),来检验相对应的指令执行的流程是否是按规定流程动作的。虽然有可能存在两条或是两条以上的指令拥有同一个特征信息,但一个正常的指令流程处理下来,这一组跟踪寄存器的值应是唯一的。因此在对信息记录载体进行直接操作的函数入口位置对这一组跟踪寄存器的值进行判断,便可知在该条指令的程序分析处理过程中是否出现过指令跳飞的情况,如果该组跟踪寄存器的特征值异常,则说明指令分析处理过程中出现过跳飞的异常情况,以此来拒绝对信息记录载体的操作并做相应的报错处理,从而可以避免因指令跳飞情况下对EEPROM等信息记录载体的误操作的发生。
下面以某一个IC卡应用体系为例做进一步详细的说明:在这个IC卡应用体系中,以EEPROM做为IC卡中的信息记录载体,整个指令体系中总共有6条对EEPOM有写操作的指令:WRITEBINARY、WRITEKEY、GETRAND、PCDVPP、TESTWRITE、EEPTEST。这六条指令在卡内操作系统(COS)中,分别属于3个不同的状态:其中WRITEBINARY、WRITEKEY、GETRAND三条指令同属一个状态;PCDVPP单独为一个状态;TESTWRITE、EEPTEST两条指令属于第3状态。这六条指令的处理过程均需要通过RF(射频)接收、所属状态判断、指令识别码判别、操作权限校验、调用EEPROM操作子函数这五个阶段。并且拥有不同的指令识别码。
为了防止在COS指令跳飞的情况下对EEPROM进行擦写操作而对EEPROM中的数据造成破坏,该版COS中对这6条指令定义了对应的6个跟踪寄存器。这6个跟踪寄存器的BIT7-BIT3分别在对应指令的整个执行过程中实行监视指令在RF接收、状态判别、指令识别码判别、操作权限校验、EEPROM擦写底层函数调用位置,并在对应的程序判别语句附近置相应的标志位为1。当这6条指令中的某条指令正确执行,则对应这6个跟踪寄存器的值是唯一的,如果其中某个跟踪寄存器不满足条件,程序则跳转至软件初始化状态,清除这6个跟踪寄存器,重新开始指令接收和跟踪判别。这6个跟踪寄存器的定义及状态如下:
WBSP(WRITEBINARY跟踪寄存器)
WKSP(WRITEKEY跟踪寄存器)
GRSP(GETRAND跟踪寄存器)
PVSP(PCDVPP跟踪寄存器)
TWSP(TESTWRITE跟踪寄存器)
EPASP(EEPTEST跟踪寄存器)
WriteBinary指令调用擦写过程:
  RF   状态判别   指令识别码   权限判别   EEPROM操作调用   BIT2-BIT0   寄存器对应值
  WB   1   1   1   1   1   000   F8
  WK   1   1   0   0   0   000   C0
  GR   1   1   0   0   0   000   C0
  PV   1   0   0   0   0   000   80
  TW   1   0   0   0   0   000   80
  EPA   1   0   0   0   0   000   80
(2)WriteKey指令调用擦写过程:
  RF   状态判别   指令识别码   权限判别   EEPROM操作调用   BIT2-BIT0   寄存器对应值
  WB   1   1   0   0   0   000   C0
  WK   1   1   1   1   1   000   F8
  GR   1   1   0   0   0   000   C0
  PV   1   0   0   0   0   000   80
  TW   1   0   0   0   0   000   80
  EPA   1   0   0   0   0   000   80
(3)GetRand指令调用擦写过程:
  RF   状态判别   指令识别码   权限判别   EEPROM操作调用   BIT2-BIT0   寄存器对应值
  WB   1   1   0   0   0   000   C0
  WK   1   1   0   0   0   000   C0
  GR   1   1   1   0   1   000   E8
  PV   1   0   0   0   0   000   80
  TW   1   0   0   0   0   000   80
  EPA   1   0   0   0   0   000   80
(4)PcdVpp指令调用擦写过程:
  RF   状态判别   指令识别码   权限判别   EEPROM操作调用   BIT2-BIT0   寄存器对应值
  WB   1   0   0   0   0   000   80
  WK   1   0   0   0   0   000   80
  GR   1   0   0   0   0   000   80
  PV   1   1   1   0   1   000   E8
  TW   1   0   0   0   0   000   80
  EPA   1   0   0   0   0   000   80
(5)TestWrite指令调用擦写过程:
  RF   状态判别   指令识别码   权限判别   EEPROM操作调用   BIT2-BIT0   寄存器对应值
  WB   1   0   0   0   0   000   80
  WK   1   0   0   0   0   000   80
  GR   1   0   0   0   0   000   80
  PV   1   0   0   0   0   000   80
  TW   1   1   1   0   1   000   E8
  EPA   1   1   0   0   0   000   C0
(6)EEPROM全片擦写指令调用擦写过程:
  RF   状态判别   指令识别码   权限判别   EEPROM操作调用   BIT2-BIT0   寄存器对应值
  WB   1   0   0   0   0   000   80
  WK   1   0   0   0   0   000   80
  GR   1   0   0   0   0   000   80
  PV   1   0   0   0   0   000   80
  TW   1   1   0   0   0   000   C0
  EPA   1   1   1   0   1   000   E8
从上面的几个列表可以看出这六条指令的每一条正常执行时,对应的6个跟踪寄存器都是一组唯一的值,当指令在这6条指令处理过程间发生跳飞现象时,这组寄存器就可以准确的检测到。在EEPROM擦写子函数的入口位置对这组寄存器的值进行判断即可得知是那一条指令合法的执行或是发生了指令跳飞的情况。在本COS中当发现这6条对EEPROM擦写操作的指令间发生跳飞现象时,则终止对EEPROM的操作,软件复位至上电初始化状态,同时这给(6个)跟踪寄存器清0,重新开始新一轮的指令跟踪操作。
通过这个方法在该版COS中对IC卡应用中防止程序跳飞情况下对信息记录载体误操作,取得了良好的效果。

Claims (1)

1.一种IC卡应用中防止程序跳飞时对信息记录载体误操作的方法,卡内操作系统是以接收由读卡机发来的特定指令来完成一个相应的处理流程,包括下列步骤:
在卡内操作系统中对信息记录载体进行读写操作处理的指令有多条,每一指令分别包含其自己所属的不同状态、指令识别码及处理流程的特有信息;
给每一条对信息记录载体有操作行为的指令分配一个跟踪寄存器,通过这一组跟踪寄存器对每条指令处理过程中的特有信息的跟踪记录,即:分别在对应指令的整个执行过程中实行监视指令在RF接收、状态判别、指令识别码判别、操作权限校验、EEPROM擦写底层函数调用位置,并在对应的程序判别语句附近置相应的标志位为1,来检验相对应的指令执行的流程是否是按规定流程动作,其中:允许存在两条或是两条以上的指令拥有同一个特有信息,但一个正常的指令流程处理下来,作为整体的这一组跟踪寄存器的值是唯一的;
在对信息记录载体进行直接操作的函数入口位置对这一组跟踪寄存器的值进行判断,确定在该条执行指令的程序分析处理过程中是否出现过指令跳飞的情况:
如果该组跟踪寄存器的值异常,即指令分析处理过程中出现过跳飞的情况,则拒绝对信息记录载体的操作并做相应的报错处理。
CN 03115014 2003-01-20 2003-01-20 Ic卡应用中防止程序跳飞时对信息记录载体误操作的方法 Expired - Fee Related CN1257449C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 03115014 CN1257449C (zh) 2003-01-20 2003-01-20 Ic卡应用中防止程序跳飞时对信息记录载体误操作的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 03115014 CN1257449C (zh) 2003-01-20 2003-01-20 Ic卡应用中防止程序跳飞时对信息记录载体误操作的方法

Publications (2)

Publication Number Publication Date
CN1519702A CN1519702A (zh) 2004-08-11
CN1257449C true CN1257449C (zh) 2006-05-24

Family

ID=34284063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 03115014 Expired - Fee Related CN1257449C (zh) 2003-01-20 2003-01-20 Ic卡应用中防止程序跳飞时对信息记录载体误操作的方法

Country Status (1)

Country Link
CN (1) CN1257449C (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103455445A (zh) * 2012-05-31 2013-12-18 上海华虹集成电路有限责任公司 智能卡系统抵抗故障攻击的方法
CN105126247B (zh) * 2015-03-16 2021-04-02 美敦力公司 具有操作追踪的可植入医疗设备

Also Published As

Publication number Publication date
CN1519702A (zh) 2004-08-11

Similar Documents

Publication Publication Date Title
US8138920B2 (en) Tag reader
CN106155596B (zh) 数据写入方法及装置
CN116052275B (zh) 基于大数据的异常行为检测方法以及系统
CN107632778B (zh) 一种Nand Flash扫描检测方法和系统
CN106205731A (zh) 信息处理方法及存储设备
CN106709386B (zh) 智能卡数据写入方法及装置
CN1257449C (zh) Ic卡应用中防止程序跳飞时对信息记录载体误操作的方法
CN117056570B (zh) 机器人巡检数据处理方法和相关系统
CN112270945A (zh) 记录是否有擦除时掉电的方法、装置、存储介质和终端
CN108804920B (zh) 一种基于跨进程行为监控恶意代码同源性分析的方法
CN114510723B (zh) 一种智能合约权限管理漏洞检测方法及装置
CN114422186B (zh) 一种攻击检测方法、装置、电子设备及存储介质
CN105279044B (zh) 一种基于bois总线识别bios状态的方法及计算机系统
CN113176883A (zh) 一种可自动生成烧写记录的fpga烧写方法和系统
JP5067170B2 (ja) 情報収集システム
CN114548328A (zh) 应用于检测流程的检测治具的管理方法
CN111610778B (zh) 一种提高工控系统稳定性的自适应监测系统
CN117852568B (zh) 基于产品标识码的fpc生产信息追溯方法、系统及设备
CN115934005B (zh) 一种数据存储方法和系统
CN111124726B (zh) 打开modem端口异常检测方法及装置
CN114955355B (zh) 堆垛机认址方法、装置、设备及存储介质
CN116166323A (zh) 命令处理方法、装置及存储设备
CN115964225A (zh) 一种应答保护单调计数器、计数方法及存储介质
CN107102638B (zh) Io点通信范围的检测方法、插件及计算机可读介质
CN117614801A (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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20060524

Termination date: 20180120