CN103366814B - 一种Flash数据安全保护电路和方法 - Google Patents

一种Flash数据安全保护电路和方法 Download PDF

Info

Publication number
CN103366814B
CN103366814B CN201210094256.4A CN201210094256A CN103366814B CN 103366814 B CN103366814 B CN 103366814B CN 201210094256 A CN201210094256 A CN 201210094256A CN 103366814 B CN103366814 B CN 103366814B
Authority
CN
China
Prior art keywords
write
pin
flash
control circuit
protect
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
Application number
CN201210094256.4A
Other languages
English (en)
Other versions
CN103366814A (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.)
Permanent Safe Technology Co Ltd Of Leading In Wuhan
Original Assignee
Comba Telecom Systems China 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 Comba Telecom Systems China Ltd filed Critical Comba Telecom Systems China Ltd
Priority to CN201210094256.4A priority Critical patent/CN103366814B/zh
Publication of CN103366814A publication Critical patent/CN103366814A/zh
Application granted granted Critical
Publication of CN103366814B publication Critical patent/CN103366814B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种Flash数据安全保护电路和方法,该电路包括处理器控制电路、与处理器控制电路相连的CPLD控制电路和与CPLD控制电路相连的Flash写保护接口电路,其中CPLD控制电路进一步包括IOA管脚、IOB管脚和REG BIT寄存器,IOA管脚、IOB管脚和REG BIT寄存器的逻辑关系是IOA=(IOB+REG BIT),所述Flash写保护接口电路进一步包括写保护控制管脚,所述IOA管脚与所述Flash写保护接口电路连接,用于向所述Flash写保护接口电路的写保护控制管脚输出电平。本发明保障了Flash存储数据的安全性,应用程序也可以方便对Flash进行写锁定和解除写锁定操作。

Description

一种Flash数据安全保护电路和方法
技术领域
本发明涉及信息安全技术领域,尤其涉及一种Flash数据安全保护电路和方法。
背景技术
目前在嵌入式系统应用中,Flash是必不可少的一种设备,例如在嵌入式Linux应用中,它是Boot Loader、Linux内核和文件系统的最佳载体。现在应用中主要存在两种主要的Flash类型,一种是NOR Flash,另外一种是NANDFlash。NOR Flash技术是Intel于1988年提出,用于替代当时在市场上占据主要地位的EPROM和EEPROM。紧接着Toshiba发表了NAND Flash结构,强调降低每比特的成本,有更高的性能,并且像磁盘一样可以通过接口轻松升级。
NOR Flash的特点是芯片内执行(XIP,eXecute In Place),这样应用程序可以直接在Flash闪存内运行,不必再把代码读到系统RAM中。NOR Flash的传输效率很高,在1-4MB的小容量时具有很高的成本效益,但是其很低的写入和擦除速度大大影响到它的性能。
NAND Flash的结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。
目前嵌入式Linux系统对NOR Flash和NAND Flash的软件支持都非常的成熟。
在嵌入式应用中,Flash是重要的数据存储载体,嵌入式操作系统、各种可执行的应用软件和关键数据都存储在Flash中。数据在存储过程中往往会按照某种存储序列要求,将Flash划分为不同的分区,用于存储不同类型的数据。Flash中某些关键分区在写入数据后,就不再需要进行改动,而这些分区存储的数据往往是应用系统的核心数据所在,例如在嵌入式Linux应用中,在Flash中划分了Boot Loader、Linux内核、根文件系统、用户文件系统等分区,而在应用过程中Boot Loader、Linux内核和根文件系统分区写入数据后都不涉及到改动。而在嵌入式系统应用中Flash关键分区数据的损害往往会导致系统运行异常,例如操作系统数据的破坏,将直接导致系统无法运行,对于系统应用来说这样的结果将是致命性的。
发明内容
本发明实施例提供一种Flash数据安全保护电路和方法,用以解决在系统启动、复位及运行过程中Flash数据被恶意修改和非法访问的问题。
本发明电路包括处理器控制电路、与处理器控制电路相连的CPLD控制电路、分别与CPLD控制电路和处理器控制电路相连的Flash写保护接口电路,其中CPLD控制电路进一步包括IOA管脚、IOB管脚和REG_BIT寄存器,IOA管脚、IOB管脚和REG BIT寄存器的逻辑关系是IOA=(IOB+REG BIT),所述Flash写保护接口电路进一步包括写保护控制管脚,所述IOA管脚与所述Flash写保护接口电路连接,用于向所述Flash写保护接口电路的写保护控制管脚输出电平。
优选地,还包括跳线帽,IOB管脚与跳线帽连接。
本发明的方法,在系统启动流程中包括以下步骤:
系统上电启动;
CPLD控制电路检测IOB管脚输入电平;
如果IOB管脚输入高电平,则IOA管脚输出高电平给Flash写保护接口电路的写保护控制管脚,解除对Flash芯片的写锁定,系统启动流程结束;
如果IOB管脚输入低电平,则CPLD控制电路检测REG BIT寄存器;
如果REG BIT寄存器的值为1,则IOA管脚输出高电平给Flash写保护接口电路的写保护控制管脚,解除对Flash芯片的写锁定,系统启动流程结束;
如果REG BIT寄存器的值为0,则IOA管脚输出低电平,对Flash芯片进行写锁定;
设置REG BIT寄存器的值为0,或者设置IOB管脚输入低电平,对Flash芯片进行写锁定。
优选地,在应用程序运行流程中还包括以下步骤:
运行应用程序;
应用程序访问CPLD控制电路,在CPLD控制电路的REG BIT寄存器写入值为1;
CPLD控制电路的IOA管脚输出高电平给Flash写保护接口电路的写保护控制管脚,解除对Flash芯片的写锁定;
应用程序访问Flash芯片内部的保护寄存器,写入对应的控制字命令,对Flash芯片内部指定的分区进行锁定。
优选地,Flash芯片内部指定的分区包括Boot Loader、Linux Kernel和/或根文件系统分区。
优选地,在系统复位流程中还包括以下步骤:
系统准备执行复位操作;
应用程序访问CPLD控制电路,在CPLD控制电路的REG BIT寄存器写入值为0;
CPLD控制电路的IOA管脚输出低电平给Flash写保护接口电路的写保护控制管脚,对Flash芯片进行写锁定;
应用程序执行复位操作。
优选地,还包括以下步骤:
如果与IOB管脚连接的跳线帽接上,则IOB管脚输入高电平;
设置与IOB管脚连接的跳线帽接上,解除对Flash芯片的写锁定,对Flash芯片进行烧写和/或升级数据操作。
本发明有益效果如下:
1、在系统运行状态未稳定时通过外部电路直接对Flash进行写入锁定,禁止在这一时刻对Flash的写入操作,避免在系统不稳定状态下对Flash的写入操作。
2、针对NOR Flash提出了一种对特定分区进行锁定的方案,用于在系统正常运行时通过控制Flash的保护寄存器,直接对Flash指定分区所包含的扇区sector进行锁定,保证了Flash关键数据扇区sector被锁定不允许被非法改写。
3、可以在需要进行Flash数据烧写和升级时,通过增加跳线帽的方式解除对Flash的写入锁定;同时也可以在运行阶段,根据需要通过控制外部电路解除对Flash的写入锁定,具有高度的灵活性和可操作性。
附图说明
图1为本发明具体实施方式一中的Flash数据安全保护电路框图;
图2为本发明具体实施方式二在系统启动流程中Flash数据安全保护流程图;
图3为本发明具体实施方式二在应用程序运行流程中Flash数据安全保护流程图;
图4为本发明具体实施方式二在系统复位流程中Flash数据安全保护流程图。
具体实施方式
图1为本发明具体实施方式一中的Flash数据安全保护电路框图。如图1所示,该电路包括处理器控制电路、与处理器控制电路相连的CPLD控制电路、分别与CPLD控制电路和处理器控制电路相连的Flash写保护接口电路。其中CPLD控制电路进一步包括IOA管脚、IOB管脚和REG BIT寄存器,Flash写保护接口电路进一步包括写保护控制管脚。
IOA管脚、IOB管脚和REG BIT寄存器的逻辑关系是IOA=(IOB+REG BIT),IOA管脚与Flash写保护接口电路连接,用于向Flash写保护接口电路的写保护控制管脚输出电平,IOB管脚与跳线帽连接。
当IOB所接电路的跳线帽接上时,IOB管脚输入高电平,IOA管脚会输出一个高电平,处于这种状态下的Flash芯片会解除锁定,此时可以对Flash芯片进行烧写、升级数据等操作,Flash芯片的写操作权限是完全开放的。在平时系统正常运行阶段,是不需要接跳线帽的,应用程序可以通过访问和控制CPLD控制电路的REG BIT寄存器状态,实时的调整Flash芯片的写保护状态,具有高度的灵活性和可操作性。
下面分为三个阶段来描述如何实现Flash数据安全保护的。
图2为本发明具体实施方式二在系统启动流程中Flash数据安全保护流程图。如图2所示,包括以下步骤:
步骤201、系统上电启动。
步骤202、CPLD控制电路检测IOB管脚输入是否为低电平,如果IOB管脚输入低电平,则转至步骤203;如果IOB管脚输入高电平,则转至步骤205。
步骤203、CPLD控制电路检测REG BIT寄存器的值是否为0,如果REG BIT寄存器的值为0,则转至步骤204;如果REG BIT寄存器的值为1,则转至步骤205。
步骤204、IOA管脚输出低电平,对Flash芯片进行写锁定,流程结束。
步骤205、IOA管脚输出高电平给Flash写保护接口电路的写保护控制管脚,解除对Flash芯片的写锁定,系统启动流程结束。
由于在系统启动流程中,默认设置REG BIT寄存器的值为0,并且设置IOB管脚输入低电平,同时没有接上跳线帽,则对Flash芯片进行了写锁定,保证了Flash在启动过程中禁止写入操作。
图3为本发明具体实施方式二在应用程序运行流程中Flash数据安全保护流程图。如图3所示,包括以下步骤:
步骤301、运行应用程序。
步骤302、应用程序访问CPLD控制电路,在CPLD控制电路的REG BIT寄存器写入值为1。
步骤303、CPLD控制电路的IOA管脚输出高电平给Flash写保护接口电路的写保护控制管脚,解除对Flash芯片的写锁定。
步骤304、应用程序访问Flash芯片内部的保护寄存器,写入对应的控制字命令,对Flash芯片内部指定的分区所包含的扇区sector进行锁定,使得Flash关键数据分区被锁定不允许被非法改写,例如Flash芯片内部指定的分区BootLoader、Linux Kernel和/或根文件系统分区。
在应用程序开始运行时,可以通过对CPLD控制电路的REG BIT寄存器写入数值1来解除对Flash芯片的写保护,具有高度的操作灵活性。同时应用程序还将访问Flash芯片内部的保护寄存器,通过写入特定的控制字,对Flash芯片内部指定的分区所包含的扇区sector进行锁定,使得Flash关键数据所在的特定分区被锁定不允许非法写入。在嵌入式系统应用中,有些特定分区例如Boot Loader、Linux Kernel、根文件系统分区,在系统运行过程中都可以不再需要进行写入,因此可以对这些分区所包含的扇区sector进行锁定,可以提高Flash分区数据的安全性。
图4为本发明具体实施方式二在系统复位流程中Flash数据安全保护流程图。如图4所示,包括以下步骤:
步骤401、系统准备执行复位操作。
步骤402、应用程序访问CPLD控制电路,在CPLD控制电路的REG BIT寄存器写入值为0。
步骤403、CPLD控制电路的IOA管脚输出低电平给Flash写保护接口电路的写保护控制管脚,对Flash芯片进行写锁定。
步骤404、应用程序执行复位操作。
采用上述技术方案,可以在启动和复位过程中通过外围硬件电路直接锁定Flash的写访问权限,避免启动和复位操作中对Flash的非法写操作。同时在系统启动完成进入稳定状态后,才通过控制外部硬件电路放开Flash芯片写访问权限,提高了Flash芯片访问的安全性。而且还将针对NOR Flash,在系统启动完成后对Flash指定分区所包含的扇区sector进行锁定,通过访问NOR Flash内部的保护寄存器,写入相应控制命令可以实现对Flash指定分区的保护,此时受保护的分区主要是用于存储那些写入数据以后就不再需要改变的分区。将保护分区直接在Flash芯片内部寄存器级别进行锁定,可以有效阻止在系统应用过程中各种非法指令、非法操作对Flash指定分区数据的破坏,提高了Flash数据存储的安全性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (7)

1.一种Flash数据安全保护电路,其特征在于,包括处理器控制电路、与处理器控制电路相连的CPLD控制电路、分别与CPLD控制电路和处理器控制电路相连的Flash写保护接口电路,其中CPLD控制电路进一步包括IOA管脚、IOB管脚和REG BIT寄存器,IOA管脚、IOB管脚和REG BIT寄存器的逻辑关系是IOA=(IOB+REG BIT),所述Flash写保护接口电路进一步包括写保护控制管脚,所述IOA管脚与所述Flash写保护接口电路连接,用于向所述Flash写保护接口电路的写保护控制管脚输出电平。
2.如权利要求1所述的电路,其特征在于,还包括跳线帽,IOB管脚与跳线帽连接。
3.一种Flash数据安全保护方法,其特征在于,在系统启动流程中包括以下步骤:
系统上电启动;
CPLD控制电路检测IOB管脚输入电平;
如果IOB管脚输入高电平,则IOA管脚输出高电平给Flash写保护接口电路的写保护控制管脚,解除对Flash芯片的写锁定,系统启动流程结束;
如果IOB管脚输入低电平,则CPLD控制电路检测REG BIT寄存器;
如果REG BIT寄存器的值为1,则IOA管脚输出高电平给Flash写保护接口电路的写保护控制管脚,解除对Flash芯片的写锁定,系统启动流程结束;
如果REG BIT寄存器的值为0,则IOA管脚输出低电平,对Flash芯片进行写锁定;
设置REG BIT寄存器的值为0,或者设置IOB管脚输入低电平,对Flash芯片进行写锁定。
4.如权利要求3所述的方法,其特征在于,在应用程序运行流程中还包括以下步骤:
运行应用程序;
应用程序访问CPLD控制电路,在CPLD控制电路的REG BIT寄存器写入值为1;
CPLD控制电路的IOA管脚输出高电平给Flash写保护接口电路的写保护控制管脚,解除对Flash芯片的写锁定;
应用程序访问Flash芯片内部的保护寄存器,写入对应的控制字命令,对Flash芯片内部指定的分区进行锁定。
5.如权利要求4所述的方法,其特征在于,Flash芯片内部指定的分区包括Boot Loader、Linux Kernel和/或根文件系统分区。
6.如权利要求3或者4所述的方法,其特征在于,在系统复位流程中还包括以下步骤:
系统准备执行复位操作;
应用程序访问CPLD控制电路,在CPLD控制电路的REG BIT寄存器写入值为0;
CPLD控制电路的IOA管脚输出低电平给Flash写保护接口电路的写保护控制管脚,对Flash芯片进行写锁定;
应用程序执行复位操作。
7.如权利要求6所述的方法,其特征在于,还包括以下步骤:
如果与IOB管脚连接的跳线帽接上,则IOB管脚输入高电平;
设置与IOB管脚连接的跳线帽接上,解除对Flash芯片的写锁定,对Flash芯片进行烧写和/或升级数据操作。
CN201210094256.4A 2012-03-31 2012-03-31 一种Flash数据安全保护电路和方法 Active CN103366814B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210094256.4A CN103366814B (zh) 2012-03-31 2012-03-31 一种Flash数据安全保护电路和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210094256.4A CN103366814B (zh) 2012-03-31 2012-03-31 一种Flash数据安全保护电路和方法

Publications (2)

Publication Number Publication Date
CN103366814A CN103366814A (zh) 2013-10-23
CN103366814B true CN103366814B (zh) 2016-09-28

Family

ID=49367980

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210094256.4A Active CN103366814B (zh) 2012-03-31 2012-03-31 一种Flash数据安全保护电路和方法

Country Status (1)

Country Link
CN (1) CN103366814B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105637521B (zh) * 2014-06-30 2020-02-14 华为技术有限公司 一种数据处理方法及智能终端
CN104331674B (zh) * 2014-11-20 2018-06-19 惠州Tcl移动通信有限公司 一种防止nfc芯片寄存器被篡改的方法及系统
CN104484290B (zh) * 2014-12-19 2018-09-28 上海斐讯数据通信技术有限公司 Flash的操作方法及Flash的操作装置
CN104820624B (zh) * 2015-05-21 2018-08-10 南车株洲电力机车研究所有限公司 一种NOR Flash保护电路
CN106463157A (zh) * 2016-06-15 2017-02-22 深圳市锐明技术股份有限公司 一种存储器的电磁干扰保护电路及车载电子设备
CN106293524B (zh) * 2016-08-02 2019-05-24 浙江昱能科技有限公司 一种数据存储的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1490817A (zh) * 2002-10-14 2004-04-21 华为技术有限公司 一种引导程序存储装置及其保障在线升级的方法
CN101178661A (zh) * 2007-12-14 2008-05-14 华为技术有限公司 Flash集成bootrom的实现方法和装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1088218C (zh) * 1999-11-14 2002-07-24 邓国顺 用于数据处理系统的快闪电子式外存储方法及其装置
US7072211B2 (en) * 2004-05-19 2006-07-04 L-3 Integrated Systems Company Systems and methods for write protection of non-volatile memory devices
CN2783655Y (zh) * 2005-01-18 2006-05-24 深圳市彪骐数码科技有限公司 具有写保护功能的数字视频接收机顶盒存储器电路

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1490817A (zh) * 2002-10-14 2004-04-21 华为技术有限公司 一种引导程序存储装置及其保障在线升级的方法
CN101178661A (zh) * 2007-12-14 2008-05-14 华为技术有限公司 Flash集成bootrom的实现方法和装置

Also Published As

Publication number Publication date
CN103366814A (zh) 2013-10-23

Similar Documents

Publication Publication Date Title
CN103366814B (zh) 一种Flash数据安全保护电路和方法
JP6306578B2 (ja) メモリ保護装置及び保護方法
US9760503B2 (en) Operation method of memory controller and nonvolatile memory system including the memory controller
US6976136B2 (en) Flash memory protection scheme for secured shared BIOS implementation in personal computers with an embedded controller
US8161258B2 (en) Method to qualify access to a block storage device via augmentation of the device'S controller and firmware flow
EP2263187B1 (en) Peripheral device locking mechanism
EP3097489B1 (en) Byte-addressable non-volatile read-write main memory partitioned into regions including metadata region
US20170371573A1 (en) Method of operating storage medium, method of operating host controlling the storage medium, and method of operating user system including the storage medium and the host
US9015437B2 (en) Extensible hardware device configuration using memory
CN111523155B (zh) 解锁在安全数字操作模式下锁定的安全数字存储器设备的方法
US20140095822A1 (en) Secure removable mass storage devices
US20060085629A1 (en) Mapping a reset vector
WO2020063975A1 (zh) 一种非易失性存储器的分区保护方法及装置
CN105637521A (zh) 一种数据处理方法及智能终端
US20100115004A1 (en) Backup system that stores boot data file of embedded system in different strorage sections and method thereof
CN105718208A (zh) Flash程序存储器保护设计方法与硬件实现装置
TWI522839B (zh) 多傳輸介面儲存裝置、多重資料保護等級及其相關方法
CN110647764B (zh) 针对用户态非易失性内存文件系统的保护方法及系统
KR102145358B1 (ko) 변경된 운영체제 환경에서 디스크의 데이터 무결성을 보호하는 방법 및 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체
TW202127435A (zh) 電腦裝置及基於信任鏈的權限管理方法
US11429312B1 (en) Multiplexed storage accesses
EP3961451B1 (en) Storage device
CN109344089B (zh) 一种操作norflash的方法及装置
US20130151832A1 (en) Flash memory storage system and data protection method thereof
KR20240022969A (ko) 동적으로 스택 카나리를 업데이트하는 방법 및 시스템

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190228

Address after: 430000 Three Floors of Building 4, Guannan Industrial Park, 42 Guanggu Road, Donghu New Technology Development Zone, Wuhan, Hubei Province

Patentee after: The permanent safe technology Co., Ltd of leading in Wuhan

Address before: 510663 No. 10 Shenzhou Road, Guangzhou Science City, Guangdong Province

Patentee before: Comba Telecom System (China) Co., Ltd.