CN112181728B - 一种高安全性cpu智能卡芯片数据防掉电处理方法 - Google Patents
一种高安全性cpu智能卡芯片数据防掉电处理方法 Download PDFInfo
- Publication number
- CN112181728B CN112181728B CN202011057949.7A CN202011057949A CN112181728B CN 112181728 B CN112181728 B CN 112181728B CN 202011057949 A CN202011057949 A CN 202011057949A CN 112181728 B CN112181728 B CN 112181728B
- Authority
- CN
- China
- Prior art keywords
- data
- backup
- ram
- nvm
- area
- 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.)
- Active
Links
- 230000002265 prevention Effects 0.000 title claims abstract description 14
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 35
- 230000015654 memory Effects 0.000 claims description 23
- 235000005282 vitamin D3 Nutrition 0.000 claims description 8
- 239000011647 vitamin D3 Substances 0.000 claims description 8
- 238000000889 atomisation Methods 0.000 abstract description 2
- 238000011084 recovery Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 1
- 231100000279 safety data Toxicity 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明涉及一种高安全性CPU智能卡芯片数据防掉电处理方法,包括数据写入流程、数据读取流程以及数据原子操作流程;本发明使用多级备份以及多Page数据备份的方式,本发明将CPU智能卡数据的安全完整存储、防掉电以及多数据原子化操作统一为完整功能模块,使用简单,效率高,数据安全性以及可靠性能够得到充分保障。
Description
技术领域
本发明属于CPU智能卡嵌入式软件领域,具体涉及一种高安全性CPU智能卡芯片数据防掉电处理方法。
背景技术
CPU智能卡属于无源可移动设备,在工作时需要在智能卡终端获取能量,容易存在工作时突然掉电情况。
由于智能卡芯片在工作时需要花费一定的时间操作非易失性存储器(以下称为NVM),如果在该过程中突然失去能量,会造成操作数据处于不可控状态,对于高安全性芯片,因为存储器安全机制的存在,将造成存储器不可用;对于FLASH存储器,由于其特定存储器操作方式,即页(Page)擦页(Page)写方式,会造成数据丢失且不可恢复。
另外,智能卡的很多应用场景下需要将多次存储器的操作“原子化”,所谓原子操作,即:多组NVM数据操作需要全部执行完成或全部不执行,不能存在部分执行的情况。例如:电子钱包的一次消费过程,需要更新的信息包括但不限于:余额信息、交易记录信息、交易其他信息,任何突然掉电的状况下,都要求全部的信息原子性操作全部完成或操作完全不执行,不能存在部分执行情况,例如:余额已更新,但是其他信息未更新的情况。
基于以上情况,在设计开发CPU智能卡嵌入式软件时,需要一种高效率、高可靠性、高安全性的数据防掉电方法,确保在任何突发的掉电情况下的数据完整性以及确保多组NVM数据操作的原子化操作。
发明内容
本发明旨在提供CPU智能卡嵌入式软件系统可实现的高效率、高可靠性、高安全性的数据防掉电以及数据原子操作方法,确保智能卡在任何突发掉电情况下的数据完整性。
为解决上述问题,本发明采取的技术方案为:一种高安全性CPU智能卡芯片数据防掉电处理方法,包括数据写入流程、数据读取流程以及数据原子操作流程;
数据写入流程具体为:
1.1使用数据update操作,将需要写入的数据存储到RAM中;
1.2使用数据submit操作,将需要写入的数据存储到备份用存储器中;
1.3使用数据restore操作,将需要写入的数据存储于目标存储器中;所有在submit操作完成之前掉电的情况下,均视为无效数据,其他情况下发生的掉电,均在再次上电时,进行数据恢复,保证数据的完整性以及有效性。
数据读取流程具体为:
2.1在RAM备份区寻找数据,若找到则读取RAM备份数据,若否则进入2.2;
2.2在备份用存储器中寻找数据,若找到则进行读取备份用存储器中备份数据,若否则进入2.3;
2.3读取最原始存储区数据即normal数据区中的数据;数据从新到旧的存放顺序为:RAM->备份NVM->Normal NVM
读取最原始存储区数据;
数据原子操作流程具体为:多数据操作时,每一步的操作数据均先使用数据update操作将数据存储到RAM,数据在submit操作过程中,全部写入备份NVM,并设置数据可靠标志,最后将备份数据写入到目标存储器。
本发明使用多级备份以及多Page数据备份的方式,本发明将CPU智能卡数据的安全完整存储、防掉电以及多数据原子化操作统一为完整功能模块,使用简单,效率高,数据安全性以及可靠性能够得到充分保障。
附图说明
图1为数据update操作流程图;
图2为数据submit操作流程图;
图3为数据restore操作流程图;
图4为在NVM中数据读取流程图。
具体实施方式
一种高安全性CPU智能卡芯片数据防掉电处理方法,包括数据写入流程、数据读取流程以及数据原子操作流程;数据写入流程具体为:
1.1使用数据update操作,将需要写入的数据存储到RAM中;
1.2使用数据submit操作,将需要写入的数据存储到备份用存储器中;
1.3使用数据restore操作,将需要写入的数据存储于目标存储器中;
所有在submit操作完成之前掉电的情况下,均视为无效数据,其他情况下发生的掉电,均在再次上电时,进行数据恢复,保证数据的完整性以及有效性。
数据读取流程具体为:
2.1在RAM备份区寻找数据,若找到则读取RAM备份数据,若否则进入2.2;
2.2在备份用存储器中寻找数据,若找到则进行读取备份用存储器中备份数据,若否则进入2.3;
2.3读取最原始存储区数据即normal数据区中的数据;
数据原子操作流程具体为:多数据操作时,每一步的操作数据均先使用数据update操作将数据存储到RAM或备份NVM用存储器中,数据在submit操作过程中,全部写入备份NVM,并设置数据可靠标志,最后将备份数据写入到目标存储器。
如图1所示,所述的数据update操作具体为:
1.11计算数据所属的页,判断是否在RAM中有备份,若有则转至1.15,若无则转至1.12;
1.12判断有无可用的备份页,若有,申请新RAM页并转至1.14,若无则转至1.13;
1.13检查是否有可写NVM备份页,若有,将最老的页存储到NVM备份区,占用其RAM页,并转至1.14,若无则转至1.16;
1.14判断是否在NVM备份区中有备份NVM,若是,则读取备份NVM到RAM页,并转至1.15,若否,则读取原始数据到RAM页,并转至1.15;
1.15更新RAM备份区,结束数据update操作;
1.16报错,退出数据update操作。
如图2所示,所述的数据submit操作具体为:
1.21将RAM中备份的数据内容写入NVM备份区的数据区中;
1.22将RAM中的备份标识信息写入NVM备份区的备份标识区中;
1.23将备份状态信息写入NVM备份区的状态区中;
1.24清除RAM中的备份标识信息。
如图3所示,所述的数据restore操作具体为:
1.31检查备份的状态信息是否满足,若满足,转至1.32;若不满足转至1.33;
1.32根据备份信息,将备份页写入目的页;
1.33清除备份区域信息。
如图4所示,在NVM中数据读取流程具体为:首先判断备份RAM中是否有页数据,若有,则读取RAM备份数据;若无,则判断备份NVM中是否有页数据,若有,则读取NVM备份数据,若无,则读取原始NVM数据。
数据完整性保证办法:操作NVM时,首先使用update流程,先读取原始NVM数据到RAM备份的Page中,然后使用新的数据,更新备份RAM数据,保证原始数据的完整性以及新的数据的有效性,然后使用submit过程,将经过更新的数据存放于备份NVM中,最后使用restore过程,将经过完整性以及有效性保证的数据写入目标FLASH区域。如果CPU智能卡在上述过程中发生掉电情况,所有sumbit操作提交前的数据,均不会对最终目标区数据造成影响,submit后的数据,将会在下一次上电过程中,使用restore操作恢复到目标区,能够保证数据的有效性。改过程能够有效的保证数据在写入NVM操作时,数据目标区数据不会应为掉电发生非预期更改。
数据原子性操作办法:在多次操作NVM时,每一次的操作均使用update流程,该发明设置多个备份RAM以及备份NVM区域,多次NVM操作均在update时被记录到RAM,在全部的NVM进行update操作之后,使用submit操作,将备份RAM中的数据以及数据有效性标志进行提交,然后使用restore操作,将所有提交的有效数据恢复到目标NVM区域中。在数据submit之前,所有的update操作均不会对目标数据造成影响,如果此时发生掉电,目标区数据不会改变,再次上电时,系统清除备份区状态信息;数据在submit之后,如果发生掉电,再次上电时,系统根据数据有效性标志以及数据信息,恢复备份NVM数据到最终目标区域,保证了数据更新的有效性。
数据高效管理办法:数据进行更新操作时,如果一次流程中,有多次操作同一NVM目标区的操作时,由于备份机制的存在,多次操作每次只需要更新RAM数据即可,不需要更新目标NVM,由于更新RAM的时间远远小于更新NVM的时间,该操作能够提升数据更新的效率。
高安全性数据保证办法:如果在目标区操作时发生掉电操作数据不完整、非安全状态时,由于备份机制的存在,系统在上电时,能够使用备份的数据对非安全数据进行恢复操作,确保目标区域数据的完整性以及安全性。
Claims (4)
1.一种高安全性CPU智能卡芯片数据防掉电处理方法,其特征在于:包括数据写入流程、数据读取流程以及数据原子操作流程;
数据写入流程具体为:
1.1使用数据update操作,将需要写入的数据存储到RAM中;
1.2使用数据submit操作,将需要写入的数据存储到备份用存储器中;
1.3使用数据restore操作,将需要写入的数据存储于目标存储器中;
数据读取流程具体为:
2.1在RAM备份区寻找数据,若找到则读取RAM备份数据,若否则进入2.2;
2.2在备份用存储器中寻找数据,若找到,则读取备份用存储器中备份数据,若否则进入2.3;
2.3读取最原始存储区数据即normal数据区中的数据;
数据原子操作流程具体为:多数据操作时,每一步的操作数据均先使用数据update操作将数据存储到RAM,数据在submit操作过程中,全部写入备份用存储器,并设置数据可靠标志,最后将备份数据写入到目标存储器;
所述的数据update操作具体为:
1.11计算数据所属的页,判断是否在RAM中有备份,若有则转至1.15,若无则转至1.12;
1.12判断有无可用的备份页,若有,申请新RAM页并转至1.14,若无则转至1.13;
1.13检查是否有可写备份NVM页,若有,将最老的页存储到备份NVM区,占用其RAM页,并转至1.14,若无则转至1.16;
1.14判断是否在备份NVM区中有备份NVM,若是,则读取备份NVM到RAM页,并转至1.15,若否,则读取原始数据到RAM页,并转至1.15;
1.15更新RAM备份区,结束数据update操作;
1.16报错,退出数据update操作。
2.根据权利要求1所述的高安全性CPU智能卡芯片数据防掉电处理方法,其特征在于:所述的数据submit操作具体为:
1.21将RAM中备份的数据内容写入NVM备份区的数据区中;
1.22将RAM中的备份标识信息写入NVM备份区的备份标识区中;
1.23将备份状态信息写入NVM备份区的状态区中;
1.24清除RAM中的备份标识信息。
3.根据权利要求1所述的高安全性CPU智能卡芯片数据防掉电处理方法,其特征在于:所述的数据restore操作具体为:
1.31检查备份的状态信息是否满足,若满足,转至1.32;若不满足转至1.33;
1.32根据备份信息,将备份页写入目的页;
1.33清除NVM备份区状态信息。
4.根据权利要求1所述的高安全性CPU智能卡芯片数据防掉电处理方法,其特征在于:在NVM中数据读取流程具体为:首先判断备份RAM中是否有页数据,若有,则读取RAM备份数据;若无,则判断备份NVM中是否有页数据,若有,则读取NVM备份数据,若无,则读取原始NVM数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011057949.7A CN112181728B (zh) | 2020-09-29 | 2020-09-29 | 一种高安全性cpu智能卡芯片数据防掉电处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011057949.7A CN112181728B (zh) | 2020-09-29 | 2020-09-29 | 一种高安全性cpu智能卡芯片数据防掉电处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112181728A CN112181728A (zh) | 2021-01-05 |
CN112181728B true CN112181728B (zh) | 2022-07-22 |
Family
ID=73945540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011057949.7A Active CN112181728B (zh) | 2020-09-29 | 2020-09-29 | 一种高安全性cpu智能卡芯片数据防掉电处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112181728B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729972A (zh) * | 2017-09-01 | 2018-02-23 | 捷德(中国)信息科技有限公司 | 一种智能ic卡的数据保护方法 |
CN110427285A (zh) * | 2019-08-06 | 2019-11-08 | 北京中电华大电子设计有限责任公司 | 一种高性能的智能卡镜像保护方法和数据结构 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03132891A (ja) * | 1989-10-19 | 1991-06-06 | Fuji Electric Co Ltd | 停電保障機能付カードリーダ・ライタ |
CN101656106B (zh) * | 2009-08-27 | 2012-07-25 | 北京握奇数据系统有限公司 | 一种向eeprom写入数据的方法及装置 |
CN102609332A (zh) * | 2011-01-19 | 2012-07-25 | 上海华虹集成电路有限责任公司 | 智能ic卡数据防掉电保护方法 |
CN103914407B (zh) * | 2012-12-30 | 2016-09-14 | 航天信息股份有限公司 | 一种sd卡掉电保护、恢复方法以及带有掉电保护的sd卡 |
CN103996412A (zh) * | 2013-02-19 | 2014-08-20 | 北京同方微电子有限公司 | 一种用于智能卡非易失性存储器的掉电保护方法 |
-
2020
- 2020-09-29 CN CN202011057949.7A patent/CN112181728B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729972A (zh) * | 2017-09-01 | 2018-02-23 | 捷德(中国)信息科技有限公司 | 一种智能ic卡的数据保护方法 |
CN110427285A (zh) * | 2019-08-06 | 2019-11-08 | 北京中电华大电子设计有限责任公司 | 一种高性能的智能卡镜像保护方法和数据结构 |
Also Published As
Publication number | Publication date |
---|---|
CN112181728A (zh) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6535997B1 (en) | Data integrity in smartcard transactions | |
CN102043727B (zh) | 恢复固态硬盘映射表的方法及其装置 | |
CN100576243C (zh) | 智能卡的数据写入方法 | |
EP1208434B1 (en) | Arrangements storing different versions of a set of data in separate memory areas and method for updating a set of data in a memory | |
CN102567146B (zh) | 一种实现日志备份的方法及其装置、智能卡 | |
CN101944386B (zh) | 识别闪速存储器中错误数据的控制电路及存储系统与方法 | |
CN112632643B (zh) | 防止闪存数据丢失的方法、固态硬盘控制器、固态硬盘 | |
CN106227680A (zh) | 一种数据处理及防掉电数据保护方法 | |
CN101251826A (zh) | 闪速存储器、用于闪速存储器的数据管理方法及设备 | |
PL173398B1 (pl) | Sposób zapisu danych do pamięci nieulotnej w urządzeniu stanowiącym układ scalony oraz urządzenie stanowiące układ scalony | |
CN102541690B (zh) | 一种智能卡及其恢复数据方法 | |
CN109947594B (zh) | 一种数据备份方法及装置、数据恢复方法及装置 | |
CN104899114A (zh) | 一种固态硬盘上的连续时间数据保护方法 | |
CN103135735A (zh) | 一种掉电保护的控制方法及系统 | |
CN100454269C (zh) | 基本输入输出系统自动修复方法及系统 | |
CN112181728B (zh) | 一种高安全性cpu智能卡芯片数据防掉电处理方法 | |
CN103064800A (zh) | 一种掉电保护系统及其实现方法 | |
CN109426582A (zh) | 用于存储装置为错误处置进行数据处理的方法及控制器 | |
CN111984462B (zh) | 无预警断电复原管理方法、记忆装置、控制器及电子装置 | |
CN103744746B (zh) | 一种基于索引的智能卡记录备份与恢复方法 | |
CN111427726B (zh) | Ic卡及其防掉电数据备份方法或数据恢复方法 | |
KR102680511B1 (ko) | 데이터 저장 장치 및 그 동작 방법 | |
CN111581024A (zh) | Ssd日志的动态备份恢复方法、装置和计算机设备 | |
US20070274302A1 (en) | Data Storage Device, Memory Managing Method, and Program | |
CN110134322B (zh) | 运用dram的储存装置及其相关数据处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A High Security CPU Smart Card Chip Data Anti Power Loss Processing Method Granted publication date: 20220722 Pledgee: Huaxia Bank Co.,Ltd. Jinan Branch Pledgor: SHANDONG HUAYI MICRO-ELECTRONICS Co.,Ltd. Registration number: Y2024980024862 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right |