专利名称:一种用于提高移动存储设备中数据安全的方法
技术领域:
本发明涉及移动存储设备领域,具体涉及一种用于提高移动存储设备中数据安全的方法。
背景技术:
SD闪存卡在使用过程中往往会有一些重要的数据或者私人的资料不希望被他人访问,一般会通过密码验证、数据加密或者将文件/文件隐藏起来等方法实现。其中密码验证和隐藏文件/文件夹的方法安全性不高,数据加密实现过程相对比较复杂。但现实中,有些设备现有的加密方式无法适用,例如数码相机的操作一般都是通过菜单实现的,没有数字和字母的输入键,不能方便的输入密码,因此不宜采用Pin码验证的方式保护SD卡;而数码相机中的菜单操作可以很方便的实现文件操作,包括创建和删除文件,因此使用删除文件操作作为打开隐藏分区的方法,操作简单。
发明内容
本发明目的是提供一种用于提高移动存储设备中数据安全的方法,此方法解决了相机等设备加密困难的问题,且该加密方式提高了其数据安全性。为达到上述目的,本发明采用的技术方案是
一种用于提高移动存储设备中数据安全的方法,包括以下步骤 步骤一、将存储设备的存储空间分为至少两个分区,所述分区包括显性分区和隐性分区;并将所述分区的分区号、分区起始扇区地址和分区容量信息写入存储设备的固件中;
步骤二、在所述存储设备中固件存储单元设置分区跳转标志位和指定文件信息;所述分区跳转标志位默认值为所述显性分区的分区号,所述指定文件信息与所述一个隐藏分区关联;
步骤三、将主引导记录,DOS引导记录,目录项信息依次写入所述各个分区起始扇区的开始地址内;
步骤四、初始化时,根据所述分区跳转标志位内分区号加载所述显性分区的信息,获取显性分区的主引导记录,DOS引导记录和目录项信息,从而在枚举后显示显性分区,并在此显性分区的所述目录项信息中查找是否存在所述指定文件信息;
步骤五、如果存在所述指定文件信息,则记录下此指定文件信息目录项所在的扇区和偏移地址;否则,在所述显性分区中创建所述指定文件信息并重新上电初始化,从而查到所述指定文件名,并记录下此指定文件名目录项所在的扇区和偏移地址;
步骤六、当固件检测到有删除所述指定文件信息的操作发生时,即向存储空间中所述偏移地址处的第一个字节标记为0xE5 ;
步骤七、当发现将目标文件的目录项信息的第一个字节标记为0xE5,则将分区跳转标志位置为所述指定文件信息关联分区的分区号;
步骤八、所述存储设备再次初始化,并根据所述分区跳转标志位的分区号加载相应的分区信息后,并将分区跳转标志位重置为默认值即所述显性分区的分区号;此时存储设备显示为隐性分区;
步骤九、再一次重新上电时,固件在初始化过程中检测到所述分区跳转标志位默认值, 则加载默认的显式分区。上述技术方案中的有关内容解释如下 1、上述方案中,所述指定文件信息为文件名。2、上述方案中,所述指定文件名数量可以至少2个。由于上述技术方案运用,本发明与现有技术相比具有下列优点和效果
本发明所实现的安全SD卡可以有效的保护重要数据或者私人的文件不被随意的发现并访问,并且通过用户的简单操作即删除某个文件就可以很快的切换到隐藏分区,从而使用户可以方便的访问自己隐藏的数据或者文件等;其次,本发明的一个明显效果在于隐藏分区打开之前,非法的访问者不会知道该分区的存在,并且对显式分区的非法操作(格式化等)不会对隐藏分区的数据造成破坏,从而有效的保护数据。
附图1为本发明初始化流程图一; 附图2为本发明初始化流程图二; 附图3为本发明跳转流程图。
具体实施例方式下面结合附图及实施例对本发明作进一步描述
实施例一种用于提高移动存储设备中数据安全的方法,包括以下步骤 步骤一、将存储设备的存储空间分为至少两个分区,所述分区包括显性分区和隐性分区;并将所述分区的分区号、分区起始扇区地址和分区容量信息写入存储设备的固件中;
步骤二、在所述存储设备中固件存储单元设置分区跳转标志位和指定文件信息;所述分区跳转标志位默认值为所述显性分区的分区号,所述指定文件信息与所述一个隐藏分区关联;
步骤三、将主引导记录,DOS引导记录,目录项信息依次写入所述各个分区起始扇区的开始地址内;
步骤四、初始化时,根据所述分区跳转标志位内分区号加载所述显性分区的信息,获取显性分区的主引导记录,DOS引导记录和目录项信息,从而在枚举后显示显性分区,并在此显性分区的所述目录项信息中查找是否存在所述指定文件信息;
步骤五、如果存在所述指定文件信息,则记录下此指定文件信息目录项所在的扇区和偏移地址;否则,在所述显性分区中创建所述指定文件信息并重新上电初始化,从而查到所述指定文件名,并记录下此指定文件名目录项所在的扇区和偏移地址;
步骤六、当固件检测到有删除所述指定文件信息的操作发生时,即向存储空间中所述偏移地址处的第一个字节标记为0xE5 ;
步骤七、当发现将目标文件的目录项信息的第一个字节标记为0xE5,则将分区跳转标志位置为所述指定文件信息关联分区的分区号;步骤八、所述存储设备再次初始化,并根据所述分区跳转标志位的分区号加载相应的分区信息后,并将分区跳转标志位重置为默认值即所述显性分区的分区号;此时存储设备显示为隐性分区;
步骤九、再一次重新上电时,固件在初始化过程中检测到所述分区跳转标志位默认值, 则加载默认的显式分区。上述指定文件信息为文件名。上述指定文件名数量可以至少2个本实施例中上述内容解释如下。显式分区的存在是为了能够操作Sd卡,如果所有分区都是隐藏的,则该Sd卡无法直接访问,也就没法通过删除某个文件来打开隐藏分区了)。指定文件就是一个普通文件,只是文件名是约定好的,例如指定目录abc下的文件123. txt,通过删除这个文件实现本发明的功能,只要文件所在的目录和文件名称正确即可)。本发明中Sd卡中的各个分区的信息(起始扇区、长度等)以及指定的文件信息,例如文件名等在量产过程写入固件指定的存储单元中,如norflastunand flash等。量产后的sd卡在初次上电初始化时显示默认的显式分区,在该分区创建一个与某个指定文件同名的文件,然后重新将该卡上电初始化。在初始化的过程中,固件首先根据指定的文件名搜索这些文件是否存在,若存在则记录下这些文件的目录项所在的扇区和偏移地址。在量产后的初次上电初始化,如果不存在指定的文件,则固件搜索不到这些文件,则无法检测针对该文件的删除操作从而实现打开隐藏分区。因此,当量产后的初次上电后,如果没有指定的文件,需要创建该文件后在重新上电初始化,以使固件能够搜索到这些文件。当固件检测到有删除某个指定文件的操作发生时,将分区跳转标志置为指定分区。SD卡重新上电初始化时将检测该分区切换标志,则加载该分区的信息,并将该标志清除。此时SD卡显示为该隐藏分区,再次上电则返回到初始的显式分区。例如jumpflag为分区跳转标志,其值存储在flash中,量产的初次上电初始化值为0,即默认的显示分区为第0个分区,即显式分区;当删除某个指定文件时,例如2,txt,而这个文件对应的分区为第 2个分区,则将jumpflag的值修改为2。当再次上电初始化时,固件检测到jumpflag的值为2,即需要加载第2个分区的信息,从而显示该分区。)
量产过程
本发明中的sd卡在使用之前需要进行量产。量产过程中,固件根据用户指定的比例将整个sd卡的存储空间分为若干个分区,并将各个分区的信息写入flash (Nand flash或者 nor flash)中,包括如下所示信息 分区编号
分区起始扇区地址分区容量
分区对应的文件名(包括文件所在的目录,可指定多个文件)
分区对应的文件是指各个隐藏分区分别对应哪些文件,从而当删除某个文件时可以查出其对应的是哪个隐藏分区,继而跳转到该分区。
在这些分区中,有一个分区是作为默认的显式分区存在的,即量产后初次上电将会显示在Sd host (计算机、手机、相机等)的分区,并且是通过对该分区中的文件的删除操作实现跳转到隐藏分区。量产过程中固件将分区总数、隐藏分区跳转标志(置为0)等信息记录在FLASH中。量产的最后是对各个分区进行格式化,即将MBR、DBR、目录项信息等依次写入各个分区的起始扇区开始的地址处。初始化过程
初始化过程中,固件首先获取分区总数、分区号、隐藏分区跳转标志,根据跳转标志判断是否需要加载隐藏分区,如需要则根据跳转分区号加载指定的分区信息(包括分区起始扇区、分区容量等),这时需要判断跳转分区号是否合法,即假设默认的显式分区号为0,总分区数为η (包括默认分区0),则跳转分区号应该大于0,小于η。加载分区信息的过程如附图1所示
量产后的首次初始化过程中,由于量产过程将跳转标志置为0,因此直接加载显式分区的信息,获取显式分区的起始扇区和容量等信息,在sd host枚举sd卡时从该分区起始扇区处获取MBR、DBR、目录项信息等,从而在枚举后显示显式分区。分区信息加载后,固件开始在这个分区的目录项中查找是否存在指定的文件,过程如附图2所示。量产过程中可以在默认的显式分区中建立一个与某个隐藏分区对应的指定文件同名的文件,这样在首次上电初始化过程中的上述查找过程机会成功查找到该文件,并且将记录下该文件的目录项信息所在的扇区和偏移。如果量产过程中没有建立与目标文件同名的文件,在首次上电初始化过程中的上述查找过程将失败,因此需要新建一个目标文件, 然后再次重新上电初始化,则上述查找过程将成功查找到目标文件。隐藏分区切换过程
量产过后,Sd host识别出完成初始化的Sd卡,显示的是默认的显式分区,删除其中的指定的目标文件(如上节所述,如果量产过程没有建立目标文件则需要手动建立然后重新上电初始化),即通过标准Sd写命令向Sd卡中该文件的目录项信息所在的扇区写入一个扇区的数据,该数据中将目标文件的目录项信息的第一个字节标记为0XE5。固件收到这些数据后将做出如下响应
固件在初始化过程中已经查找到该目标文件并将其目录项信息所在的扇区及偏移地址记录下来,当删除该目标文件的操作发生时,即产生一个写操作,地址为该文件目录项信息所在的扇区,内容为将该文件目录项信息偏移地址处的第一个字节标记为“0xE5”,其他内容保持不变。固件以此检测写该目录项信息扇区的命令,一旦发现将目标文件的目录项信息的第一个字节标记为“0xE5”则认为该写操作是删除该文件的操作,则立即将隐藏分区跳转标志置为该文件对应的隐藏分区号。过程如附图3所示
上述删除操作使能分区跳转标志并记录下跳转分区号之后,再次重新上电初始化,并检测到隐藏分区跳转标志有效,则加载隐藏分区号指定的分区,即从该分区的起始扇区开始获取MBR、DBR、目录项信息等,同时清除隐藏分区跳转标志为0。因此,当再一次重新上电时,固件在初始化过程中检测到隐藏分区跳转标志为0,则直接加载默认的显式分区,从而恢复到初始状态。多分区切换选择。
当同时删除默认的显式分区中的多个指定的目标文件时,则会产生多次修改跳转分区号的情况,因此需要一种策略选择正确的分区号,可以如下选择
最先修改有效即以第一次修改的分区号为准,之后的删除操作一旦发现跳转标志已经为有效则不再修改跳转分区号。最后修改有效即以最后一次修改的分区号为准。优先级选择即为分区制定优先级,以优先级最高的为准。上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。
权利要求
1.一种用于提高移动存储设备中数据安全的方法,其特征在于包括以下步骤 步骤一、将存储设备的存储空间分为至少两个分区,所述分区包括显性分区和隐性分区;并将所述分区的分区号、分区起始扇区地址和分区容量信息写入存储设备的固件中;步骤二、在所述存储设备中固件存储单元设置分区跳转标志位和指定文件信息;所述分区跳转标志位默认值为所述显性分区的分区号,所述指定文件信息与所述一个隐藏分区关联;步骤三、将主引导记录,DOS引导记录,目录项信息依次写入所述各个分区起始扇区的开始地址内;步骤四、初始化时,根据所述分区跳转标志位内分区号加载所述显性分区的信息,获取显性分区的主引导记录,DOS引导记录和目录项信息,从而在枚举后显示显性分区,并在此显性分区的所述目录项信息中查找是否存在所述指定文件信息;步骤五、如果存在所述指定文件信息,则记录下此指定文件信息目录项所在的扇区和偏移地址;否则,在所述显性分区中创建所述指定文件信息并重新上电初始化,从而查到所述指定文件名,并记录下此指定文件名目录项所在的扇区和偏移地址;步骤六、当固件检测到有删除所述指定文件信息的操作发生时,即向存储空间中所述偏移地址处的第一个字节标记为0xE5 ;步骤七、当发现将目标文件的目录项信息的第一个字节标记为0xE5,则将分区跳转标志位置为所述指定文件信息关联分区的分区号;步骤八、所述存储设备再次初始化,并根据所述分区跳转标志位的分区号加载相应的分区信息后,并将分区跳转标志位重置为默认值即所述显性分区的分区号;此时存储设备显示为隐性分区;步骤九、再一次重新上电时,固件在初始化过程中检测到所述分区跳转标志位默认值, 则加载默认的显式分区。
2.根据权利要求1所述的方法,其特征在于所述指定文件信息为文件名。
3.根据权利要求2所述的方法,其特征在于所述指定文件名数量可以至少2个。
全文摘要
一种用于提高移动存储设备中数据安全的方法,包括以下步骤将存储设备的存储空间分为至少两个分区,所述分区包括显性分区和隐性分区;在所述存储设备中固件存储单元设置分区跳转标志位和指定文件信息,所述指定文件信息与所述一个隐藏分区关联;根据所述分区跳转标志位内分区号加载所述显性分区的信息,并在此显性分区的所述目录项信息中查找是否存在所述指定文件信息;如果存在所述指定文件信息,则记录下此指定文件信息目录项所在的扇区和偏移地址;当固件检测到向存储空间中所述偏移地址处的第一个字节标记为0xE5;将分区跳转标志位置为所述指定文件信息关联分区的分区号。本发明方法解决了相机等设备加密困难的问题,且该加密方式提高了其数据安全性。
文档编号G11C7/24GK102280134SQ20111016426
公开日2011年12月14日 申请日期2011年6月17日 优先权日2011年6月17日
发明者匡启和, 王廷平, 肖佐楠, 郑茳, 陈万瑶 申请人:苏州国芯科技有限公司