CN102930224A - 硬盘数据写入、读取方法及装置 - Google Patents

硬盘数据写入、读取方法及装置 Download PDF

Info

Publication number
CN102930224A
CN102930224A CN2012104008198A CN201210400819A CN102930224A CN 102930224 A CN102930224 A CN 102930224A CN 2012104008198 A CN2012104008198 A CN 2012104008198A CN 201210400819 A CN201210400819 A CN 201210400819A CN 102930224 A CN102930224 A CN 102930224A
Authority
CN
China
Prior art keywords
data
hard disk
decruption key
read
ciphertext block
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.)
Pending
Application number
CN2012104008198A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2012104008198A priority Critical patent/CN102930224A/zh
Publication of CN102930224A publication Critical patent/CN102930224A/zh
Priority to US14/054,241 priority patent/US20140129848A1/en
Priority to EP13189183.0A priority patent/EP2722787A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/80Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • G11B20/00507Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein consecutive physical data units of the record carrier are encrypted with separate encryption keys, e.g. the key changes on a cluster or sector basis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2516Hard disks

Abstract

本发明实施例提供一种硬盘数据写入、读取方法及装置。写入方法包括:获取明文数据;利用加密密钥对所述明文数据进行加密,得到密文数据和解密密钥;将所述密文数据写入硬盘的可用区域,将所述解密密钥写入所述硬盘的保留区。本发明实施例通过将解密密钥保存在硬盘的保留区,不占用硬盘的可用区域,节省存储资源,且由于保留区中的数据无法通过常规命令读取,使得解密密钥无法被窃取,提高了数据加密的可靠性,解决了现有的硬盘数据加密导致减少硬盘的实际可存储数据容量以及易泄密的问题。

Description

硬盘数据写入、读取方法及装置
技术领域
本发明实施例涉及一种硬盘数据写入、读取方法及装置,属于存储技术领域。
背景技术
由于硬盘具有读写性能高、容量大等等优势,而被广泛应用在军工、工控、监控等领域。硬盘作为支撑现在海量数据存储的介质,其上的数据一旦泄露会对个人或企业客户造成不可估量的损失。为了保证硬盘上数据的可靠性,需要对硬盘上的数据进行加密。
图1为现有技术的一种硬盘数据加密技术的示意图。如图1所示,将硬盘划分为两个部分:数据区与密钥区,其中加密后的密文数据存放在数据区,而密钥同时存放在硬盘之上的密钥区内,加密区的大小视加密算法的强度而定。图2为图1所示加密技术中加密过程的示意图。如图2所示,明文数据在主机软件侧进行加密,将加密后得到的密文数据以及密钥分别写入硬盘的数据区以及密钥区。图3为图1所示加密技术中解密过程的示意图。如图2所示,主机软件从硬盘的数据区和密钥区分别读取密文以及密钥,进行解密得到明文数据。
然而,上述现有技术中将硬盘的可用区域分为数据区与密钥区,相当于减少了硬盘实际可存储的数据容量。而且随着加密算法强度的增加,数据区的容量会进一步减少。并且,由于硬盘上的密文数据和密钥都是存储在硬盘的可用区域,假使出现硬盘被窃取等情况,很容易被人读取造成信息的泄密。
发明内容
本发明实施例提供一种硬盘数据写入、读取方法及装置,用以解决现有的硬盘数据加密导致减少硬盘的实际可存储数据容量以及易泄密的问题。
本发明实施例的第一个方面是提供一种硬盘数据写入方法,包括:
获取明文数据;
利用加密密钥对所述明文数据进行加密,得到密文数据和解密密钥;
将所述密文数据写入硬盘的可用区域,将所述解密密钥写入所述硬盘的保留区。
在第一个方面的第一种可能的实现方式中,所述利用加密密钥对所述明文数据进行加密,得到密文数据之前还包括:
将所述明文数据分解为多个明文数据块;
所述利用加密密钥对所述明文数据进行加密,得到密文数据具体包括:
利用加密密钥对所述多个明文数据块分别进行加密,得到多个密文数据块和各密文数据块对应的解密密钥;
所述将所述密文数据写入硬盘的可用区域,将所述解密密钥写入所述硬盘的保留区具体包括:
将所述多个密文数据块写入所述硬盘的可用区域,将各密文数据块对应的解密密钥写入所述硬盘的保留区。
结合第一个方面的第一种可能的实现方式,在第一个方面的第二种可能的实现方式中,每个密文数据块的大小不超过所述硬盘上每个扇区的数据区容量大小;
所述将所述多个密文数据块写入所述硬盘的可用区域具体包括:
将所述多个密文数据块一一对应地写入多个扇区的数据区;
所述将各密文数据块对应的解密密钥写入所述硬盘的保留区具体包括:
将各密文数据块对应的解密密钥分别对应地写入各密文数据块所在扇区的保留区。
结合第一个方面或第一个方面的上述几种可能的实现方式,在第一个方面的第三种可能的实现方式中,将所述解密密钥写入所述硬盘的保留区具体包括:
使用小型计算机系统接口SCSI WRITE LONG命令将所述解密密钥写入所述硬盘的保留区。
本发明实施例的第二个方面是提供一种硬盘数据读取方法,包括:
从硬盘的可用区域读取密文数据,从所述硬盘的保留区读取解密密钥;
利用所述解密密钥对所述密文数据进行解密,得到明文数据。
在第二个方面的第一种可能的实现方式中,所述从硬盘的可用区域读取密文数据,从所述硬盘的保留区读取解密密钥具体包括:
从硬盘的可用区域读取多个密文数据块,从所述硬盘的保留区读取各密文数据块对应的解密密钥;
所述利用所述解密密钥对所述密文数据进行解密,得到明文数据具体包括:
利用各密文数据块对应的解密密钥分别对所述多个密文数据块进行解密,得到多个明文数据块;
所述利用所述解密密钥对所述密文数据进行解密,得到明文数据之后还包括:
将所述多个明文数据块进行合并,得到所述明文数据。
结合第二个方面的第一种可能的实现方式,在第二个方面的第二种可能的实现方式中,各密文数据块的大小均不超过所述硬盘上每个扇区的数据区容量大小,各密文数据块一一对应地保存在所述硬盘的一个扇区的数据区中;
所述从硬盘的可用区域读取多个密文数据块具体包括:
从所述硬盘的多个扇区的数据区分别读取所述多个密文数据块;
所述从所述硬盘的保留区读取各密文数据块对应的密钥具体包括:
从所述保存有各密文数据块的扇区的保留区中分别读取各密文数据块对应的解密密钥。
结合第二个方面或第二个方面的上述几种可能的实现方式,在第二个方面的第三种可能的实现方式中,所述从所述硬盘的保留区读取解密密钥具体包括:
使用小型计算机系统接口SCSI READ LONG命令从所述硬盘的保留区读取所述解密密钥。
本发明实施例的第三个方面是提供一种硬盘数据写入装置,包括:
获取模块,用于获取明文数据;
加密模块,用于利用加密密钥对所述获取模块获取的明文数据进行加密,得到密文数据和解密密钥;
写入模块,用于将所述加密模块得到的所述密文数据写入硬盘的可用区域,将所述加密模块得到的所述解密密钥写入所述硬盘的保留区。
在第三个方面的第一种可能的实现方式中,还包括:
分解模块,用于件所述获取模块获取的所述明文数据分解为多个明文数据块;
所述加密模块具体用于:利用加密密钥对所述分解模块分解得到的所述多个明文数据块分别进行加密,得到多个密文数据块和各密文数据块对应的解密密钥;
所述写入模块具体用于:将所述加密模块得到的所述多个密文数据块写入所述硬盘的可用区域,将所述加密模块得到的各密文数据块对应的解密密钥写入所述硬盘的保留区。
结合第三个方面或第三个方面的第一种可能的实现方式,在第三个方面的第二种可能的实现方式中,每个密文数据块的大小不超过所述硬盘上每个扇区的数据区容量大小;
所述写入模块具体用于:
将所述加密模块得到的所述多个密文数据块一一对应地写入多个扇区的数据区,将所述加密模块得到的各密文数据块对应的解密密钥分别对应地写入各密文数据块所在扇区的保留区。
结合第三个方面的上述几种可能的实现方式,在第三个方面的第三种可能的实现方式中,所述写入模块具体用于:
使用小型计算机系统接口SCSI WRITE LONG命令将所述加密模块得到的所述解密密钥写入所述硬盘的保留区。
本发明实施例的第四个方面是提供一种硬盘数据读取装置,包括:
读取模块,用于从硬盘的可用区域读取密文数据,从所述硬盘的保留区读取解密密钥;
解密模块,用于利用所述读取模块读取到的所述解密密钥对所述读取模块读取到的密文数据进行解密,得到明文数据。
在第四个方面的第一种可能的实现方式中,所述读取模块具体用于:
从硬盘的可用区域读取多个密文数据块,从所述硬盘的保留区读取各密文数据块对应的解密密钥;
所述解密模块具体用于:
利用所述读取模块读取到的各密文数据块对应的解密密钥分别对所述读取模块读取到的所述多个密文数据块进行解密,得到多个明文数据块;
还包括:
合并模块,用于将所述解密模块得到的所述多个明文数据块进行合并,得到所述明文数据。
结合第四个方面的第一种可能的实现方式,在第四个方面的第二种可能的实现方式中,各密文数据块的大小均不超过所述硬盘上每个扇区的数据区容量大小,各密文数据块一一对应地保存在所述硬盘的一个扇区的数据区中;
所述读取模块具体用于:
从所述硬盘的多个扇区的数据区分别读取所述多个密文数据块,从所述保存有各密文数据块的扇区的保留区中分别读取各密文数据块对应的解密密钥。
结合第四个方面或第四个方面的上述几种可能的实现方式,在第四个方面的第三种可能的实现方式中,所述读取模块具体用于:使用小型计算机系统接口SCSI READ LONG命令从所述硬盘的保留区读取所述解密密钥。
以上多个技术方案中的多个具有如下优点或有益效果:
本发明实施例通过将解密密钥保存在硬盘的保留区,不占用硬盘的可用区域,节省存储资源,且由于保留区中的数据无法通过常规命令读取,使得解密密钥无法被窃取,提高了数据加密的可靠性,解决了现有的硬盘数据加密导致减少硬盘的实际可存储数据容量以及易泄密的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的一种硬盘数据加密技术的示意图;
图2为图1所示加密技术中加密过程的示意图;
图3为图1所示加密技术中解密过程的示意图;
图4为本发明实施例提供的一种硬盘数据写入方法的流程示意图;
图5为本发明实施例提供的一种硬盘数据读取方法的流程示意图;
图6为本发明实施例提供的一种硬盘数据写入装置的结构示意图;
图7为本发明实施例提供的又一种硬盘数据写入装置的结构示意图;
图8为本发明实施例提供的一种硬盘数据读取装置的结构示意图;
图9为本发明实施例提供的又一种硬盘数据读取装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图4为本发明实施例提供的一种硬盘数据写入方法的流程示意图。如图4所示,包括:
401、获取明文数据。
举例来说,本发明实施例提供的硬盘数据写入装置获取明文数据。具体地,硬盘数据写入装置通过主机软件实现,通常,主机软件包括驱动层、操作系统层和应用层,应用层可以与用户直接交互,操作系统层负责整个主机的调度,操作系统层设置有文件系统,文件系统用于管理主机硬盘中的数据,驱动层可以与主机硬盘上的主控单元通过小型计算机系统接口(SmallComputer System Interface,简称SCSI)协议通信。
402、利用加密密钥对所述明文数据进行加密,得到密文数据和解密密钥。
这里的加密密钥可以是预先设置好的。具体地,可以采用现有的加密算法进行加密,本发明实施例对此不进行限定。解密密钥是与加密密钥和加密算法对应的,举例来说,当采用对称密钥加密算法时,解密密钥与加密密钥相同。
403、将所述密文数据写入硬盘的可用区域,将所述加密密钥写入所述硬盘的保留区。
具体地,硬盘的可用区域为对用户可见的区域,即常规可访问的区域,保留区(Reserved)为非常规可访问的区域。这里的常规可访问是指通过常规的读写命令可以访问,常规的读命令如SCSI块命令(Block Command)READ10、READ12、READ16、READ32等,常规的写命令如WRITE10、WRITE12、WRITE16、WRITE32等。
具体地,本发明实施例中可以利用SCSI特殊数据写命令,WRITE LONG命令将所述密钥写入所述硬盘的保留区。
本施例中,应用层获取明文数据,将明文数据传递给操作系统层的文件系统,文件系统确定该明文数据在硬盘中的存储位置,并将明文数据传递给驱动层,驱动层对明文数据进行加密后将得到的密文数据和解密密钥存储在硬盘中文件系统指定的存储位置。由于是在驱动层进行加密,密文数据不以文件的形式存在、对于用户不可见,相比于现有技术中在应用层进行加密、密文数据作为一个文件对用户可见来说,提高了数据的安全性。
若应用层生成的明文数据较大,操作系统层的文件系统会将明文数据分为多个明文数据块,驱动层对多个明文数据块分别进行加密,相比于现有在应用层对整个明文数据进行加密,进一步提高了加密的速度。对应地,401和402之间还包括:
将所述明文数据分解为多个明文数据块;
402具体包括:
利用加密密钥对所述多个明文数据块分别进行加密,得到多个密文数据块和各密文数据块对应的解密密钥;
403具体包括:
将所述多个密文数据块写入所述硬盘的可用区域,将各密文数据块对应的解密密钥写入所述硬盘的保留区。
具体地,是否需要分解明文数据以及分解成多少个明文数据块,由文件系统根据明文数据的大小决定,本实施例对此不进行限定。
需要说明的是,若各密文数据块对应的解密密钥不同,则需要将各密文数据块对应的解密密钥分别写入保留区中对应的存储位置;若各密文数据块对应的解密密钥相同,可以在保留区内仅写入一个解密密钥,进一步地,还可以将一个解密密钥的数据分割成多份,每份存放在保留区的不同空间内,比如存放不同的扇区中的保留区内,这样可以极大扩展本发明实施例使用的加解密算法的种类、强度等等。
进一步地,为了优化硬盘上的存储空间、减少硬盘碎片,可在硬盘上以扇区(Sector)为单位保存密文数据块。对应地,每个密文数据块的大小不超过所述硬盘上每个扇区的数据区容量大小;
所述将所述多个密文数据块写入所述硬盘的可用区域具体包括:
将所述多个密文数据块一一对应地写入多个扇区的数据区;
所述将各密文数据块对应的解密密钥写入所述硬盘的保留区具体包括:
将各密文数据块对应的解密密钥分别对应写入各密文数据块所在扇区的保留区。
具体地,硬盘中的每个扇区均由数据区和保留区组成。通常,每个扇区中数据区的容量为512字节,保留区的容量大于100字节。将哪个密文数据块写入哪个扇区,可以由操作系统层中的文件系统指定,具体地可以在WRITE LONG命令的参数,逻辑块地址(LOGICAL BLOCK ADDRESS)中指定,举例来说,若要将密文数据写入0扇区,则LOGICAL BLOCKADDRESS=0,若要将密文数据写入10000扇区,LOGICAL BLOCKADDRESS=10000。
进一步地,为了提高加密的可靠性,可以针对各明文数据块使用不同的加密密钥和加密算法进行加密,本实施例对此不进行限定。
本发明实施例通过将解密密钥保存在硬盘的保留区,不占用硬盘的可用区域,节省存储资源,且由于保留区中的数据无法通过常规命令读取,使得解密密钥无法被窃取,提高了数据加密的可靠性,解决了现有的硬盘数据加密导致减少硬盘的实际可存储数据容量以及易泄密的问题。进一步地,通过文件系统将大的明文数据分解成小的明文数据块后再在驱动层分别进行加密,提高了加密的效率。
图5为本发明实施例提供的一种硬盘数据读取方法的流程示意图。如图5所示,包括:
501、从硬盘的可用区域读取密文数据,从所述硬盘的保留区读取解密密钥。
举例来说,本发明实施例提供的硬盘数据读取装置从硬盘的可用区域读取密文数据,从所述硬盘的保留区读取解密密钥。具体地,硬盘数据读取装置可以通过主机软件实现。
具体地,本发明实施例中可以利用SCSI特殊数据读命令,READ LONG命令从所述硬盘的保留区读取解密密钥。
502、利用所述解密密钥对所述密文数据进行解密,得到明文数据。
具体地,采用解密密钥和与得到所述密文数据的加密算法对应的解密算法进行解密,本发明实施例对此不进行限定。
本施例中,硬盘数据读取装置在驱动层执行501和502,之后驱动层可以将得到的明文数据通过文件系统传递给应用层。需要说明的是,501中从硬盘的什么存储位置读取密文数据和解密密钥,是由文件系统指定的。
若要读取的明文数据在之前写入到硬盘中先由文件系统分解成了多个明文数据块,并在驱动层分别进行了加密,则相应地在读取时,驱动层读取对应的多个密文数据块并分别解密得到多个明文数据块后,文件系统再将解密得到的多个明文数据块进行合并,得到明文数据。对应地,501具体包括:
从硬盘的可用区域读取多个密文数据块,从所述硬盘的保留区读取各密文数据块对应的解密密钥;
502具体包括:
利用各密文数据块对应的解密密钥分别对所述多个密文数据块进行解密,得到多个明文数据块;
502之后还包括:
将所述多个明文数据块进行合并,得到所述明文数据。
需要说明的是,若各密文数据块对应的解密密钥相同,可以仅读取一个解密密钥,若各密文数据块对应的解密密钥不同,则需要将保留区中对应的存储位置分别读取各密文数据块对应的解密密钥。进一步地,各密文数据块对应的解密算法可以相同,也可以不同。
进一步地,若每个密文数据块的大小不超过所述硬盘上每个扇区的数据区容量大小,各密文数据块一一对应地保存在所述硬盘的一个扇区的数据区中,则所述从硬盘的可用区域读取多个密文数据块具体包括:
从所述硬盘的多个扇区的数据区分别读取所述多个密文数据块;
所述从所述硬盘的保留区读取各密文数据块对应的密钥具体包括:
从所述保存有各密文数据块的扇区的保留区中分别读取各密文数据块对应的解密密钥。
通常,从哪个扇区读取密文数据块,可以由操作系统层中的文件系统指定。具体地,可以在WRITE READ命令的参数,逻辑块地址(LOGICALBLOCK ADDRESS)中指定,举例来说,若要读取0扇区内的数据,LOGICALBLOCK ADDRESS=0,若要读取10000扇区内的数据,LOGICAL BLOCKADDRESS=10000。
本发明实施例通过将保存在硬盘的保留区中的解密密钥读出,并对从硬盘的可用区域读取的密文数据进行解密,得到明文数据,解密密钥不占用硬盘的可用区域,节省存储资源,且由于保留区中的数据无法通过常规命令读取,使得解密密钥无法被窃取,提高了数据加密的可靠性,解决了现有的硬盘数据加密导致减少硬盘的实际可存储数据容量以及易泄密的问题。进一步地,通过在驱动层将小的各密文数据块分别解密后再由文件系统进行合并,相比于现有技术中在应用层对整个密文数据进行解密,提高了解密的效率。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图6为本发明实施例提供的一种硬盘数据写入装置的结构示意图。如图6所示,所述装置包括:
获取模块61,用于获取明文数据;
加密模块62,用于利用加密密钥对获取模块61获取的明文数据进行加密,得到密文数据和解密密钥;
写入模块63,用于将加密模块62得到的所述密文数据写入硬盘的可用区域,将加密模块62得到的所述解密密钥写入所述硬盘的保留区。
可选地,写入模块63具体用于:
使用SCSI WRITE LONG命令将所述加密模块得到的所述解密密钥写入所述硬盘的保留区。
图7为本发明实施例提供的又一种硬盘数据写入装置的结构示意图。如图7所示,在图6所示实施例的基础上,所述装置还包括:
分解模块64,用于件获取模块61获取的所述明文数据分解为多个明文数据块;
加密模块62具体用于:利用加密密钥对分解模块64分解得到的所述多个明文数据块分别进行加密,得到多个密文数据块和各密文数据块对应的解密密钥;
写入模块63具体用于:将加密模块62得到的所述多个密文数据块写入所述硬盘的可用区域,将加密模块62得到的各密文数据块对应的解密密钥写入所述硬盘的保留区。
进一步地,若每个密文数据块的大小不超过所述硬盘上每个扇区的数据区容量大小,则写入模块63具体可以用于:
将加密模块62得到的所述多个密文数据块一一对应地写入多个扇区的数据区,将加密模块62得到的各密文数据块对应的解密密钥分别对应地写入各密文数据块所在扇区的保留区。
需要说明的是,本实施例提供的硬盘数据写入装置可以通过主机软件实现,具体地,获取模块61可以位于主机软件的应用层,加密模块62和写入模块63可以位于主机软件的驱动层,分解模块64可以位于主机软件的操作系统层,进一步地位于操作系统层的文件系统中。
本实施例的具体实现参照本发明实施例提供给的一种硬盘数据写入方法。本发明实施例通过将解密密钥保存在硬盘的保留区,不占用硬盘的可用区域,节省存储资源,且由于保留区中的数据无法通过常规命令读取,使得解密密钥无法被窃取,提高了数据加密的可靠性,解决了现有的硬盘数据加密导致减少硬盘的实际可存储数据容量以及易泄密的问题。进一步地,通过文件系统将大的明文数据分解成小的明文数据块后再在驱动层分别进行加密,提高了加密的效率。
图8为本发明实施例提供的一种硬盘数据读取装置的结构示意图。如图8所示,所述装置包括:
读取模块81,用于从硬盘的可用区域读取密文数据,从所述硬盘的保留区读取解密密钥;
解密模块82,用于利用读取模块81读取到的所述解密密钥对所述读取模块读取到的密文数据进行解密,得到明文数据。
可选地,读取模块81具体用于:使用SCSI READ LONG命令从所述硬盘的保留区读取所述解密密钥。
图9为本发明实施例提供的又一种硬盘数据读取装置的结构示意图。如图9所示,在图8所示实施例的基础上,读取模块81具体用于:
从硬盘的可用区域读取多个密文数据块,从所述硬盘的保留区读取各密文数据块对应的解密密钥;
解密模块82具体用于:
利用读取模块81读取到的各密文数据块对应的解密密钥分别对读取模块81读取到的所述多个密文数据块进行解密,得到多个明文数据块;
所述装置还包括:
合并模块83,用于将解密模块82得到的所述多个明文数据块进行合并,得到所述明文数据。
进一步地,若各密文数据块的大小均不超过所述硬盘上每个扇区的数据区容量大小,各密文数据块一一对应地保存在所述硬盘的一个扇区的数据区中,则读取模块81具体可以用于:
从所述硬盘的多个扇区的数据区分别读取所述多个密文数据块,从所述保存有各密文数据块的扇区的保留区中分别读取各密文数据块对应的解密密钥。
需要说明的是,本实施例提供的硬盘数据读取装置可以通过主机软件实现,具体地,读取模块81和解密模块82可以位于主机软件的驱动层,合并模块83可以位于主机软件的操作系统层,进一步地位于操作系统层的文件系统中。
本实施例的具体实现参照本发明实施例提供给的一种硬盘数据读取方法。本发明实施例通过将保存在硬盘的保留区中的解密密钥读出,并对从硬盘的可用区域读取的密文数据进行解密,得到明文数据,解密密钥不占用硬盘的可用区域,节省存储资源,且由于保留区中的数据无法通过常规命令读取,使得解密密钥无法被窃取,提高了数据加密的可靠性,解决了现有的硬盘数据加密导致减少硬盘的实际可存储数据容量以及易泄密的问题。进一步地,通过在驱动层将小的各密文数据块分别解密后再由文件系统进行合并,相比于现有技术中在应用层对整个密文数据进行解密,提高了解密的效率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (16)

1.一种硬盘数据写入方法,其特征在于,包括:
获取明文数据;
利用加密密钥对所述明文数据进行加密,得到密文数据和解密密钥;
将所述密文数据写入硬盘的可用区域,将所述解密密钥写入所述硬盘的保留区。
2.根据权利要求1所述的方法,其特征在于,所述利用加密密钥对所述明文数据进行加密,得到密文数据之前还包括:
将所述明文数据分解为多个明文数据块;
所述利用加密密钥对所述明文数据进行加密,得到密文数据具体包括:
利用加密密钥对所述多个明文数据块分别进行加密,得到多个密文数据块和各密文数据块对应的解密密钥;
所述将所述密文数据写入硬盘的可用区域,将所述解密密钥写入所述硬盘的保留区具体包括:
将所述多个密文数据块写入所述硬盘的可用区域,将各密文数据块对应的解密密钥写入所述硬盘的保留区。
3.根据权利要求2所述的方法,其特征在于,每个密文数据块的大小不超过所述硬盘上每个扇区的数据区容量大小;
所述将所述多个密文数据块写入所述硬盘的可用区域具体包括:
将所述多个密文数据块一一对应地写入多个扇区的数据区;
所述将各密文数据块对应的解密密钥写入所述硬盘的保留区具体包括:
将各密文数据块对应的解密密钥分别对应地写入各密文数据块所在扇区的保留区。
4.根据权利要求1-3中任一项所述的方法,其特征在于,将所述解密密钥写入所述硬盘的保留区具体包括:
使用小型计算机系统接口SCSI WRITE LONG命令将所述解密密钥写入所述硬盘的保留区。
5.一种硬盘数据读取方法,其特征在于,包括:
从硬盘的可用区域读取密文数据,从所述硬盘的保留区读取解密密钥;
利用所述解密密钥对所述密文数据进行解密,得到明文数据。
6.根据权利要求5所述的方法,其特征在于,所述从硬盘的可用区域读取密文数据,从所述硬盘的保留区读取解密密钥具体包括:
从硬盘的可用区域读取多个密文数据块,从所述硬盘的保留区读取各密文数据块对应的解密密钥;
所述利用所述解密密钥对所述密文数据进行解密,得到明文数据具体包括:
利用各密文数据块对应的解密密钥分别对所述多个密文数据块进行解密,得到多个明文数据块;
所述利用所述解密密钥对所述密文数据进行解密,得到明文数据之后还包括:
将所述多个明文数据块进行合并,得到所述明文数据。
7.根据权利要求6所述的方法,其特征在于,各密文数据块的大小均不超过所述硬盘上每个扇区的数据区容量大小,各密文数据块一一对应地保存在所述硬盘的一个扇区的数据区中;
所述从硬盘的可用区域读取多个密文数据块具体包括:
从所述硬盘的多个扇区的数据区分别读取所述多个密文数据块;
所述从所述硬盘的保留区读取各密文数据块对应的密钥具体包括:
从所述保存有各密文数据块的扇区的保留区中分别读取各密文数据块对应的解密密钥。
8.根据权利要求5-7中任一项所述的方法,其特征在于,所述从所述硬盘的保留区读取解密密钥具体包括:
使用小型计算机系统接口SCSI READ LONG命令从所述硬盘的保留区读取所述解密密钥。
9.一种硬盘数据写入装置,其特征在于,包括:
获取模块,用于获取明文数据;
加密模块,用于利用加密密钥对所述获取模块获取的明文数据进行加密,得到密文数据和解密密钥;
写入模块,用于将所述加密模块得到的所述密文数据写入硬盘的可用区域,将所述加密模块得到的所述解密密钥写入所述硬盘的保留区。
10.根据权利要求9所述的装置,其特征在于,还包括:
分解模块,用于件所述获取模块获取的所述明文数据分解为多个明文数据块;
所述加密模块具体用于:利用加密密钥对所述分解模块分解得到的所述多个明文数据块分别进行加密,得到多个密文数据块和各密文数据块对应的解密密钥;
所述写入模块具体用于:将所述加密模块得到的所述多个密文数据块写入所述硬盘的可用区域,将所述加密模块得到的各密文数据块对应的解密密钥写入所述硬盘的保留区。
11.根据权利要求10所述的装置,其特征在于,每个密文数据块的大小不超过所述硬盘上每个扇区的数据区容量大小;
所述写入模块具体用于:
将所述加密模块得到的所述多个密文数据块一一对应地写入多个扇区的数据区,将所述加密模块得到的各密文数据块对应的解密密钥分别对应地写入各密文数据块所在扇区的保留区。
12.根据权利要求9-11中任一项所述的装置,其特征在于,所述写入模块具体用于:
使用小型计算机系统接口SCSI WRITE LONG命令将所述加密模块得到的所述解密密钥写入所述硬盘的保留区。
13.一种硬盘数据读取装置,其特征在于,包括:
读取模块,用于从硬盘的可用区域读取密文数据,从所述硬盘的保留区读取解密密钥;
解密模块,用于利用所述读取模块读取到的所述解密密钥对所述读取模块读取到的密文数据进行解密,得到明文数据。
14.根据权利要求13所述的装置,其特征在于,所述读取模块具体用于:
从硬盘的可用区域读取多个密文数据块,从所述硬盘的保留区读取各密文数据块对应的解密密钥;
所述解密模块具体用于:
利用所述读取模块读取到的各密文数据块对应的解密密钥分别对所述读取模块读取到的所述多个密文数据块进行解密,得到多个明文数据块;
还包括:
合并模块,用于将所述解密模块得到的所述多个明文数据块进行合并,得到所述明文数据。
15.根据权利要求14所述的装置,其特征在于,各密文数据块的大小均不超过所述硬盘上每个扇区的数据区容量大小,各密文数据块一一对应地保存在所述硬盘的一个扇区的数据区中;
所述读取模块具体用于:
从所述硬盘的多个扇区的数据区分别读取所述多个密文数据块,从所述保存有各密文数据块的扇区的保留区中分别读取各密文数据块对应的解密密钥。
16.根据权利要求13-15中任一项所述的装置,其特征在于,所述读取模块具体用于:使用小型计算机系统接口SCSI READ LONG命令从所述硬盘的保留区读取所述解密密钥。
CN2012104008198A 2012-10-19 2012-10-19 硬盘数据写入、读取方法及装置 Pending CN102930224A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN2012104008198A CN102930224A (zh) 2012-10-19 2012-10-19 硬盘数据写入、读取方法及装置
US14/054,241 US20140129848A1 (en) 2012-10-19 2013-10-15 Method and Apparatus for Writing and Reading Hard Disk Data
EP13189183.0A EP2722787A1 (en) 2012-10-19 2013-10-17 Method and apparatus for writing and reading encrypted hard disk data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012104008198A CN102930224A (zh) 2012-10-19 2012-10-19 硬盘数据写入、读取方法及装置

Publications (1)

Publication Number Publication Date
CN102930224A true CN102930224A (zh) 2013-02-13

Family

ID=47645021

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012104008198A Pending CN102930224A (zh) 2012-10-19 2012-10-19 硬盘数据写入、读取方法及装置

Country Status (3)

Country Link
US (1) US20140129848A1 (zh)
EP (1) EP2722787A1 (zh)
CN (1) CN102930224A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106570425A (zh) * 2015-10-10 2017-04-19 北京奇虎科技有限公司 一种硬盘数据加密方法和系统
CN106709380A (zh) * 2015-07-20 2017-05-24 中国科学院声学研究所 一种针对磁盘数据存储区的加解密方法及系统
CN106971121A (zh) * 2017-04-10 2017-07-21 深圳乐信软件技术有限公司 数据处理方法、装置、服务器及存储介质
CN107122139A (zh) * 2017-04-28 2017-09-01 深圳天珑无线科技有限公司 数据写入方法及装置、数据读取方法及装置
CN108259165A (zh) * 2016-12-29 2018-07-06 航天信息股份有限公司 库存粮食识别代码加密和解密方法及装置
CN108900869A (zh) * 2018-05-04 2018-11-27 烽火通信科技股份有限公司 一种通信组信息加解密方法及系统
CN111222152A (zh) * 2020-01-03 2020-06-02 上海达梦数据库有限公司 一种数据写入方法、装置、设备及存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512578A (zh) * 2015-12-08 2016-04-20 北京元心科技有限公司 一种在sd卡上存储、删除和读取数据的方法及装置
CN109840434A (zh) * 2019-01-24 2019-06-04 山东华芯半导体有限公司 一种基于国密芯片的安全存储方法
CN114117484B (zh) * 2021-11-22 2023-03-17 绿晶半导体科技(北京)有限公司 提高主机缓存数据安全的装置和缓存数据读取和写入方法及装置
CN116070295B (zh) * 2023-02-27 2023-08-01 赛芯半导体技术(北京)有限公司 数据处理系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0950941A2 (en) * 1998-03-18 1999-10-20 Fujitsu Limited Method of and apparatus for protecting data on storage medium and storage medium
CN101101615A (zh) * 2007-08-09 2008-01-09 上海格尔软件股份有限公司 基于隐藏加密分区和pki技术的移动介质防泄密方法
US20090141893A1 (en) * 2007-11-30 2009-06-04 Microsoft Corporation Recordation of encrypted data to a recordable medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6853731B1 (en) * 2000-09-30 2005-02-08 Keen Personal Technologies, Inc. Digital video recorder employing a unique ID to interlock with encrypted video programs stored on a storage device
US7702592B2 (en) * 2003-11-14 2010-04-20 Sonic Solutions Secure transfer of content to writable media

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0950941A2 (en) * 1998-03-18 1999-10-20 Fujitsu Limited Method of and apparatus for protecting data on storage medium and storage medium
CN101101615A (zh) * 2007-08-09 2008-01-09 上海格尔软件股份有限公司 基于隐藏加密分区和pki技术的移动介质防泄密方法
US20090141893A1 (en) * 2007-11-30 2009-06-04 Microsoft Corporation Recordation of encrypted data to a recordable medium

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106709380A (zh) * 2015-07-20 2017-05-24 中国科学院声学研究所 一种针对磁盘数据存储区的加解密方法及系统
CN106570425A (zh) * 2015-10-10 2017-04-19 北京奇虎科技有限公司 一种硬盘数据加密方法和系统
CN108259165A (zh) * 2016-12-29 2018-07-06 航天信息股份有限公司 库存粮食识别代码加密和解密方法及装置
CN106971121A (zh) * 2017-04-10 2017-07-21 深圳乐信软件技术有限公司 数据处理方法、装置、服务器及存储介质
CN106971121B (zh) * 2017-04-10 2021-01-01 深圳乐信软件技术有限公司 数据处理方法、装置、服务器及存储介质
CN107122139A (zh) * 2017-04-28 2017-09-01 深圳天珑无线科技有限公司 数据写入方法及装置、数据读取方法及装置
CN108900869A (zh) * 2018-05-04 2018-11-27 烽火通信科技股份有限公司 一种通信组信息加解密方法及系统
CN108900869B (zh) * 2018-05-04 2021-02-02 烽火通信科技股份有限公司 一种通信组信息加解密方法及系统
CN111222152A (zh) * 2020-01-03 2020-06-02 上海达梦数据库有限公司 一种数据写入方法、装置、设备及存储介质
CN111222152B (zh) * 2020-01-03 2022-10-14 上海达梦数据库有限公司 一种数据写入方法、装置、设备及存储介质

Also Published As

Publication number Publication date
EP2722787A1 (en) 2014-04-23
US20140129848A1 (en) 2014-05-08

Similar Documents

Publication Publication Date Title
CN102930224A (zh) 硬盘数据写入、读取方法及装置
US8271801B2 (en) Implementing data confidentiality and integrity of shingled written data
US9324361B2 (en) Protecting stored data from traffic analysis
CN100378689C (zh) 一种计算机数据的加密保护及读写控制方法
KR101047213B1 (ko) 암호화 장치, 암호화 방법 및 컴퓨터 판독가능한 기록 매체
JP2005504373A (ja) 大容量記憶装置におけるデータの暗号化/復号化の方法及び装置
CN102073808B (zh) 一种通过sata接口加密存储的方法和加密卡
JPH11272561A (ja) 記憶媒体のデータ保護方法、その装置及びその記憶媒体
CN103020537A (zh) 数据加密方法和装置、数据解密方法和装置
CN104424016A (zh) 用于自加密驱动器的虚拟带集中
CN104636688A (zh) 一种基于固态硬盘的安全固件的实现方法
CN106682521B (zh) 基于驱动层的文件透明加解密系统及方法
CN103294969A (zh) 文件系统挂载方法和装置
CN103902695A (zh) 存储文件加密保护及快速销毁的方法
CN104063672A (zh) 数据安全存储方法
CN115146318B (zh) 虚拟磁盘安全存储方法
JPWO2006077871A1 (ja) コンテンツ複製装置及びコンテンツ複製方法
CN104778954A (zh) 一种光盘分区加密方法及系统
CN102609368B (zh) 固态硬盘数据加解密的方法及其固态硬盘
CN103365605A (zh) 信息存储设备及方法
US20020138747A1 (en) Restricted data access
US20080151740A1 (en) Method for Data Storage Protection and Encryption
CN102480353A (zh) 口令认证和密钥保护的方法
CN103077359A (zh) 数据解密方法和装置及系统
US20100138670A1 (en) Storage apparatus and data writing method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130213