CN109101198B - 移动存储设备的磁盘控制方法和装置 - Google Patents

移动存储设备的磁盘控制方法和装置 Download PDF

Info

Publication number
CN109101198B
CN109101198B CN201810991119.8A CN201810991119A CN109101198B CN 109101198 B CN109101198 B CN 109101198B CN 201810991119 A CN201810991119 A CN 201810991119A CN 109101198 B CN109101198 B CN 109101198B
Authority
CN
China
Prior art keywords
space
information
encryption
data
disk
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
CN201810991119.8A
Other languages
English (en)
Other versions
CN109101198A (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.)
Beijing Wondersoft Technology Co Ltd
Original Assignee
Beijing Wondersoft Technology 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 Beijing Wondersoft Technology Co Ltd filed Critical Beijing Wondersoft Technology Co Ltd
Priority to CN201810991119.8A priority Critical patent/CN109101198B/zh
Publication of CN109101198A publication Critical patent/CN109101198A/zh
Application granted granted Critical
Publication of CN109101198B publication Critical patent/CN109101198B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Human Computer Interaction (AREA)
  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明实施例提供了一种移动存储设备的磁盘控制方法和装置,该方法包括:对磁盘数据进行压缩,使其在尾部空出两个空闲空间,在对压缩后的数据进行加密时,首先在最后一个空闲空间中写入备份加密头中的数据,然后从后向前每次读取一个簇的数据,加密后,向后偏移一个加密头的长度(即空闲空间大小)去写入该一个簇的加密数据,这样不断循环读取写入数据,就实现了对卷的加密。最后,再在磁盘首部一个加密头的空闲空间写入主加密头数据。本发明能够不改变移动设备原有数据的情况下,在移动设备存储的头部和尾部腾出足够的安全空间用以存储加密密钥等信息,从而使加密的数据更加安全,极大的降低了数据丢失的风险,提升了移动存储设备的安全性。

Description

移动存储设备的磁盘控制方法和装置
技术领域
本发明涉及数据安全技术领域,特别是涉及一种移动存储设备的磁盘控制方法和装置。
背景技术
出于隐私和保密等的考虑,很多场合需要对移动存储设备(例如U盘、移动硬盘)进行加密处理,但是,目前的移动存储设备的加密处理方案普遍安全性较低。
发明内容
本发明提供了一种移动存储设备的磁盘控制方法和装置,以解决相关技术中的移动存储设备的安全性较低的问题。
为了解决上述问题,根据本发明的一个方面,本发明公开了一种移动存储设备的磁盘控制方法,包括:
S101,获取所述移动存储设备的磁盘存储空间大小DiskLen、簇大小ClusterSize;
S102,在预设大小HeadSize的内存空间中写入备份加密头的信息,其中,所述备份加密头的信息包括所述移动存储设备的第一身份信息、预设加密信息、预设解密信息、加密进度,所述加密进度的初始值为空;
S103,对所述移动存储设备的磁盘数据进行压缩,使得压缩后的移动存储设备的尾部磁盘存储空间具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,所述两个空闲空间中起始地址为DiskLen-HeadSize的空闲空间记为第一存储区域;
S105,将所述内存空间中的所述备份加密头的信息写入所述第一存储区域;
S106,计算初始地址EncryptDateOffset_first;
其中,EncryptDateOffset_first=DiskLen-2*HeadSize;
S107,计算加密起始地址EncryptDateOffset=EncryptDateOffset_first-ClusterSize;
S108,从所述磁盘存储空间的地址为EncryptDateOffset处向后读取一个ClusterSize数据长度的数据Buffer;
S109,采用所述预设加密信息对所述Buffer进行加密;
S110,在所述磁盘存储空间的地址为EncryptDateOffset+HeaderSize处向后写入一个ClusterSize数据长度的加密后的所述Buffer;
S111,将所述第一存储区域中的所述加密进度的数值更新为EncryptDateOffset;
S112,判断EncryptDateOffset-ClusterSize是否大于或等于0;
若是,则S113,将所述EncryptDateOffset_first的数值修改为所述S107中所述EncryptDateOffset的数值,并利用修改数值后的EncryptDateOffset_first继续循环执行S107至S113,直至EncryptDateOffset-ClusterSize小于0;
若否,则S114,将所述第一存储区域中所述备份加密头的信息进行复制,并将复制的所述备份加密头的信息写入至所述磁盘存储空间的起始地址为零且空间大小为HeadSize的空闲空间,其中,所述起始地址为零且空间大小为HeadSize的空闲空间记为第二存储区域,所述第二存储区域存储的信息记为主加密头的信息。
根据本发明的另一方面,本发明还公开了一种移动存储设备的磁盘控制装置,包括:
获取模块,用于获取所述移动存储设备的磁盘存储空间大小DiskLen、簇大小ClusterSize;
第一写入模块,用于在预设大小HeadSize的内存空间中写入备份加密头的信息,其中,所述备份加密头的信息包括所述移动存储设备的第一身份信息、预设加密信息、预设解密信息、加密进度,所述加密进度的初始值为空;
压缩模块,用于对所述移动存储设备的磁盘数据进行压缩,使得压缩后的移动存储设备的尾部磁盘存储空间具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,所述两个空闲空间中起始地址为DiskLen-HeadSize的空闲空间记为第一存储区域;
第二写入模块,用于将所述内存空间中的所述备份加密头的信息写入所述第一存储区域;
第一计算模块,用于计算初始地址EncryptDateOffset_first;
其中,EncryptDateOffset_first=DiskLen-2*HeadSize;
第二计算模块,用于计算加密起始地址EncryptDateOffset=EncryptDateOffset_first-ClusterSize;
第一读取模块,用于从所述磁盘存储空间的地址为EncryptDateOffset处向后读取一个ClusterSize数据长度的数据Buffer;
第一加密模块,用于采用所述预设加密信息对所述Buffer进行加密;
第三写入模块,用于在所述磁盘存储空间的地址为EncryptDateOffset+HeaderSize处向后写入一个ClusterSize数据长度的加密后的所述Buffer;
更新模块,用于将所述第一存储区域中的所述加密进度的数值更新为EncryptDateOffset;
判断模块,用于判断EncryptDateOffset-ClusterSize是否大于或等于0;
所述第一计算模块,还用于若所述判断模块确定EncryptDateOffset-ClusterSize大于或等于0,则将所述EncryptDateOffset_first的数值修改为所述第二计算模块中所述EncryptDateOffset的数值;
复制模块,用于若所述判断模块确定EncryptDateOffset-ClusterSize小于0,则将所述第一存储区域中所述备份加密头的信息进行复制,并将复制的所述备份加密头的信息写入至所述磁盘存储空间的起始地址为零且空间大小为HeadSize的空闲空间,其中,所述起始地址为零且空间大小为HeadSize的空闲空间记为第二存储区域,所述第二存储区域存储的信息记为主加密头的信息。
与现有技术相比,本发明包括以下优点:
本发明实施例通过对磁盘数据进行压缩,使其在尾部空出两个空闲空间,在对压缩后的数据进行加密时,首先在最后一个空闲空间中写入备份加密头中的数据,然后从后向前每次读取一个簇的数据,加密后,向后偏移一个加密头的长度(即空闲空间大小)去写入该一个簇的加密数据,这样不断循环读取写入数据,就实现了对卷的加密。最后,再在磁盘首部一个加密头的空闲空间写入主加密头数据,不改变移动设备原有数据的情况下,在移动设备存储的头部和尾部腾出足够的安全空间用以存储加密密钥等信息,从而使加密的数据更加安全,极大的降低了数据丢失的风险,提升了移动存储设备的安全性。
附图说明
图1是本发明的一种移动存储设备的磁盘控制方法实施例的步骤流程图;
图2是本发明的一种移动存储设备的状态变化示意图;
图3是本发明的一种移动存储设备的磁盘控制装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种移动存储设备的磁盘控制方法实施例的步骤流程图,具体可以包括如下步骤:
S101,获取所述移动存储设备的磁盘存储空间大小DiskLen、簇大小ClusterSize;
其中,本发明实施例的方法可以根据指令选择需要加密的存储设备,这里,选择的存储设备为上述移动存储设备。其中,该移动存储设备可以是已知或未来开发的任意一种NTFS文件系统的存储设备。
在确定需要对该移动存储设备进行加密控制后,可以获取该移动存储设备的磁盘存储空间大小、簇大小。
本发明实施例中,将其磁盘存储空间大小记为DiskLen,下文都以DiskLen来表示该移动存储设备的磁盘存储空间大小;并将该移动存储设备的簇大小记为ClusterSize,下文都以ClusterSize来表示该移动存储设备的簇大小。
其中,由于一个簇包括多个扇区,那么为了准确的确定一个簇的大小,可以获取该移动存储设备的扇区大小,从而确定移动存储设备一个簇的大小ClusterSize。例如一个簇包括8个扇区,一个扇区16k,则一个簇的大小ClusterSize的数值为16k*8(即128k)。
S102,在预设大小HeadSize的内存空间中写入备份加密头的信息;
可以初始化备份加密头的信息,其中,所述备份加密头的信息包括所述移动存储设备的第一身份信息(可以包括使用该移动存储设备的用户的身份信息,例如账号、密码等)、预设加密信息、预设解密信息、加密进度,所述加密进度的初始值为空;然后,在内存中写入上述备份加密头信息,且内存中用于写入上述备份加密头信息的这段内存空间的大小为预设大小,下文都以HeadSize来表示该预设大小,例如1M、50k等。
S103,对所述移动存储设备的磁盘数据进行压缩,使得压缩后的移动存储设备的尾部磁盘存储空间具有地址连续的两个空闲空间;
如图2所示,本发明实施例的移动存储设备在经过本发明实施例的方法处理之前,其磁盘数据处于状态1所示的结构,然后,经过本步骤,可以调用NTFS压缩命令来对其内部磁盘数据进行压缩处理,并控制压缩后的该移动存储设备的尾部存储空间具有地址连续的两个空闲空间,使得其磁盘数据处于状态2所示的结构。状态1中原始数据的存储位置可以占用移动存储设备的整个磁盘空间中的任意一个位置,压缩之后,原始数据的存储位置不可以占用磁盘尾部两个HeadSize的空闲空间。
需要注意的是,本发明并不限制状态1中的移动存储设备的任意存储空间的数据占用情况,其可以包括未被数据占用的空闲的空间,也就是说,状态1中数据的存储情况(哪些空间被数据占用,哪些空间未被数据占用)并不影响本发明实施例的方法的实现。
其中,两个空闲空间分别为空闲空间1和空闲空间2,空闲空间1是地址连续的存储空间,且内部没有存储数据;空闲空间2也是地址连续的存储空间,且内部没有存储数据;并且,空闲空间1和空闲空间2之间也是地址连续的。
此外,本步骤在进行压缩时,会使得两个空闲空间的总空间大小为2*HeadSize。且空闲空间1和空闲空间2的空间大小均为HeadSize。
并且,本发明实施例将所述两个空闲空间中起始地址为DiskLen-HeadSize的空闲空间,即空闲空间2,记为第一存储区域。
其中,DiskLen-HeadSize表示磁盘存储空间大小(即DiskLen)减去预设大小(即HeadSize)的差值对应的地址(即偏移地址)处。
本领域的技术人员应当理解,磁盘的存储地址均是偏移地址,因此,本文中所有涉及磁盘的地址的描述指代的都是偏移地址。以这里的空闲空间2的起始地址为例,其起始地址实质为DiskLen-HeadSize的差值的偏移处,由于磁盘地址指代的都是偏移地址属于公知常识,因此,本文未对每个磁盘中的存储地址做其为偏移地址的赘述。
由于NTFS文件系统具备卷压缩功能,因此,本发明实施例的方法可以在无损数据的情况下使得数据占用更少的空间,通过压缩后,可以轻松腾出足够的空间用于放置加密头数据。
S105,将所述内存空间中的所述备份加密头的信息写入所述第一存储区域;
其中,可以将S102中内存空间存储的备份加密头的信息写入至如图2所示的空闲空间2中,从而得到如图2所示的状态3所示的备份加密头的结构。其中,状态2所示的空闲空间2写入数据后变成状态3所示的备份加密头。
由于内存中存储该备份加密头的信息的内存空间大小为HeadSize,而空闲空间2的空间大小也为HeadSize,所以,该备份加密头的信息一定是可以完全存储在空闲空间2中的。其中,备份加密头的信息的数据长度小于或等于HeadSize。
S106,计算初始地址EncryptDateOffset_first;
其中,EncryptDateOffset_first=DiskLen-2*HeadSize;
其中,初始地址记为EncryptDateOffset_first,其中,初始地址的地址为磁盘存储空间大小(即DiskLen)减去两个预设大小(即2*HeadSize)的差值对应的地址(即偏移地址)处。
S107,计算加密起始地址EncryptDateOffset=EncryptDateOffset_first-ClusterSize;
其中,本发明实施例的加密起始地址记为EncryptDateOffset,其加密起始地址为初始地址(即EncryptDateOffset_first)减去一个簇大小(即ClusterSize)的差值对应的地址(即偏移地址)处。
如图2所示,首次执行S107时,该加密起始地址为状态2中存储空间21的起始地址。
S108,从所述磁盘存储空间的地址为EncryptDateOffset处向后读取一个ClusterSize数据长度的数据Buffer;
其中,可以从加密起始地址(即EncryptDateOffset对应的偏移地址)开始向后读取数据长度为一个簇大小(即ClusterSize)的数据,本发明实施例将读取的该数据记为Buffer,本文都以Buffer来指代S108每次读取的数据。在S108首次执行时,该Buffer实质为图2中状态2所示的存储空间21中的数据。可选地,可以将S108读取的数据写入内存。
S109,采用所述预设加密信息对所述Buffer进行加密;
其中,可以采用S102中的预设加密信息来对内存中的Buffer进行加密。其中,该预设加密信息可以从执行S102之后的内存空间中读取,也可以从执行S105之后的第一存储区域中读取(即从图2所示的状态2中的空闲空间2中读取,这里的空闲空间2已经不是空白的空间,而是写入了备份加密头的信息)。
S110,在所述磁盘存储空间的地址为EncryptDateOffset+HeaderSize处向后写入一个ClusterSize数据长度的加密后的所述Buffer;
其中,EncryptDateOffset+HeaderSize表示加密起始地址(即EncryptDateOffset)与预设大小(即ClusterSize)相加后的和值对应的地址(即偏移地址)处。
在S110首次执行时,继续以上例中的存储空间21为例,可以从地址为该和值对应的偏移地址处(即为存储空间21’的起始地址处)写入数据长度为一个簇大小的加密后的Buffer,即将状态2所示的存储空间21对应的加密后的数据(即加密后的所述Buffer)写入至图2的状态3所示的存储空间21’中。
S111,将所述第一存储区域中的所述加密进度的数值更新为EncryptDateOffset;
其中,每将状态2中的一个Buffer读取并加密后,以及对加密后的Buffer执行S110后,本发明实施例的方法就会将状态3中备份加密头中的加密进度数值更新为加密起始地址EncryptDateOffset的数值,即表示本次加密过程中,加密到了EncryptDateOffset的数值对应的偏移地址处。
例如加密时间较长,中间存在关机等中断情况,因此,每次加密一个簇的数据之后,都在备份加密头中记录当前的加密进度,即加密到哪个位置,下次关机,就可以利用记录的加密进度来继续将状态2中未加密的数据进行加密,生成状态3所示的数据存储结构。
S112,判断EncryptDateOffset-ClusterSize是否大于或等于0;
在完成一次一个Buffer的数据加密和移动后,可以判断EncryptDateOffset与ClusterSize的差值是否大于或等于零,即,加密起始地址减去一个簇大小得到的差值是否大于或等于零。
其中,如果是,则说明状态2所示的结构中还有剩余的数据为移动至状态3所示的结构中;如果否,则说明说明状态2所示的结构中区域22的全部存储数据都已移动至状态3所示的结构中。
若是,则S113,将所述EncryptDateOffset_first的数值修改为所述S107中EncryptDateOffset的数值,并利用修改数值后的EncryptDateOffset_first继续循环执行S107至S113,直至EncryptDateOffset与ClusterSize的差值小于0;
其中,若是,在本步骤首次执行时,可以将执行了S106之后的初始地址EncryptDateOffset_first的数值由DiskLen-2*HeadSize修改为S107中的EncryptDateOffset的数值(这里为DiskLen-2*HeadSize-ClusterSize),然后,例如修改数值后的初始地址EncryptDateOffset_first继续循环执行S107至S112,直到EncryptDateOffset的数值减去ClusterSize的数值的差值小于零。
这样,经过不断循环执行S107~S113,可以如图2所示,将卷压缩或迁移后移动存储设备的数据存储位置从状态2所示的位置按照大箭头所示的方向迁移到状态3所示的位置,并且,迁移至状态3所示位置的数据都是加密后的数据。
若否,则S114,将所述第一存储区域中所述备份加密头的信息进行复制,并将复制的所述备份加密头的信息写入至所述磁盘存储空间的起始地址为零且空间大小为HeadSize的空闲空间。
其中,所述起始地址为零且空间大小为HeadSize的空闲空间记为第二存储区域,所述第二存储区域存储的信息记为主加密头的信息。
其中,若否,则说明状态2所示的结构中区域22的全部存储数据都已移动至状态3所示的结构中。因此,可以将状态3所示的结构中的备份加密头的信息进行复制,并将复制的备份加密头的信息写入至第二存储区域23,得到主加密头,即在零偏移地址处写入复制的备份加密头的信息,得到主加密头。
其中,如图2所示,状态3中主加密头和备份加密头两个空间存储的数据是完全一样的,即所述移动存储设备的第一身份信息(可以包括使用该移动存储设备的用户的身份信息,例如账号、密码等)、预设加密信息、预设解密信息、加密进度,这样可以避免当任意一个加密头中的数据损坏后,本发明实施例的方法还可以利用另外一个加密头中的数据来进行卷的读写。
需要说明的是,由于S114是在区域22的全部存储数据均加密完成之后来执行的,因此,此时备份加密头中的加密进度的数值为磁盘存储空间的零偏移地址,所以主加密头中存储的加密进度的数值也是磁盘存储空间的零偏移地址。
本发明实施例通过对磁盘数据进行压缩,使其在尾部空出两个空闲空间,在对压缩后的数据进行加密时,首先在最后一个空闲空间中写入备份加密头中的数据,然后从后向前每次读取一个簇的数据,加密后,向后偏移一个加密头的长度(即空闲空间大小)去写入该一个簇的加密数据,这样不断循环读取写入数据,就实现了对卷的加密。最后,再在磁盘首部一个加密头的空闲空间写入主加密头数据,不改变移动设备原有数据的情况下,在移动设备存储的头部和尾部腾出足够的安全空间用以存储加密密钥等信息,从而使加密的数据更加安全,极大的降低了数据丢失的风险,提升了移动存储设备的安全性。
可选地,在一个实施例中,所述对所述移动存储设备的数据进行压缩之后,根据本发明实施例的方法还可以包括:
若压缩后的移动存储设备的尾部磁盘存储空间不具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,则S104,将目标空间中的所有存储数据向前迁移至所述磁盘存储空间中的任意空闲空间,其中,所述目标空间为处于所述尾部磁盘存储空间中的空间大小为2*HeadSize的地址连续的空间。
也就是说,虽然本发明实施例在对移动存储设备的数据进行压缩时,压缩目标是使其尾部存储空间包括地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,但是如果该压缩目标没有实现,即本发明实施例的若压缩后的移动存储设备的尾部磁盘存储空间不具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,那么说明2*HeadSize大小的尾部存储空间中仍旧存在部分空间在存储数据,因此,需要将2*HeadSize大小的尾部存储空间中存储的数据迁移出去,执行S104。
S104,将尾部磁盘存储空间中的空间大小为2*HeadSize的地址连续的空间中的所有存储数据都向前迁移至所述磁盘存储空间中的任意空闲空间,即如图2的状态2所示,将占用空闲空间1和空闲空间2的存储数据的向前迁移至区域22(包括存储位置21)中的任意空闲空间。
区域22为磁盘存储空间中起始地址为零,结束地址为DiskLen-2*HeadSize的存储区域。
这样,本发明实施例当对移动存储设备进行磁盘压缩时,如果压缩失败,则可以将所有处于存储区尾部备份加密头大小二倍的空间中的数据向前进行迁移,迁移到该磁盘中除尾部备份加密头大小二倍的空间之外的任意空闲空间。防止因为硬盘坏道、坏扇区造成压缩失败,导致磁盘数据加密失败的情况,提升磁盘数据加密成功率。
可选地,所述S114之后,根据本发明实施例的方法还可以包括:
S201,接收对所述移动存储设备的卷加载请求;
其中,当移动存储设备的所有数据经过上述实施例进行加密存储后,当有用户需要对该移动存储设备进行读或写操作时,首先需要对该移动存储设备的磁盘进行加载,因此,可以接收到卷加载请求,其中,所述卷加载请求包括待验证的第二身份信息,即用户需要输入使用该磁盘的账号密码来请求读或写该磁盘,然后,本发明实施例的方法可以接收到包括该用户的身份信息(这里可以包括账号、密码、数字证书等)的卷加载请求。
S202a,从所述移动存储设备的所述第二存储区域读取所述第一身份信息;
其中,可以从如图2所示的状态3中的主加密头中读取第一身份信息(即具有权限使用该移动存储设备的用户的身份信息)。需要注意的是,该第一身份信息可以包括一组或多组对应不同用户的身份信息。
若所述第一身份信息和所述第二身份信息相同,则S203a,从所述第二存储区域读取所述预设解密信息、所述预设加密信息;
其中,若待验证的第二身份信息与所述第一身份信息能够匹配,即存储在加密头中的一组或多组身份信息中存在与第二身份信息相同的身份信息,则S203a,从该主加密头中读取预设解密信息和预设加密信息。
S204,响应于所述卷加载请求,对所述移动存储设备的所述磁盘存储空间进行加载。
其中,可以使用磁盘过滤驱动来对移动存储设备的磁盘存储空间进行加载。
这样,在用户对磁盘存储数据进行读写之前,本发明实施例的方法可以在卷加载过程中对用户的身份进行认证,只有经过授权的用户请求数据读写,本发明实施例的方法才会进行卷加载,进而执行后续的数据读写操作,保证数据的安全。
可选地,所述S202a之后,根据本发明实施例的方法还可以包括:
若所述第一身份信息和所述第二身份信息不同,则S203b,响应于所述卷加载请求,对所述移动存储设备的所述磁盘存储空间禁止加载,发送表示身份验证不通过的信息。
其中,若待验证的第二身份信息与所述第一身份信息不能够匹配,即存储在加密头中的一组或多组身份信息中不存在与第二身份信息相同的身份信息,则S203b,禁止加载该移动存储设备的磁盘卷,并发送表示身份验证不通过的信息给应用程序侧。
这样,未经授权的用户无法对采用本发明实施例的方法进行控制的移动存储设备进行卷加载,从而无法读写数据,保证数据的安全。
可选地,所述S204之后,根据本发明实施例的方法还包括:
S205a,接收对所述移动存储设备的卷读取请求;
其中,当卷加载完成后,本发明实施例的磁盘过滤驱动可以接收上层应用的卷读取请求,其中,所述卷读取请求包括待读取的目标数据的地址区间[offset1,offset2],例如用户想要读取移动存储设备中100号~105号扇区的数据,则这里的offset1为100号扇区的起始地址的偏移地址,offset2为105号扇区的结束地址的偏移地址。因此,offset1为起始地址的偏移地址,offset2为结束地址的偏移地址,想要读取的目标数据为偏移地址在offset1至offset2范围内的存储数据。
S206a,计算目标地址区间为[offset1+HeadSize,offset2+HeadSize],从所述磁盘存储空间的所述目标地址区间读取目标数据密文;
由于经过图1实施例的方法加密后的数据,数据的存储位置都向后偏移了一个HeadSize,因此,这里需要对目标数据的地址区间做进一步计算,即,将offset1再加一个HeadSize,将offset2再加一个HeadSize,(offset1+HeadSize)为目标数据的实际起始地址的偏移地址,(offset2+HeadSize)为目标数据的实际结束地址的偏移地址。然后,从图2所示的状态3的结构中读取目标地址区间[offset1+HeadSize,offset2+HeadSize]内的所有数据,即目标数据密文。
S207a,根据所述预设解密信息对所述目标数据密文解密,得到目标数据明文;
其中,可以利用上述实施例卷加载过程中获取的预设解密信息来对目标数据密文解密,得到目标数据明文。
S208a,响应于所述卷读取请求,发送所述目标数据明文。
这样,本发明实施例在接收到卷读取请求后,会对待读取的目标数据的地址区间进行偏移处理,从而可以准确的读取到加密后的数据密文,并采用卷加载时获取的解密信息来对其解密,返回用户数据明文。本实施例的数据读取方法可以从根本上消除加解密信息被意外擦除覆盖的风险。
可选地,所述S204之后,根据本发明实施例的方法还可以包括:
S205b,接收对所述移动存储设备的卷写入请求,其中,所述卷读取请求包括待写入的目标数据明文、目标数据明文待写入的地址区间[offset3,offset4];
其中,当卷加载完成后,本发明实施例的磁盘过滤驱动可以接收上层应用的卷写入请求,其中,所述卷写入请求包括待写入的目标数据明文、待写入的地址区间[offset3,offset4],例如用户想要将目标数据明文写入移动存储设备中105号~110号扇区的数据,则这里的offset3为105号扇区的起始地址的偏移地址,offset4为110号扇区的结束地址的偏移地址。因此,offset3为起始地址的偏移地址,offset4为结束地址的偏移地址,目标数据明文的写入地址的偏移地址在offset3至offset4范围内。
其中,需要注意的是[offset1,offset2]与[offset3,offset4]可以地址重叠,或地址相同,或地址不同,本发明对于这两个地址区间的关系并不做限定。
S206b,根据所述预设加密信息对所述目标数据明文加密,得到目标数据密文;
其中,可以利用上述实施例卷加载过程中获取的预设加密信息来对目标数据明文加密,得到目标数据密文。
S207b,计算目标地址区间为[offset3+HeadSize,offset4+HeadSize],将所述目标数据密文写入至所述磁盘存储空间的所述目标地址区间;
由于经过图1实施例的方法加密后的数据,数据的存储位置都向后偏移了一个HeadSize,因此,这里需要对S205b中的地址区间做进一步处理,即,将offset3再加一个HeadSize,将offset4再加一个HeadSize,(offset3+HeadSize)为目标数据明文的实际写入起始地址的偏移地址,(offset4+HeadSize)为目标数据明文的实际写入结束地址的偏移地址。然后,将目标数据密文写入至图2所示的状态3的结构中的目标地址区间[offset3+HeadSize,offset4+HeadSize]内。
S208b,响应于所述卷写入请求,发送表示数据写入成功的信息。
这样,本发明实施例在接收到卷写入请求后,会对待写入的目标地址进行偏移处理,从而可以将待写入的目标数据明文加密后写入到磁盘中的准确位置,而不论是上述实施例的数据读取,还是本实施例的数据写入,都不会对主加密头、备份加密头中的数据进行写入操作,从而可以从根本上消除加解密信息被意外擦除覆盖的风险。
可选地,在一个实施例中,若所述移动存储设备的所述第二存储区域中的数据损坏,即主加密头中的信息被损坏,无法使用,则所述步骤S202a替换为:
S202b,从所述移动存储设备的所述第一存储区域读取所述第一身份信息;
即,可以从备份加密头中读取第一身份信息。
以及步骤S203a替换为:
S203c,从所述第一存储区域读取所述预设解密信息、所述预设加密信息。
这样,本发明实施例通过在磁盘存储空间的头和尾设置主、备两个加密头,从而在一个加密头损坏后,还可以使用另外一个加密头中的信息来实现对数据的加密写入,和/或解密读取,系统可靠性强。
本发明实施例的方法在执行时,可以包括一个应用程序和一个底层驱动,其中,应用程序负责图1实施例的方法的执行,而驱动程序负责卷加载与卷读写时的加解密。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
与上述本发明实施例所提供的方法相对应,参照图3,示出了本发明一种移动存储设备的磁盘控制装置实施例的结构框图,具体可以包括如下模块:
获取模块301,用于获取所述移动存储设备的磁盘存储空间大小DiskLen、簇大小ClusterSize;
第一写入模块302,用于在预设大小HeadSize的内存空间中写入备份加密头的信息,其中,所述备份加密头的信息包括所述移动存储设备的第一身份信息、预设加密信息、预设解密信息、加密进度,所述加密进度的初始值为空;
压缩模块303,用于对所述移动存储设备的磁盘数据进行压缩,使得压缩后的移动存储设备的尾部磁盘存储空间具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,所述两个空闲空间中起始地址为DiskLen-HeadSize的空闲空间记为第一存储区域;
第二写入模块304,用于将所述内存空间中的所述备份加密头的信息写入所述第一存储区域;
第一计算模块305,用于计算初始地址EncryptDateOffset_first;
其中,EncryptDateOffset_first=DiskLen-2*HeadSize;
第二计算模块306,用于计算加密起始地址EncryptDateOffset=EncryptDateOffset_first-ClusterSize;
第一读取模块307,用于从所述磁盘存储空间的地址为EncryptDateOffset处向后读取一个ClusterSize数据长度的数据Buffer;
第一加密模块308,用于采用所述预设加密信息对所述Buffer进行加密;
第三写入模块309,用于在所述磁盘存储空间的地址为EncryptDateOffset+HeaderSize处向后写入一个ClusterSize数据长度的加密后的所述Buffer;
更新模块310,用于将所述第一存储区域中的所述加密进度的数值更新为EncryptDateOffset;
判断模块311,用于判断EncryptDateOffset-ClusterSize是否大于或等于0;
所述第一计算模块305,还用于若所述判断模块311确定EncryptDateOffset-ClusterSize大于或等于0,则将所述EncryptDateOffset_first的数值修改为所述第二计算模块306中所述EncryptDateOffset的数值;
复制模块312,用于若所述判断模块311确定EncryptDateOffset-ClusterSize小于0,则将所述第一存储区域中所述备份加密头的信息进行复制,并将复制的所述备份加密头的信息写入至所述磁盘存储空间的起始地址为零且空间大小为HeadSize的空闲空间,其中,所述起始地址为零且空间大小为HeadSize的空闲空间记为第二存储区域,所述第二存储区域存储的信息记为主加密头的信息。
可选地,所述装置还包括:
迁移模块,用于若压缩后的移动存储设备的尾部磁盘存储空间不具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,则将目标空间中的所有存储数据向前迁移至所述磁盘存储空间中的任意空闲空间,其中,所述目标空间为处于所述尾部磁盘存储空间中的空间大小为2*HeadSize的地址连续的空间。
可选地,所述装置还包括:
第一接收模块,用于接收对所述移动存储设备的卷加载请求,其中,所述卷加载请求包括待验证的第二身份信息;
第二读取模块,用于从所述移动存储设备的所述第二存储区域读取所述第一身份信息;
第三读取模块,用于若所述第一身份信息和所述第二身份信息相同,则从所述第二存储区域读取所述预设解密信息、所述预设加密信息;
加载模块,用于响应于所述卷加载请求,对所述移动存储设备的所述磁盘存储空间进行加载。
可选地,所述装置还包括:
禁止加载模块,用于若所述第一身份信息和所述第二身份信息不同,则响应于所述卷加载请求,对所述移动存储设备的所述磁盘存储空间禁止加载,发送表示身份验证不通过的信息。
可选地,所述装置还包括:
第二接收模块,用于接收对所述移动存储设备的卷读取请求,其中,所述卷读取请求包括待读取的目标数据的地址区间[offset1,offset2];
第三计算模块,用于计算目标地址区间为[offset1+HeadSize,offset2+HeadSize],从所述磁盘存储空间的所述目标地址区间读取目标数据密文;
解密模块,用于根据所述预设解密信息对所述目标数据密文解密,得到目标数据明文;
第一发送模块,用于响应于所述卷读取请求,发送所述目标数据明文。
可选地,所述装置还包括:
第三接收模块,用于接收对所述移动存储设备的卷写入请求,其中,所述卷读取请求包括待写入的目标数据明文、待写入的地址区间[offset3,offset4];
第二加密模块,用于根据所述预设加密信息对所述目标数据明文加密,得到目标数据密文;
第四写入模块,用于计算目标地址区间为[offset3+HeadSize,offset4+HeadSize],将所述目标数据密文写入至所述磁盘存储空间的所述目标地址区间;
第二发送模块,用于响应于所述卷写入请求,发送表示数据写入成功的信息。
可选地,所述装置还包括:
第四读取模块,用于若所述移动存储设备的所述第二存储区域中的数据损坏,则从所述移动存储设备的所述第一存储区域读取所述第一身份信息;
第五读取模块,用于从所述第一存储区域读取所述预设解密信息、所述预设加密信息。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种移动存储设备的磁盘控制方法和一种移动存储设备的磁盘控制装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (14)

1.一种移动存储设备的磁盘控制方法,其特征在于,包括:
S101,获取所述移动存储设备的磁盘存储空间大小DiskLen、簇大小ClusterSize;
S102,在预设大小HeadSize的内存空间中写入备份加密头的信息,其中,所述备份加密头的信息包括所述移动存储设备的第一身份信息、预设加密信息、预设解密信息、加密进度,所述加密进度的初始值为空;
S103,对所述移动存储设备的磁盘数据进行压缩,使得压缩后的移动存储设备的尾部磁盘存储空间具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,所述两个空闲空间中起始地址为DiskLen-HeadSize的空闲空间记为第一存储区域;
S105,将所述内存空间中的所述备份加密头的信息写入所述第一存储区域;
S106,计算初始地址EncryptDateOffset_first;
其中,EncryptDateOffset_first=DiskLen-2*HeadSize;
S107,计算加密起始地址EncryptDateOffset=EncryptDateOffset_first-ClusterSize;
S108,从所述磁盘存储空间的地址为EncryptDateOffset处向后读取一个ClusterSize数据长度的数据Buffer;
S109,采用所述预设加密信息对所述Buffer进行加密;
S110,在所述磁盘存储空间的地址为EncryptDateOffset+HeaderSize处向后写入一个ClusterSize数据长度的加密后的所述Buffer;
S111,将所述第一存储区域中的所述加密进度的数值更新为EncryptDateOffset;
S112,判断EncryptDateOffset-ClusterSize是否大于或等于0;
若是,则S113,将所述EncryptDateOffset_first的数值修改为所述S107中所述EncryptDateOffset的数值,并利用修改数值后的EncryptDateOffset_first继续循环执行S107至S113,直至EncryptDateOffset-ClusterSize小于0;
若否,则S114,将所述第一存储区域中所述备份加密头的信息进行复制,并将复制的所述备份加密头的信息写入至所述磁盘存储空间的起始地址为零且空间大小为HeadSize的空闲空间,其中,所述起始地址为零且空间大小为HeadSize的空闲空间记为第二存储区域,所述第二存储区域存储的信息记为主加密头的信息。
2.根据权利要求1所述的方法,其特征在于,对所述移动存储设备的磁盘数据进行压缩之后,所述方法还包括:
若压缩后的移动存储设备的尾部磁盘存储空间不具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,则S104,将目标空间中的所有存储数据向前迁移至所述磁盘存储空间中的任意空闲空间,其中,所述目标空间为处于所述尾部磁盘存储空间中的空间大小为2*HeadSize的地址连续的空间。
3.根据权利要求1所述的方法,其特征在于,所述S114之后,所述方法还包括:
S201,接收对所述移动存储设备的卷加载请求,其中,所述卷加载请求包括待验证的第二身份信息;
S202a,从所述移动存储设备的所述第二存储区域读取所述第一身份信息;
若所述第一身份信息和所述第二身份信息相同,则S203a,从所述第二存储区域读取所述预设解密信息、所述预设加密信息;
S204,响应于所述卷加载请求,对所述移动存储设备的所述磁盘存储空间进行加载。
4.根据权利要求3所述的方法,其特征在于,所述S202a之后,所述方法还包括:
若所述第一身份信息和所述第二身份信息不同,则S203b,响应于所述卷加载请求,对所述移动存储设备的所述磁盘存储空间禁止加载,发送表示身份验证不通过的信息。
5.根据权利要求3所述的方法,其特征在于,所述S204之后,所述方法还包括:
S205a,接收对所述移动存储设备的卷读取请求,其中,所述卷读取请求包括待读取的目标数据的地址区间[offset1,offset2];
S206a,计算目标地址区间为[offset1+HeadSize,offset2+HeadSize],从所述磁盘存储空间的所述目标地址区间读取目标数据密文;
S207a,根据所述预设解密信息对所述目标数据密文解密,得到目标数据明文;
S208a,响应于所述卷读取请求,发送所述目标数据明文。
6.根据权利要求5所述的方法,其特征在于,所述S204之后,所述方法还包括:
S205b,接收对所述移动存储设备的卷写入请求,其中,所述卷读取请求包括待写入的目标数据明文、待写入的地址区间[offset3,offset4];
S206b,根据所述预设加密信息对所述目标数据明文加密,得到目标数据密文;
S207b,计算目标地址区间为[offset3+HeadSize,offset4+HeadSize],将所述目标数据密文写入至所述磁盘存储空间的所述目标地址区间;
S208b,响应于所述卷写入请求,发送表示数据写入成功的信息。
7.根据权利要求3所述的方法,其特征在于,若所述移动存储设备的所述第二存储区域中的数据损坏,则所述S202a替换为:
S202b,从所述移动存储设备的所述第一存储区域读取所述第一身份信息;
以及步骤S203a替换为:
S203c,从所述第一存储区域读取所述预设解密信息、所述预设加密信息。
8.一种移动存储设备的磁盘控制装置,其特征在于,包括:
获取模块,用于获取所述移动存储设备的磁盘存储空间大小DiskLen、簇大小ClusterSize;
第一写入模块,用于在预设大小HeadSize的内存空间中写入备份加密头的信息,其中,所述备份加密头的信息包括所述移动存储设备的第一身份信息、预设加密信息、预设解密信息、加密进度,所述加密进度的初始值为空;
压缩模块,用于对所述移动存储设备的磁盘数据进行压缩,使得压缩后的移动存储设备的尾部磁盘存储空间具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,所述两个空闲空间中起始地址为DiskLen-HeadSize的空闲空间记为第一存储区域;
第二写入模块,用于将所述内存空间中的所述备份加密头的信息写入所述第一存储区域;
第一计算模块,用于计算初始地址EncryptDateOffset_first;
其中,EncryptDateOffset_first=DiskLen-2*HeadSize;
第二计算模块,用于计算加密起始地址EncryptDateOffset=EncryptDateOffset_first-ClusterSize;
第一读取模块,用于从所述磁盘存储空间的地址为EncryptDateOffset处向后读取一个ClusterSize数据长度的数据Buffer;
第一加密模块,用于采用所述预设加密信息对所述Buffer进行加密;
第三写入模块,用于在所述磁盘存储空间的地址为EncryptDateOffset+HeaderSize处向后写入一个ClusterSize数据长度的加密后的所述Buffer;
更新模块,用于将所述第一存储区域中的所述加密进度的数值更新为EncryptDateOffset;
判断模块,用于判断EncryptDateOffset-ClusterSize是否大于或等于0;
所述第一计算模块,还用于若所述判断模块确定EncryptDateOffset-ClusterSize大于或等于0,则将所述EncryptDateOffset_first的数值修改为所述第二计算模块中所述EncryptDateOffset的数值;
复制模块,用于若所述判断模块确定EncryptDateOffset-ClusterSize小于0,则将所述第一存储区域中所述备份加密头的信息进行复制,并将复制的所述备份加密头的信息写入至所述磁盘存储空间的起始地址为零且空间大小为HeadSize的空闲空间,其中,所述起始地址为零且空间大小为HeadSize的空闲空间记为第二存储区域,所述第二存储区域存储的信息记为主加密头的信息。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
迁移模块,用于若压缩后的移动存储设备的尾部磁盘存储空间不具有地址连续的两个空闲空间,其中,每个空闲空间的空间大小为HeadSize,则将目标空间中的所有存储数据向前迁移至所述磁盘存储空间中的任意空闲空间,其中,所述目标空间为处于所述尾部磁盘存储空间中的空间大小为2*HeadSize的地址连续的空间。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第一接收模块,用于接收对所述移动存储设备的卷加载请求,其中,所述卷加载请求包括待验证的第二身份信息;
第二读取模块,用于从所述移动存储设备的所述第二存储区域读取所述第一身份信息;
第三读取模块,用于若所述第一身份信息和所述第二身份信息相同,则从所述第二存储区域读取所述预设解密信息、所述预设加密信息;
加载模块,用于响应于所述卷加载请求,对所述移动存储设备的所述磁盘存储空间进行加载。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
禁止加载模块,用于若所述第一身份信息和所述第二身份信息不同,则响应于所述卷加载请求,对所述移动存储设备的所述磁盘存储空间禁止加载,发送表示身份验证不通过的信息。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第二接收模块,用于接收对所述移动存储设备的卷读取请求,其中,所述卷读取请求包括待读取的目标数据的地址区间[offset1,offset2];
第三计算模块,用于计算目标地址区间为[offset1+HeadSize,offset2+HeadSize],从所述磁盘存储空间的所述目标地址区间读取目标数据密文;
解密模块,用于根据所述预设解密信息对所述目标数据密文解密,得到目标数据明文;
第一发送模块,用于响应于所述卷读取请求,发送所述目标数据明文。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
第三接收模块,用于接收对所述移动存储设备的卷写入请求,其中,所述卷读取请求包括待写入的目标数据明文、待写入的地址区间[offset3,offset4];
第二加密模块,用于根据所述预设加密信息对所述目标数据明文加密,得到目标数据密文;
第四写入模块,用于计算目标地址区间为[offset3+HeadSize,offset4+HeadSize],将所述目标数据密文写入至所述磁盘存储空间的所述目标地址区间;
第二发送模块,用于响应于所述卷写入请求,发送表示数据写入成功的信息。
14.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第四读取模块,用于若所述移动存储设备的所述第二存储区域中的数据损坏,则从所述移动存储设备的所述第一存储区域读取所述第一身份信息;
第五读取模块,用于从所述第一存储区域读取所述预设解密信息、所述预设加密信息。
CN201810991119.8A 2018-08-28 2018-08-28 移动存储设备的磁盘控制方法和装置 Active CN109101198B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810991119.8A CN109101198B (zh) 2018-08-28 2018-08-28 移动存储设备的磁盘控制方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810991119.8A CN109101198B (zh) 2018-08-28 2018-08-28 移动存储设备的磁盘控制方法和装置

Publications (2)

Publication Number Publication Date
CN109101198A CN109101198A (zh) 2018-12-28
CN109101198B true CN109101198B (zh) 2020-07-10

Family

ID=64864131

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810991119.8A Active CN109101198B (zh) 2018-08-28 2018-08-28 移动存储设备的磁盘控制方法和装置

Country Status (1)

Country Link
CN (1) CN109101198B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109711207B (zh) * 2018-12-29 2020-10-30 杭州宏杉科技股份有限公司 一种数据加密方法及装置
WO2024094290A1 (en) * 2022-11-01 2024-05-10 Huawei Technologies Co., Ltd. Apparatus and method for storage protection
CN115994370B (zh) * 2023-01-29 2023-12-19 紫光同芯微电子有限公司 一种软件加密处理方法、装置、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469344A (zh) * 2010-11-16 2012-05-23 腾讯科技(深圳)有限公司 一种视频码流加、解密方法、装置及通信、存储终端
CN103065102A (zh) * 2012-12-26 2013-04-24 中国人民解放军国防科学技术大学 基于虚拟磁盘的数据加密移动存储管理方法
CN104881613A (zh) * 2014-02-27 2015-09-02 中国科学院声学研究所 一种磁盘全局数据加密系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101924607B (zh) * 2010-08-27 2013-01-23 华为终端有限公司 基于固件空中传输技术的固件处理方法、装置及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469344A (zh) * 2010-11-16 2012-05-23 腾讯科技(深圳)有限公司 一种视频码流加、解密方法、装置及通信、存储终端
CN103065102A (zh) * 2012-12-26 2013-04-24 中国人民解放军国防科学技术大学 基于虚拟磁盘的数据加密移动存储管理方法
CN104881613A (zh) * 2014-02-27 2015-09-02 中国科学院声学研究所 一种磁盘全局数据加密系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"磁盘加密模式分析";张慧,等,;《计算机工程》;20100331;第36卷(第5期);第134-136页 *

Also Published As

Publication number Publication date
CN109101198A (zh) 2018-12-28

Similar Documents

Publication Publication Date Title
CN109101198B (zh) 移动存储设备的磁盘控制方法和装置
US7770227B2 (en) Right information management method and right information management device
US10032038B2 (en) File system support for rolling keys
JP6096186B2 (ja) 不揮発性記憶装置の利用方法及び装置
CN110516428B (zh) 一种移动存储设备的数据读写方法、装置及存储介质
CN101256609B (zh) 存储卡及其安全方法
KR102500497B1 (ko) 블록체인 기반의 접근 제어 장치 및 그 동작 방법
CN112183496A (zh) 人脸识别信息的二次加密方法、装置、设备及存储介质
US9721122B2 (en) Method and system for performing secure I/O operation in a pluggable flash storage device
KR20110083889A (ko) 데이터 저장장치에서 원격 제어에 따라 데이터를 처리하는 방법 및 그 장치
JP6231504B2 (ja) 移動端末の情報セキュリティ管理のための方法、装置および移動端末
WO2023179378A1 (zh) 加密方法、装置及电子设备
CN110929302B (zh) 一种数据安全加密存储方法及存储装置
CN103119559A (zh) 信息生成系统及其方法
JP6111427B2 (ja) 携帯型記録媒体、携帯型記録媒体を含むシステム、携帯型記録媒体のデータ復旧方法
JP2016009220A (ja) ストレージ装置、通信装置、及びストレージ制御システム
CN108038387B (zh) 一种外发文件的处理方法和系统
JP4738546B2 (ja) データ漏洩防止システムおよびデータ漏洩防止方法
KR101886176B1 (ko) 소유자만 기록 가능한 부트영역을 포함하는 저장장치
JP6282197B2 (ja) 記憶装置、方法及びプログラム
KR102088297B1 (ko) 보안 영역 접근 제어 장치 및 방법
KR20200090056A (ko) 온라인 상의 파일 접근 제어 방법
JP7042461B2 (ja) 記録制御システム、制御装置、記録制御方法および記録媒体
CN114329651A (zh) 数据保护实现方法、装置、计算机设备及存储介质
CN117390652A (zh) 基于双因子认证的光盘加密方法、系统、介质以及设备

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