CN107908574B - 固态盘数据存储的安全保护方法 - Google Patents

固态盘数据存储的安全保护方法 Download PDF

Info

Publication number
CN107908574B
CN107908574B CN201711176156.5A CN201711176156A CN107908574B CN 107908574 B CN107908574 B CN 107908574B CN 201711176156 A CN201711176156 A CN 201711176156A CN 107908574 B CN107908574 B CN 107908574B
Authority
CN
China
Prior art keywords
user
state disk
solid
service provider
key
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
CN201711176156.5A
Other languages
English (en)
Other versions
CN107908574A (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.)
Shenzhen Huazhong University of Science and Technology Research Institute
Original Assignee
Shenzhen Huazhong University of Science and Technology Research Institute
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 Shenzhen Huazhong University of Science and Technology Research Institute filed Critical Shenzhen Huazhong University of Science and Technology Research Institute
Priority to CN201711176156.5A priority Critical patent/CN107908574B/zh
Publication of CN107908574A publication Critical patent/CN107908574A/zh
Application granted granted Critical
Publication of CN107908574B publication Critical patent/CN107908574B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明公开了一种固态盘数据存储的安全保护方法,该方法包括以下步骤:1)由CA中心给存储服务提供者颁发属性证书;2)由存储服务提供者给用户颁发属性证书;3)当用户需要访问固态盘数据时,用户与固态盘控制器之间进行双向认证;4)认证完成后用户对固态盘进行数据读写。本发明为固态盘提供传输加密功能,能抵抗窃听攻击。由于存储加密和数据存储的位置相关,在不知道数据之前不能提前加密,而传输加密只和数据传送的顺序相关,所以可以在数据传输之前提前计算,本发明将传输加密和存储加密分离开来,预计算传输密钥流,在实际传送时,只需进行简单的异或操作即可,减轻了操作系统CPU负载,提高传输效率,对系统整体性能几乎不造成影响。

Description

固态盘数据存储的安全保护方法
技术领域
本发明涉及信息安全技术,尤其涉及一种固态盘数据存储的安全保护方法。
背景技术
目前主要有如下几种方式保护用户的数据:
1.ATA硬盘密码锁用于保护硬盘数据,防止非授权用户访问硬盘,用户可以通过BIOS选项为硬盘设置访问密码。当用户每次启动计算机访问硬盘时,BIOS需要验证用户输入的密码与当前输入的密码是否相同,对用户身份进行合法性认证。身份认证通过后,系统正常启动。硬盘密码锁如同进入房门的一把锁,只有正确的钥匙才可进入,这样对“房间”里的数据提供了某种程度的保护,但是数据本身以明文的方式存在。对于ATA硬盘密码锁已经存在专业破译软件,如YEC公司的HDD Rock、Ultrec,AFF Laboratory等产品。由此可见,ATA硬盘密码锁只对数据访问作限制,然而数据本身仍然得不到保护。
2.可信平台模块(TPM)是由可信计算组织(Truesed Computing Group,TCG)定义的。TPM安全芯片嵌入到主机主板,通过TPM安全芯片将计算机的硬盘与计算机进行绑定,并且可以设置访问密码,防止非法用户访问硬盘。TPM安全芯片主要应用于移动笔记本,能有效的保护计算机数据。TPM安全芯片本身具有强大的计算功能,能够产生随机数、执行非对称加密算法、对称加密算法以及单向散列算法等,并分配了一定的安全存储区域,用于存储加解密算法使用的密钥,和用户设置的密钥,对于存储的加解密算法密钥的空间,访问需要一定身份认证;存储在TPM安全芯片上的密钥,即使掉电其密钥信息也不会丢失。TPM安全芯片的主要功能:存储和管理用户使用的密码和密钥,对用户的敏感信息提供加密功能;认证功能,TPM安全芯片生成非对称密钥对,使用非对称算法在芯片内部对数据执行进行签名、验证签名、加密和解密运算,保证恶意软件完全不能访问密钥;可信启动,TPM芯片将启动过程中引导序列的配置信息存储在芯片配置的寄存器中,启动时验证保存信息时的PCR(Platform Configuration Register)值与当前的PCR值相等时,才可以进行正常启动,使主机与硬盘绑定。
3.软件加密,使用主机的资源通过加解密算法对数据进行运算操作。使用基于软件加密产品的计算机系统,性能不是主要考虑的因素,主要考虑对私有数据的保护。软件加密提供的是基于文件和文件夹级加密。软件加密的特点:实施成本低,无需额外的硬件设备支持;软件加密灵活,可以支持多种加密算法,可以提供用户自主选择合适的加密算法。软件加密的缺点:加解密操作使用系统资源,加解密速度受系统的影响;密钥在内存中使用,密钥使用安全性低;软件加密相对硬件加密速度慢。
4.硬件加密,数据的加解密操作独立于系统资源,通过硬件的方式实施加解密引擎。对于传统的硬盘硬件加密有两种实施方式:非硬盘生产商研发的硬盘加密卡、硬盘生产厂商的加密硬盘。
硬盘加密卡,是在主机与存储设备的数据传输路径之间串接数据加解密的设备,如Enova公司生产的X-WALL安全芯片。硬盘加密卡截取传输的数据并判断是否需要进行加解密操作,无需加密的数据直接通过加密卡,若需要执行加解密操作,硬盘加密卡内的加解密引擎实施加解密操作。整个加解密操作对于用户是透明的,无需使用系统资源。
加密硬盘,希捷公司使用FDE(Full Disk Encryption)技术在传统硬盘的基础上加入3D Crypto芯片和DriverTrust固件,并分配安全区域,存储加密使用的密钥和用户使用的密码。加密硬盘通过加密芯片对读写数据流进行加解密处理,加密操作对用户透明。
5.固态硬盘控制器加密引擎。在现有存储设备的数据保护技术中,ATA硬盘密码锁与TPM安全芯片主要防止非法用户访问存储设备中的数据,而存储在设备中数据是明文;软件加密依靠系统资源,加解密速度有限;加密卡、加密芯片透明的对数据进行加解密操作,需要独立的硬件实施,导致成本急剧上升。
在固态硬盘控制器中通过FPGA方式实施加密引擎,加密引擎的操作不占用系统资源,无需独立的硬件资源,数据以密文的方式存储在设备中。因此,研究固态硬盘控制器加密引擎的实施,提出一种高效低开销的设计具有重要的意义。控制器是固态盘的核心技术,为了有效的保障信息安全的建设,我们只有自主掌握核心控制器技术,才能有效的在控制器内部完成数据的加密,真正透明的完成密钥和数据分离的数据存储机理研究,并形成系统级的解决方案。
发明内容
本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种固态盘数据存储的安全保护方法。
本发明解决其技术问题所采用的技术方案是:一种固态盘数据存储的安全保护方法,包括以下步骤:
1)由CA中心给存储服务提供者颁发属性证书;
2)由存储服务提供者给用户颁发属性证书;
3)当用户需要访问固态盘数据时,用户与固态盘控制器之间进行双向认证;
4)认证完成后用户对固态盘进行数据读写;
根据用户的读写请求,数据读取传输时,数据在用户和固态盘控制器之间使用流密码进行传输加密;数据存储时,用存储密钥KD对使用流密码进行传输的加密数据再次加密后保存在FLASH之中。
按上述方案,所述步骤1)中给存储服务提供者颁发属性证书的方法如下:
1.1)存储服务提供者在USBKEY中生成公私钥对,将包括公钥、服务提供者名称、证书用途在内的参数合并生成证书请求;
1.2)以PIN码为密钥参数,调用KGEN算法生成密钥KP,并用KP加密私钥保存在服务提供者的USBKEY中;所述服务提供者的USBKEY仅用做固态盘公私钥的导入,不提供公私钥的加解密和签名功能;
1.3)存储服务提供者将证书请求发送给CA中心,CA中心为存储服务提供者生成数字签名证书,即为属性证书;
1.4)存储服务提供者将自己的属性证书导入到固态盘控制器的密钥缓冲区,同时输入PIN码,将USBKEY中加密存储的私钥,直接导入到FPGA中,在FPGA内部,以PIN码为密钥参数,调用KGEN算法生成密钥KP,KP为固态盘私有数据加密密钥,并将KP作为FPGA内部密钥之一。
按上述方案,所述步骤2)中存储服务提供者给用户颁发属性证书的方法如下:
2.1)用户在用户的USBKEY中生成公私钥对,将包括公钥、用户名称、证书用途在内的参数合并成证书请求,私钥用PIN码加密后保存在用户的USBKEY中;
2.2)用户将证书请求发送给存储服务提供者,存储服务提供者在证书请求中附加上为用户分配的固态盘访问范围及其他权限信息,生成新的证书请求;
2.3)存储服务提供者将新的证书请求发送给固态盘控制器,固态盘控制器为证书生成签名,形成属性证书;
2.4)存储服务提供者将属性证书返回给用户。
按上述方案,所述步骤3)中用户与固态盘控制器之间进行双向认证的过程如下:
3.1)用户将用户属性证书和随机挑战r1发送给固态盘控制器;
3.2)固态盘控制器验证用户属性证书;
3.3)验证完成后,固态盘控制器将服务提供者属性证书,对r1和随机挑战r2使用用户公钥加密后的加密数据,附上服务提供者的签名,发送给用户;
3.4)用户验证服务提供者属性证书和签名的正确性;
3.5)验证完成后,用户将经过服务提供者公钥加密的会话秘钥KS、经过服务提供者公钥加密的KD、经过服务提供者公钥加密的r2,附上用户签名,发送给固态盘控制器;
3.6)固态盘控制器验证用户属性证书和签名的正确性,解密KS、KD;
3.7)将r1⊕r2作为流密码的向量,对“OK”字符串先用存储秘钥KD加密,传输过程中再用会话秘钥KS加密;
3.8)用户通过对字符串的解密,验证KS、KD的正确性,完成双向认证过程。
按上述方案,固态盘在使用前还包括初始化步骤:固态盘通过初始化安全工具将Flash存储区划分为全局控制区和若干个私有数据区,全局控制区存储硬盘识别参数和主引导区,不同私有数据区对应不同的用户存储区。
按上述方案,所述KGEN算法为保密的密钥生成算法,并以硬件的方式固化在USBKEY和固态盘控制器中。
本发明产生的有益效果是:
本发明为固态盘提供传输加密功能,能抵抗窃听攻击。由于存储加密和数据存储的位置相关,在不知道数据之前不能提前加密,而传输加密只和数据传送的顺序相关,所以可以在数据传输之前提前计算,本发明将传输加密和存储加密分离开来,预计算传输密钥流,在实际传送时,只需进行简单的异或操作即可,减轻了操作系统CPU负载,提高传输效率,对系统整体性能几乎不造成影响。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明实施例的固态盘控制器内部结构示意图;
图2是本发明实施例的固态盘系统结构框图;
图3是本发明实施例的用户与固态盘控制器的双向认证流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明针对当前固态盘透明加密所面临的安全威胁,首次将宿主机操作系统,固态盘固件,存储服务提供者和网络等作为不可信对象进行研究,在各种严苛条件下均能保护数据不被解密。
固态盘控制器内部结构一般如图1所示,包括ATA命令解析器、嵌入式CPU、DRAM控制器、SATA控制器、DMA控制器、Flash协处理器、加密模块、ECC编码解码电路等。接口控制器将主机的控制信号和数据信号进行分离,依据ATA/ATAPI协议对主机所发出的命令块进行解析,识别命令的类型、数据的传输模式、所需传输的数据大小、是否需要加解密操作等信息等。
对输入的数据流采用AES256进行全盘数据加解密;采用128MB的大容量缓存,使用cache优化算法,无需频繁的将数据真实的写入Flash中,而仅仅保存在cache中,将大大延长SLC Flash颗粒的寿命;使用高吞吐率BCH纠错电路,纠错能力达到7bit/512Byte;设计可用于固态硬盘和光通信的长BCH编码和解码器IP,工作频率大于100Mhz,8/16/32比特并行;采用优化的有限域乘法器设计共享异或门的消减策略功耗优化策略译码加速策略;对Flash的操作使用了Flash协处理器,这样将能够有效的针对不同的Flash颗粒的特性作出不同的处理,最大限度的发挥Flash颗粒的特性;采用多通道独立控制技术,每个Flash通道独立的控制数据存取,使固态盘的IOPS性能大大提高;采用自适应条带控制技术,对用户数据学习分析,判断用户数据的特性,智能划分数据条带,高效的存取数据;采用法拉电容保护cache数据,当掉电的时候,依靠电容中的能量将数据写回Flash,确保数据的完整性。
为了抵抗可能的安全威胁,本发明从以下四方面着手进行:
(1)在密钥管理机制上,不同用户存储区的存储密钥由用户自行掌管,仅在使用该存储区的时候,由用户通过增强的ATA协议导入到固态盘的控制器内存中,Flash存储区中不保存密钥或者密钥的加密形式。
(2)用户在访问固态盘的时候需要进行双向身份认证。固态盘通过验证用户方的数字签名确认用户身份的合法性和访问范围,用户除了验证固态盘的数字签名,还要确保固件是在固态盘的控制器内运行,而不是由攻击者假冒。
(3)在用户操作系统与硬盘控制器之间实施传输加密。传输加密的密钥动态生成,传输加密采用效率高且可预计算的流密码算法,既能抵抗窃听攻击,又不会影响系统效率。
(4)设计保密的密钥生成算法KGEN,并以硬件的方式固化在USBKEY和硬盘控制器中。这种密钥保护方式用以保护USBKEY和固态盘控制器中的私钥不被非法窃取和调用。
目前已知的安全威胁包括固态盘遗失、攻击者入侵存储服务器或者网络窃听、盗取密钥、固件刷新和拆卸固态盘。本发明所设计的固态盘安全方案,能有效抵抗上述的各种威胁,能较好地保护系统数据安全,适合个人、企业和网络存储服务等各种应用环境。
固态盘系统结构框图如图2所示。
从固态盘初始化到正常使用,需要经过如下几个步骤,形成一整套完整的安全体系。
一种固态盘数据存储的安全保护方法,包括以下步骤:
1)由CA中心给存储服务提供者颁发属性证书;
2)由存储服务提供者给用户颁发属性证书;
为存储服务提供者和用户颁发属性证书,如图3所示。
具体过程如下:
步骤1)中给存储服务提供者颁发属性证书的方法如下:
1.1)存储服务提供者在USBKEY中生成公私钥对,将包括公钥、服务提供者名称、证书用途在内的参数合并生成证书请求;
1.2)以PIN码为密钥参数,调用KGEN算法生成密钥KP,并用KP加密私钥保存在服务提供者的USBKEY中;所述服务提供者的USBKEY仅用做固态盘公私钥的导入,不提供公私钥的加解密和签名功能;
1.3)存储服务提供者将证书请求发送给CA中心,CA中心为存储服务提供者生成数字签名证书,即为属性证书;
1.4)存储服务提供者将自己的属性证书导入到固态盘控制器的密钥缓冲区,同时输入PIN码,将USBKEY中加密存储的私钥,直接导入到FPGA中,在FPGA内部,以PIN码为密钥参数,调用KGEN算法生成密钥KP,KP为固态盘私有数据加密密钥,并将KP作为FPGA内部密钥之一。。
步骤2)中存储服务提供者给用户颁发属性证书的方法如下:
2.1)用户在用户的USBKEY中生成公私钥对,将包括公钥、用户名称、证书用途在内的参数合并成证书请求,私钥用PIN码加密后保存在用户的USBKEY中;
2.2)用户将证书请求发送给存储服务提供者,存储服务提供者在证书请求中附加上为用户分配的固态盘访问范围及其他权限信息,生成新的证书请求;
2.3)存储服务提供者将新的证书请求发送给固态盘控制器,固态盘控制器为证书生成签名,形成属性证书;
2.4)存储服务提供者将属性证书返回给用户。
3)当用户需要访问固态盘数据时,用户与固态盘控制器之间进行双向认证;
用户与固态盘控制器之间进行双向认证的过程如下:
3.1)用户将用户属性证书和随机挑战r1发送给固态盘控制器;
3.2)固态盘控制器验证用户属性证书;
3.3)验证完成后,固态盘控制器将服务提供者属性证书,对r1和随机挑战r2使用用户公钥加密后的加密数据,附上服务提供者的签名,发送给用户;
3.4)用户验证服务提供者属性证书和签名的正确性;
3.5)验证完成后,用户将经过服务提供者公钥加密的会话秘钥KS、经过服务提供者公钥加密的KD、经过服务提供者公钥加密的r2,附上用户签名,发送给固态盘控制器;
3.6)固态盘控制器验证用户属性证书和签名的正确性,解密KS、KD;
3.7)将r1⊕r2作为流密码的向量,对“OK”字符串先用存储秘钥KD加密,传输过程中再用会话秘钥KS加密;
3.8)用户通过对字符串的解密,验证KS、KD的正确性,完成双向认证过程。
用户与固态盘控制器之间的双向认证可以防止任何一方假冒,同时协商会话密钥参数,该密钥用于对数据实施传输加密。
4)认证完成后用户进行数据读写;
根据用户的读写请求,数据传输时,数据在用户操作系统和固态盘控制器之间使用流密码进行传输加密;数据存储时,用存储密钥KD对使用流密码进行传输的加密数据再次加密后保存在FLASH之中。
数据在用户操作系统和固态盘控制器之间使用流密码进行传输加密,然后用存储密钥KD加密后保存在FLASH之中。(加密两次)
具体如下:
4.1)写数据
用户端以r1⊕r2,KS作为通信加密的种子和密钥,可以预计算流密钥保存在操作系统的内存中,当有数据需要写入固态盘的时候,直接用流密钥异或数据发送给固态盘的SATA接口,保证数据通信的高效性;
用户端数据到达固态盘控制器后,送入固态盘控制器的FPGA加密装置,FPGA首先用通信密钥解密,然后用存储密钥KD加密后写入FLASH;
4.2)读数据
读数据是写数据的逆过程,FLASH中的数据首先通过FPGA的KD解密,然后用会话密钥加密后传给用户,用户操作系统从流密钥缓冲区中获取流密钥与密文异或即可得到明文。
本发明有以下技术特点:
1.使用了传输加密,因此所有数据在离开用户端操作系统后即以密文方式存在,窃听者无法获取明文;
2.用户和服务提供者采用USBKEY保护其公私钥,USBKEY具有片内生成公私钥的功能,用户的私钥自生成之时起,便加密保存在USBKEY中,不能读取,服务提供者的私钥生成时加密保存在USBKEY中,导入固态盘的时候采用秘密的KGEN算法,并直接存入FPGA,因此攻击者无法获取。此外,由于服务提供者的USBKEY仅用作密钥数据的导入,即使攻击者获取了服务提供者的USBKEY也无法冒充其进行解密和数字签名;
3.一般的透明加密固态盘如果固件被强行刷新,用户和服务提供者可能都不能感知。本发明所设计的固态盘加密方案如果固件被刷新,仍然需要服务提供者从USBKEY中导入私钥,否则无法完成双向认证。由于传输密钥和数据加密密钥均保存在FPGA内,攻击者伪造的固件不能以任何方式直接获取,因此攻击者能造成的最大攻击是破坏数据,但无法解密数据;
4.固态盘拆卸后,固态盘中存储原有的外部不可读的系统数据都有可能被读取出来,加密设备也可以单独调用,对系统会造成较大的安全威胁,因此固态盘在设计安全方案的时候通常是假设固态盘本身是完整不被拆卸的。本发明这对这一情况进行了专门设计。首先非易失性存储设备例如数据FLASH区,固件存储区等都不保存密钥的明文或者密文形式,其二,FPGA密码装置掉电后即销毁其中所有密钥,即使拆卸出来,注入密钥,FPGA的外围接口也无法获取明的密钥,也不能解密获取明文数据。
通过以上分析,本发明所设计的固态盘安全方案,能有效抵抗目前已知的各种威胁,能较好地保护系统数据安全,适合个人、企业和网络存储服务等各种应用环境。
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (5)

1.一种固态盘数据存储的安全保护方法,其特征在于,包括以下步骤:
1)由CA中心给存储服务提供者颁发属性证书;
2)由存储服务提供者给用户颁发属性证书;
3)当用户需要访问固态盘数据时,用户与固态盘控制器之间进行双向认证;
所述步骤3)中用户与固态盘控制器之间进行双向认证的过程如下:
3.1)用户将用户属性证书和随机挑战r1发送给固态盘控制器;
3.2)固态盘控制器验证用户属性证书;
3.3)验证完成后,固态盘控制器将服务提供者属性证书,对r1和随机挑战r2使用用户公钥加密后的加密数据,附上服务提供者的签名,发送给用户;
3.4)用户验证服务提供者属性证书和签名的正确性;
3.5)验证完成后,用户将经过服务提供者公钥加密的会话秘钥KS、经过服务提供者公钥加密的KD、经过服务提供者公钥加密的r2,附上用户签名,发送给固态盘控制器;
3.6)固态盘控制器验证用户属性证书和签名的正确性,解密KS、KD;
3.7)将r1⊕r2作为流密码的向量,对“OK”字符串先用存储秘钥KD加密,传输过程中再用会话秘钥KS加密;
3.8)用户通过对字符串的解密,验证KS、KD的正确性,完成双向认证过程;
4)认证完成后用户对固态盘进行数据读写;
根据用户的读写请求,数据读取传输时,数据在用户和固态盘控制器之间使用流密码进行传输加密;数据存储时,用存储密钥KD对使用流密码进行传输的加密数据再次加密后保存在FLASH之中。
2.根据权利要求1所述的固态盘数据存储的安全保护方法,其特征在于,所述步骤1)中给存储服务提供者颁发属性证书的方法如下:
1.1)存储服务提供者在USBKEY中生成公私钥对,将包括公钥、服务提供者名称、证书用途在内的参数合并生成证书请求;
1.2)以PIN码为密钥参数,调用KGEN算法生成密钥KP,并用KP加密私钥保存在服务提供者的USBKEY中;所述服务提供者的USBKEY仅用做固态盘公私钥的导入,不提供公私钥的加解密和签名功能;
1.3)存储服务提供者将证书请求发送给CA中心,CA中心为存储服务提供者生成数字签名证书,即为属性证书;
1.4)存储服务提供者将自己的属性证书导入到固态盘控制器的密钥缓冲区,同时输入PIN码,将USBKEY中加密存储的私钥,直接导入到FPGA中,在FPGA内部,以PIN码为密钥参数,调用KGEN算法生成密钥KP,并将KP作为私有数据加密私钥,作为FPGA内部密钥之一。
3.根据权利要求1所述的固态盘数据存储的安全保护方法,其特征在于,所述步骤2)中存储服务提供者给用户颁发属性证书的方法如下:
2.1)用户在用户的USBKEY中生成公私钥对,将包括公钥、用户名称、证书用途在内的参数合并成证书请求,私钥用PIN码加密后保存在用户的USBKEY中;
2.2)用户将证书请求发送给存储服务提供者,存储服务提供者在证书请求中附加上为用户分配的固态盘访问范围及其他权限信息,生成新的证书请求;
2.3)存储服务提供者将新的证书请求发送给固态盘控制器,固态盘控制器为证书生成签名,形成属性证书;
2.4)存储服务提供者将属性证书返回给用户。
4.根据权利要求1所述的固态盘数据存储的安全保护方法,其特征在于,所述步骤1)之前还包括固态盘在使用前的初始化步骤:固态盘通过初始化安全工具将Flash存储区划分为全局控制区和若干个私有数据区,全局控制区存储硬盘识别参数和主引导区,不同私有数据区对应不同的用户存储区。
5.根据权利要求2所述的固态盘数据存储的安全保护方法,其特征在于,所述KGEN算法为保密的密钥生成算法,并以硬件的方式固化在USBKEY和固态盘控制器中。
CN201711176156.5A 2017-11-22 2017-11-22 固态盘数据存储的安全保护方法 Active CN107908574B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711176156.5A CN107908574B (zh) 2017-11-22 2017-11-22 固态盘数据存储的安全保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711176156.5A CN107908574B (zh) 2017-11-22 2017-11-22 固态盘数据存储的安全保护方法

Publications (2)

Publication Number Publication Date
CN107908574A CN107908574A (zh) 2018-04-13
CN107908574B true CN107908574B (zh) 2021-09-10

Family

ID=61847064

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711176156.5A Active CN107908574B (zh) 2017-11-22 2017-11-22 固态盘数据存储的安全保护方法

Country Status (1)

Country Link
CN (1) CN107908574B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020073206A1 (zh) 2018-10-09 2020-04-16 华为技术有限公司 芯片、生成私钥的方法和可信证明的方法
CN109543423B (zh) * 2018-11-05 2021-07-23 上海新时达电气股份有限公司 控制板加密和解密方式、终端设备及计算机可读存储介质
CN109766731B (zh) * 2019-01-11 2021-01-19 深圳忆联信息系统有限公司 基于固态硬盘的加密数据处理方法、装置和计算机设备
CN112084472B (zh) * 2020-08-13 2022-05-03 杭州电子科技大学 一种多用户安全存储的实时动态认证方法
CN112836221B (zh) * 2021-01-13 2024-02-06 深圳安捷丽新技术有限公司 一种多安全级别分区的便携固态硬盘及其设计方法
CN113051548A (zh) * 2021-04-23 2021-06-29 北京计算机技术及应用研究所 一种轻量无扰式的工业安全控制系统
CN114006695B (zh) * 2021-10-28 2024-02-02 杭州海康威视数字技术股份有限公司 硬盘数据保护方法、装置、可信平台芯片及电子设备
CN114978532B (zh) * 2022-05-11 2024-04-12 上海健交科技服务有限责任公司 一种面向深度学习的数据流式安全处理加速方法和装置
CN115509587B (zh) * 2022-11-22 2023-04-07 成都卫士通信息产业股份有限公司 固件升级方法、装置、电子设备及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051292A (zh) * 2007-01-08 2007-10-10 中国信息安全产品测评认证中心 一种可信u盘、实现可信u盘安全性及其与计算机数据通信的方法
CN102571754A (zh) * 2011-12-05 2012-07-11 北京交通大学 一种对可视化信息系统进行安全防护的方法
CN103404077A (zh) * 2011-06-17 2013-11-20 株式会社东芝 认证方、被认证方和认证方法
CN104301114A (zh) * 2014-10-20 2015-01-21 上海电机学院 一种面向无线射频身份识别系统的流密码双向认证方法
CN104602015A (zh) * 2014-12-31 2015-05-06 西安蒜泥电子科技有限责任公司 一种实时视频监控加密认证方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725719B2 (en) * 2005-11-08 2010-05-25 International Business Machines Corporation Method and system for generating ciphertext and message authentication codes utilizing shared hardware
US20110191587A1 (en) * 2010-02-02 2011-08-04 Futurewei Technologies, Inc. Media Processing Devices With Joint Encryption-Compression, Joint Decryption-Decompression, And Methods Thereof
US10074374B2 (en) * 2014-04-07 2018-09-11 Barco N.V. Ad hoc one-time pairing of remote devices using online audio fingerprinting
WO2016178494A1 (ko) * 2015-05-03 2016-11-10 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051292A (zh) * 2007-01-08 2007-10-10 中国信息安全产品测评认证中心 一种可信u盘、实现可信u盘安全性及其与计算机数据通信的方法
CN103404077A (zh) * 2011-06-17 2013-11-20 株式会社东芝 认证方、被认证方和认证方法
CN102571754A (zh) * 2011-12-05 2012-07-11 北京交通大学 一种对可视化信息系统进行安全防护的方法
CN104301114A (zh) * 2014-10-20 2015-01-21 上海电机学院 一种面向无线射频身份识别系统的流密码双向认证方法
CN104602015A (zh) * 2014-12-31 2015-05-06 西安蒜泥电子科技有限责任公司 一种实时视频监控加密认证方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
辫子群公钥密码系统和量子密码分析技术研究;汤学明;《中国博士学位论文全文数据库 信息科技辑》;20080315(第03期);I136-25 *

Also Published As

Publication number Publication date
CN107908574A (zh) 2018-04-13

Similar Documents

Publication Publication Date Title
CN107908574B (zh) 固态盘数据存储的安全保护方法
CN104951409B (zh) 一种基于硬件的全盘加密系统及加密方法
WO2020192406A1 (zh) 数据存储、验证方法及装置
KR100996784B1 (ko) 공개 키 암호화에 기초한 데이터의 저장 및 검색을 위한, 컴퓨팅 장치에서 구현되는 방법, 시스템 및 복수의 명령어를 저장하는 하나 이상의 컴퓨터 판독가능 매체
CN102646077B (zh) 一种基于可信密码模块的全盘加密的方法
CN109361668A (zh) 一种数据可信传输方法
CN112560058B (zh) 基于智能密码钥匙的ssd分区加密存储系统及其实现方法
JP2000151583A (ja) アクセス資格認証方法および装置ならびに証明用補助情報作成方法および装置
CN104956620B (zh) 用于验证和密钥交换的方法、装置和计算机可读存储媒体
CN101582109A (zh) 数据加密方法及装置、数据解密方法及装置、固态硬盘
CN111614467B (zh) 系统后门防御方法、装置、计算机设备和存储介质
CN110233729B (zh) 一种基于puf的加密固态盘密钥管理方法
CN107911221B (zh) 固态盘数据安全存储的密钥管理方法
CN110837634B (zh) 基于硬件加密机的电子签章方法
US11088832B2 (en) Secure logging of data storage device events
US20230409700A1 (en) Systems and methods for managing state
CN101127013A (zh) 加密移动存储设备及其数据存取方法
Hu Study of file encryption and decryption system using security key
KR101327193B1 (ko) 사용자 접근추적이 가능한 이동식 저장매체 보안 방법
CN108985079B (zh) 数据验证方法和验证系统
CN110443070A (zh) 多主机共享存储系统及数据完整性保护方法
CN117811734B (zh) 业务源码加密存储与评估与鉴权方法
CN116451188B (zh) 一种软件程序运行安全保护方法、系统以及存储介质
Yashiro et al. T-Kernel/SS: a secure filesystem with access control protection using tamper-resistant chip
CN118551351A (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