一种掉电保护智能卡及其工作方法技术

技术编号:24035267 阅读:43 留言:0更新日期:2020-05-07 01:43
本申请公开一种掉电保护智能卡及其工作方法。所述智能卡包括微处理器和存储器;存储器包括数据区和数据保护区,数据保护区包括备份栈区、标志页面区和防拔保护区;微处理器用于确定事务启动的来源为平台或应用,以及在掉电重启后,根据平台或应用执行对应的回滚处理;防拔保护区用于在平台或应用启动事务时,存储所述目标数据页的整页数据;标志页面区,用于在平台或应用启动事务时,记录防拔保护页面对应的有效标志和目标数据页地址;备份栈区,用于在平台启动事务时,将目标地址对应的原始数据以备份记录形式存储。本申请解决智能卡的性能和空间无法兼容的问题。

A smart card for power down protection and its working method

【技术实现步骤摘要】
一种掉电保护智能卡及其工作方法
本申请涉及智能卡存储领域,尤其涉及一种掉电保护智能卡及其工作方法。
技术介绍
智能卡(如金融IC卡)的存储介质一般为EEPROM和ROM结合体的掩膜卡或Flash卡。Flash存储器是FlashEEPROM存储的简称,和常规的EEPROM一样属于非易失性存储器,即没有电源时数据可以保持不变。传统的EEPROM具有较高的可靠性,但是电路复杂,成本也高。因此目前的EEPROM都是几十千字节到几百千字节的,很少有超过512K,而金融IC卡更甚,EEPROM大小一般不超过80K。随着技术的发展,Flash芯片越来越被普遍采用。Flash的改进主要是擦除时不再以字节为单位,而是以页甚至块为单位,简化了电路。数据密度更高,降低了成本。因此,Flash技术越来越精进,安全性也有所提高,逐渐被银行所接纳。Flash作为一种金融IC卡新的介质应用越来越普遍。Flash现在作为IC卡芯片越来越多使用的一种存储介质,它易于擦除和重写,有很高的存储速度,而且也可以长期保存存储在内的信息。然而Flash也存在擦写过程中掉电会出现数据流失的问题。Flash一般以页为单位进行擦除操作,Flash的编程操作为先擦后写,所以肯定要面临着整页的保护。对于智能卡这种存储量较小的设备,频繁的Flash擦写会缩短智能卡的使用寿命。基于智能卡存储量小的特性现如今亟需一种能够协调内部FLash频繁擦写的方法,基于此本申请应运而生。
技术实现思路
本申请提供了一种掉电保护智能卡,所述智能卡包括微处理器和与所述微处理器连接的存储器;所述存储器包括数据区和数据保护区,数据保护区包括备份栈区、标志页面区和防拔保护区;所述微处理器,用于确定事务启动的来源为平台或应用;以及用于接收写数据指令,从写数据指令中获取需要更新的目标地址和待更新数据,根据所述目标地址确定数据区中待更新的目标数据页;以及用于在掉电重启后,若确定由平台启动事务,则根据备份栈区、标志页面区和防拔保护区进行回滚,若确定由应用启动事务,则根据标志页面区和防拔保护区进行回滚;所述防拔保护区,用于在平台或应用启动事务时,存储所述目标数据页的整页数据;所述标志页面区,用于在平台或应用启动事务时,记录防拔保护页面对应的有效标志和目标数据页地址;所述备份栈区,用于在平台启动事务时,将所述目标地址对应的原始数据以备份记录形式存储。如上所述的掉电保护智能卡,其中所述微处理器还用于在智能卡上电后,将事务启动的来源初始化为平台启动;以及用于在智能卡工作过程中根据平台和应用的开启实时更新事务启动来源。本申请还提供一种掉电保护智能卡的工作方法,包括:当页保护函数被调用时:将待更新目标地址确定的目标数据页的整页数据存储至防拔保护区中,并在标志页面区标记对应的有效标志和目标数据页地址;;当备份函数被调用时:若判定由平台开启事务,则将待更新目标地址对应的原始数据按照备份记录形式逐条写入备份栈中,返回备份成功响应;若判定由应用开启事务,则备份函数不执行任何操作,直接退出;;当更新函数被调用时:若判定由应用开启事务,则根据待更新数据和目标数据页原始数据对目标数据页进行更新,返回更新成功响应;若判定由平台开启事务,则根据待更新数据和目标数据页原始数据对目标数据页进行更新,并擦除标志页面区对所述目标数据页的有效标志,返回更新成功响应;当回滚函数被调用时:若判定由平台开启事务,则根据防拔保护区、标志页面区和备份栈区对数据区进行数据恢复;若判定由应用开启事务,则根据防拔保护区和标志页面区对数据区进行数据恢复。如上所述的掉电保护智能卡的工作方法,其中根据智能卡中设置的事务开启标识确定事务由平台开启或由应用开启;在智能卡上电时设置所述事务开启标识为初始化状态,在智能卡工作过程中根据当前事务的启动来源更新所述事物开启标识。如上所述的掉电保护智能卡的工作方法,其中当回滚函数被调用时,若判定由平台开启事务,则根据防拔保护区、标志页面区和备份栈区进行数据恢复后,还包括将事务开启标识重新设置为初始化状态。如上所述的掉电保护智能卡的工作方法,其中当发生非掉电情况需要回滚时调用回滚函数,若判定由应用开启事务时,调用应用私有的恢复函数,根据标记页面区记录的所有标志,回滚对应的防拔保护区中的数据;若判定由平台开启事务时,调用带有备份栈数据恢复的函数,根据标志页面区的最后标志,回滚最后一个防拔保护页数据,然后逐条回滚备份栈中的备份记录。如上所述的掉电保护智能卡的工作方法,其中当发生掉电复位情况需要回滚时调用回滚函数,检查标志页面区,若判定标志页面区中存在失效标志,则说明是由平台开启的事务,调用带有备份栈数据恢复的函数,对当前有效的防拔保护页恢复完成后,利用备份栈内的备份记录对数据一一进行回滚;若判定标志页面区中不存在失效标志,则说明是由应用开启的事务,通过调用应用私有的恢复函数,根据标记页面区记录的所有标志,回滚对应的防拔保护区中的数据。如上所述的掉电保护智能卡的工作方法,其中当由平台开启事务,应用接口穿插其中时:在应用启动事物时先调用事务开启函数判断当前是否已开启过事务,如果是,则保持由平台开启事务,否则更新为由应用开启事务。如上所述的掉电保护智能卡的工作方法,其中当由应用开启事务,平台接口穿插其中时,应用利用备份开启接口函数开启防拔事务处理,并设置事物由应用开启,如果发生平台再次开启事务的嵌套,则继续保持由应用开启事务。如上所述的掉电保护智能卡的工作方法,其中若发生非掉电情况需要回滚时,判断事物开启标识,如果是应用开启事务,则调用应用专用恢复函数根据防拔保护区和标志页面区对数据区进行数据恢复;如果是平台开启事务,则调用平台恢复函数根据防拔保护区、标志页面区和备份栈区对数据区进行数据恢复;若发生掉电复位情况需要回滚时,检查标志页面区,若判定标志页面区中存在失效标志,则说明是由平台开启的事务,调用带有备份栈数据恢复的函数,对当前有效的防拔保护页恢复完成后,利用备份栈内的备份记录对数据一一进行回滚;若判定标志页面区中不存在失效标志,则说明是由应用开启的事务,通过调用应用私有的恢复函数,根据标记页面区记录的所有标志,回滚对应的防拔保护区中的数据。本申请实现的有益效果如下:采用本申请提供的掉电保护智能卡及其工作方法,可以使得智能卡在满足交易性能的情况下,又可以大幅度的节省空间。本申请采用内置两套掉电保护的方案:其一、备份记录加页面保护的方式,此方案主要作用在卡片个人化阶段,可以大幅度的压缩保护数据,以便节约出更多的资源空间。其二、纯页面的保护方式,此方案主要作用在发卡阶段,可以减少多余的内存操作从而提升了应用处理的性能。两种方案根据使用场景的不同可以智能切换,以便综合解决智能卡的性能和空间无法兼得的问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术中记载的一些实施本文档来自技高网...

【技术保护点】
1.一种掉电保护智能卡,其特征在于,所述智能卡包括微处理器和与所述微处理器连接的存储器;所述存储器包括数据区和数据保护区,数据保护区包括备份栈区、标志页面区和防拔保护区;/n所述微处理器,用于确定事务启动的来源为平台或应用;以及用于接收写数据指令,从写数据指令中获取需要更新的目标地址和待更新数据,根据所述目标地址确定数据区中待更新的目标数据页;以及用于在掉电重启后,若确定由平台启动事务,则根据备份栈区、标志页面区和防拔保护区进行回滚,若确定由应用启动事务,则根据标志页面区和防拔保护区进行回滚;/n所述防拔保护区,用于在平台或应用启动事务时,存储所述目标数据页的整页数据;/n所述标志页面区,用于在平台或应用启动事务时,记录防拔保护页面对应的有效标志和目标数据页地址;所述备份栈区,用于在平台启动事务时,将所述目标地址对应的原始数据以备份记录形式存储。/n

【技术特征摘要】
1.一种掉电保护智能卡,其特征在于,所述智能卡包括微处理器和与所述微处理器连接的存储器;所述存储器包括数据区和数据保护区,数据保护区包括备份栈区、标志页面区和防拔保护区;
所述微处理器,用于确定事务启动的来源为平台或应用;以及用于接收写数据指令,从写数据指令中获取需要更新的目标地址和待更新数据,根据所述目标地址确定数据区中待更新的目标数据页;以及用于在掉电重启后,若确定由平台启动事务,则根据备份栈区、标志页面区和防拔保护区进行回滚,若确定由应用启动事务,则根据标志页面区和防拔保护区进行回滚;
所述防拔保护区,用于在平台或应用启动事务时,存储所述目标数据页的整页数据;
所述标志页面区,用于在平台或应用启动事务时,记录防拔保护页面对应的有效标志和目标数据页地址;所述备份栈区,用于在平台启动事务时,将所述目标地址对应的原始数据以备份记录形式存储。


2.如权利要求1所述的掉电保护智能卡,其特征在于,所述微处理器还用于在智能卡上电后,将事务启动的来源初始化为平台启动;以及用于在智能卡工作过程中根据平台和应用的开启实时更新事务启动来源。


3.一种掉电保护智能卡的工作方法,其特征在于,包括:
当页保护函数被调用时:将待更新目标地址确定的目标数据页的整页数据存储至防拔保护区中,并在标志页面区标记对应的有效标志和目标数据页地址;
当备份函数被调用时:若判定由平台开启事务,则将待更新目标地址对应的原始数据按照备份记录形式逐条写入备份栈中,返回备份成功响应;若判定由应用开启事务,则备份函数不执行任何操作,直接退出;
当更新函数被调用时:若判定由应用开启事务,则根据待更新数据和目标数据页原始数据对目标数据页进行更新,返回更新成功响应;若判定由平台开启事务,则根据待更新数据和目标数据页原始数据对目标数据页进行更新,并擦除标志页面区对所述目标数据页的有效标志,返回更新成功响应;
当回滚函数被调用时:若判定由平台开启事务,则根据防拔保护区、标志页面区和备份栈区对数据区进行数据恢复;若判定由应用开启事务,则根据防拔保护区和标志页面区对数据区进行数据恢复。


4.如权利要求3所述的掉电保护智能卡的工作方法,其特征在于,根据智能卡中设置的事务开启标识确定事务由平台开启或由应用开启;在智能卡上电时设置所述事务开启标识为初始化状态,在智能卡工作过程中根据当前事务的启动来源更新所述事物开启标识。


5.如权利要求4所述的掉电保护智能卡的工...

【专利技术属性】
技术研发人员:董建桥杨华威
申请(专利权)人:江苏恒宝智能系统技术有限公司
类型:发明
国别省市:江苏;32

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

1