CN116886356B - 一种芯片级透明文件加密存储系统、方法及设备 - Google Patents
一种芯片级透明文件加密存储系统、方法及设备 Download PDFInfo
- Publication number
- CN116886356B CN116886356B CN202310809959.9A CN202310809959A CN116886356B CN 116886356 B CN116886356 B CN 116886356B CN 202310809959 A CN202310809959 A CN 202310809959A CN 116886356 B CN116886356 B CN 116886356B
- Authority
- CN
- China
- Prior art keywords
- key
- encryption
- chip
- file
- algorithm
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000006870 function Effects 0.000 claims abstract description 35
- 230000008569 process Effects 0.000 claims abstract description 18
- 238000012795 verification Methods 0.000 claims abstract description 13
- 238000012545 processing Methods 0.000 claims abstract description 4
- 238000004422 calculation algorithm Methods 0.000 claims description 101
- 238000005192 partition Methods 0.000 claims description 23
- 230000007246 mechanism Effects 0.000 claims description 14
- 230000006378 damage Effects 0.000 claims description 9
- 238000009795 derivation Methods 0.000 claims description 7
- 240000005499 Sasa Species 0.000 claims description 6
- 230000008901 benefit Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 4
- 150000003839 salts Chemical class 0.000 claims description 4
- 230000006978 adaptation Effects 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 abstract description 4
- 238000007726 management method Methods 0.000 description 42
- 238000010586 diagram Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 230000007547 defect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000036541 health Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000004146 energy storage Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Abstract
本发明属于信息安全领域,公开了一种芯片级透明文件加密存储系统、方法及设备。本发明在现有通用存储芯片架构的基础上,实现基于芯片级的加密存储功能。用户(应用程序)无需参与密码管理、签名验签、加解密处理等过程,实现数据的加密存储;在EMMC/UFS存储芯片内分区,设定安全存储区域,并进行访问控制管理,明文存储区域和密文存储区域可编程大小分割,并将加密的数据存储在密文存储区域。
Description
技术领域
本发明属于信息安全领域,尤其涉及一种芯片级透明文件加密存储系统、方法及设备。
背景技术
数据安全存储是发展数字经济的基石,在信创发展需求下,国产化存储和芯片级数据安全存储正称为关注的热点。近年来信息泄露事件层出不穷,尤其是美国芯片制造商美光科技被曝存在安全隐患,对我国关键信息基础设施供应链造成重大安全风险,引起了社会的高度重视,为保证信息安全,IT信创建设势在必行。
信息安全的三个基本要素:机密性、完整性、可用性。eMMC/UFS的写保护目的是确保数据的可用性,不能满足数据存储的机密性。目前没有一种芯片硬件加密存储的eMMC/UFS存储方案,随着数据安全法和个人信息保护法等法律的实施,对于存储数据的加密需求凸显。芯片级文件存储加解密解决方案可以从需求和芯片现状切入,最优化的解决目前的安全需求和芯片现状矛盾的问题,此问题尤其是在安卓、PC机等操作系统上更为迫切。
现有的数据加密技术主要分为软件加密和硬件加密两种方式。软件加密是指通过软件实现数据加密和解密,例如使用加密算法来对数据进行加密。硬件加密是指使用专门的硬件模块来实现数据加密和解密,例如使用芯片级加密模块来对数据进行加密。下面分别分析这两种方式的缺陷和技术问题:
1.软件加密的缺陷和技术问题:
(1)安全性不高:软件加密的安全性依赖于加密算法和密钥的保护,如果加密算法或密钥被攻击者获取,加密的数据就会暴露。
(2)性能不高:软件加密需要占用系统资源,加解密过程可能会影响存储设备的性能。
(3)灵活性不高:软件加密通常只能对整个文件进行加解密,而不能对部分数据进行加解密。这在一些特定的场景下可能会限制用户的使用。
2.硬件加密的缺陷和技术问题:
(1)成本较高:硬件加密需要使用专门的硬件模块来实现加密和解密,这增加了硬件成本。
(2)难以维护:硬件加密模块通常需要进行更新,这需要对硬件进行维护。而且,一旦硬件模块出现故障,就需要更换整个存储设备。
(3)适用范围有限:硬件加密模块通常只能针对特定的存储设备进行加密和解密,不能对所有存储设备进行加密和解密。
综上所述,软件加密和硬件加密都存在一定的缺陷和技术问题。设计一种新的芯片级透明文件加密存储系统需要综合考虑这些问题,并在安全性、性能、灵活性、成本等方面进行全面优化。
发明内容
针对现有技术存在的问题,本发明提供了一种芯片级透明文件加密存储系统、方法及设备。
本发明是这样实现的,一种芯片级透明文件加密存储系统,该系统包括:
云密码管理系统,使用密码机配合统一密码服务系统实现,密码机提供密钥保护、密钥生成、密码运算服务功能,统一密码服务系统连接底层专用硬件设备密码机,实现密钥的管理,并且根据设备信息生成设备需求的根密钥,并对外根据设备的信息提供密钥从密码机的调用,密码机国密算法支持SM2/3/4/9,可以生成芯片需要的各种密钥;进而实现全国密算法的支持;
透明文件加解密系统,实现在传统的Linux文件系统架构框架内,增加了基础密码算法和一套软件SDK,结合EMMC/UFS芯片内的安全存储区域,实现对上层应用无感透明的文件加密存储功能,在不改变接口的情况,应用程序几乎可以无感的操作文件加解密;
密钥分级管理系统,设备端采用密码卡(TEE/加密芯片)作为设备端的密钥管理中心(CKMC),设备安全密钥存储区域作为一个密钥管理中心(CKMC)负责设备端的根密钥的存储,密钥的扩展、密钥的分发、密钥的销毁等整个密钥生命周期的管理;
安全芯片分区加密,SACSA是在EMMC/UFS存储芯片内部开辟的一块安全访问控制的存储区域,它通过内置在存储芯片(EMMC/UFS)内部的HMAC、SHA-256算法和WriteCounter来保证保存在该区域内部的数据不被非法篡改,在实际应用中,SACSA分区通常用来保存安全相关的数据,该功能为系统提供身份验证和重放保护,提供了对重放保护模块的签名访问,并且系统以授权和重放保护的方式将数据存储到一个专门的区域,身份验证密钥存储在安全区域,调用和算法执行必须在安全的环境下执行,身份密钥用于消息验证码的生成,采用的算法是HMAC-SHA256,使用随机数生成和计数寄存器提供额外的保护防止消息重播。
进一步,所述密钥的导入导出都需要进行加密和解密,实现传输过程的加密:具体的利用公钥对根密钥进行加密,密文通过安全信道传输到密码卡,密码卡对利用私钥对加密的根密钥进行解密,解密后得到根密钥的密文,并写入设备端密钥管理中心,完成根密钥写入。
进一步,所述透明文件加解密系统加密过程具体如下:
首先使用open系统调用打开文件,open的参数中包含文件的路径名和文件名;open所返回的文件描述符作为参数,使用write写入数据;进入内核空间,调用虚拟文件系统和文件系统原有的write方法;再调用驱动层写方法之前,先调用SDK加密流程,并执行一套签名验签流程,确定合法操作,最后再通过驱动写入芯片的安全存储区域;使用完文件之后,用close系统调用关闭文件,避免资源的泄露。
进一步,所述透明文件加解密系统解密过程具体如下:
首先使用open系统调用打开文件,open的参数中包含文件的路径名和文件名;open所返回的文件描述符作为参数,使用read读出数据;进入内核空间,调用虚拟文件系统和文件系统原有的read方法;再调用驱动层的读方法之前,调用SDK签名验签流程确定合法操作后,再从芯片的安全存储区域读出数据并解密;使用完文件之后,用close系统调用关闭文件,避免资源的泄露。
进一步,所述密钥分级管理系统中密钥的扩展的方式利用真随机数作为种子通过密钥派生函数KDF生成,并输入其他标识信息、随机性信息(salt)、其他信息(例如计数器)生成对应密码算法需要的密钥长度,KDF一般采用对称密钥算法或者杂凑算法实现。
进一步,所述密钥管理的方法使用主密钥、密钥加密密钥、数据加密密钥。
主密钥:用于对系统中重要的、关键信息进行签名或加密,位于封闭系统密钥体系的最高层,数量少、周期最长、安全性要求最高;
密钥加密密钥:用于加密会话密钥的密钥,位于封闭系统的中间层,数量相对较多,有一定的使用周期,安全性要求较高;
数据加密密钥:也叫会话密钥,用于对通信内容、数据进行加密,位于密钥层次结构的底层,数量最多,安全性要求一般。
进一步,所述安全芯片分区加密引入安全的密钥生成机制和密钥管理机制,利用软硬件结合的方式实现高效处理的能力,在存储层划分安全区域结和加密芯片,实现在适配层通过开发高效的标准算法ASE、基于SHA-256的HMAC、数字签名算法、国密算法SM2/3/4,利用系统处理器调用相应加解密SDK执行加密和解密任务,加密后存储在密文存储区域。
进一步,所述加密算法通常有两个输入:密钥和明文本身;所述密钥只是一个具有预定长度的数字,理想情况下,每个密钥都是真正的随机数(TRNG),这意味着任何可能的密钥组合都是同等可能的,并且密钥无法以可预测的方式生成。
本发明实施例提供一种实施所述芯片级透明文件加密存储系统的芯片级透明文件加密存储方法,该方法包括:
(1)利用云密码管理系统,使用密码机配合统一密码服务系统实现,密码机提供密钥保护、密钥生成、密码运算服务功能,统一密码服务系统连接底层专用硬件设备密码机,实现密钥的管理,并且根据设备信息生成设备需求的根密钥,并对外根据设备的信息提供密钥从密码机的调用,密码机国密算法支持SM2/3/4/9,可以生成芯片需要的各种密钥;进而实现全国密算法的支持;
(2)利用透明文件加解密系统,实现在传统的Linux文件系统架构框架内,增加了基础密码算法和一套软件SDK,结合EMMC/UFS芯片内的安全存储区域,实现对上层应用无感透明的文件加密存储功能,在不改变接口的情况,应用程序几乎可以无感的操作文件加解密;
(3)利用密钥分级管理系统,设备端采用密码卡(TEE/加密芯片)作为设备端的密钥管理中心(CKMC),设备安全密钥存储区域作为一个密钥管理中心(CKMC)负责设备端的根密钥的存储,密钥的扩展、密钥的分发、密钥的销毁等整个密钥生命周期的管理;
(4)利用安全芯片分区加密,SACSA是在EMMC/UFS存储芯片内部开辟的一块安全访问控制的存储区域,它通过内置在存储芯片(EMMC/UFS)内部的HMAC、SHA-256算法和WriteCounter来保证保存在该区域内部的数据不被非法篡改,在实际应用中,SACSA分区通常用来保存安全相关的数据,该功能为系统提供身份验证和重放保护,提供了对重放保护模块的签名访问,并且系统以授权和重放保护的方式将数据存储到一个专门的区域,身份验证密钥存储在安全区域,调用和算法执行必须在安全的环境下执行,身份密钥用于消息验证码的生成,采用的算法是HMAC-SHA256,使用随机数生成和计数寄存器提供额外的保护防止消息重播。
本发明实施例提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述芯片级透明文件加密存储方法的步骤。
结合上述的技术方案和解决的技术问题,本发明所要保护的技术方案所具备的优点及积极效果为:
第一、针对上述现有技术存在的技术问题,解决问题之后带来的一些具备创造性的技术效果。具体描述如下:
(1)简单易用的芯片级文件加解密系统。本发明旨在芯片级实现数据的安全加解密,在eMMC/UFS存储芯片内分区,结合密钥管理机制、文件加解密等密码安全解决方案,封装复杂的算法和过程,对外仅暴露接口,便可完成复杂的文件加解密过程,简单易用,大大提升程序安全开发效率。用户(应用程序)无需参与密码管理、签名验签、加解密处理等过程,也可实现文件(数据)的加解密。
(2)全生命周期的密钥管理机制。本发明设计完备、安全的密钥管理机制,采用分层密钥管理机制和密钥派生算法结合,实现根密钥的存储、密钥的扩展、分发、销毁等整个密钥生命周期的管理,既提供安全无虞的密钥管理、又支撑密码算法的安全应用。进一步实现了,通过管理少量的密钥加密密钥实现大量数据加密密钥的使用和管理,减轻了密钥管理中心的工作负荷,另外,安全存储中心对数据使用HMAC进行完整性校验,保证了数据的机密性和完整性。
第二,本发明在现有通用存储芯片架构的基础上,实现基于芯片级的加密存储功能。用户(应用程序)无需参与密码管理、签名验签、加解密处理等过程,在eMMC/UFS存储芯片内分区,设定安全存储区域,并进行访问控制管理,明文存储区域和密文存储区域分离,并将加密的数据存储在密文存储区域。
第三,作为本发明的权利要求的创造性辅助证据,还体现在以下几个重要方面:
(1)本发明的技术方案转化后的预期收益和商业价值为:
本发明为芯片级透明文件加解密系统,旨在为用户提供更简单易用的、芯片级的加密系统。其商业价值体现在:一方面,发明内容可应用在信创体系下,对关键信息基础设施提供安全存储能力,构建数据安全基础设施,填补芯片级安全存储行业的空白;另一方面,发明内容可为用户/开发人员提供简单易用的文件加密接口,提高密码安全程序的开发效率。
(2)本发明的技术方案填补了国内外业内技术空白:
基于芯片级加密存储方案,目前国内外几乎很少,也没有一个通用的规范和标准,本发明从芯片设计出发,在存储区域划分为明文存储区域和密文存储区域,并通过不同的写入接口进行区分。同时在密码算法支持层面,即支持主流的国际算法,同样也支持我国的国密算法。
(3)本发明的技术方案是否解决了人们一直渴望解决、但始终未能获得成功的技术难题:
芯片级加密存储始终未能有效的解决,普遍的办法是在系统层面或者利用软件实现加密的存储,但是这个层面的密钥调用会使得密钥安全层级较低,只要黑客或者攻击者攻破软件或者系统那么就可以拿到密钥,解密我们的消息。
附图说明
图1是本发明实施例提供的芯片加密系统框图;
图2是本发明实施例提供的设备根密钥分发流程;
图3是本发明实施例提供的加密存储文件系统架构图;
图4是本发明实施例提供的文件加密存储写入过程;
图5是本发明实施例提供的文件读取解密过程;
图6是本发明实施例提供的密钥扩展示意图;
图7是本发明实施例提供的安全存储区域数据的读取流程;
图8是本发明实施例提供的安全存储区域数据的写入流程;
图9是本发明实施例提供的消息认证框图;
图10是本发明实施例提供的密钥分层管理示意图;
图11是本发明实施例提供的数据加密流程图;
图12是本发明实施例提供的数据解密流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供了一种芯片级透明文件加密存储系统、方法及设备,简称“安全存储芯片”,下面结合附图对本发明作详细的描述。
如图1所示,本发明实施例提供的芯片级透明文件加密存储系统包括:
(1)云密码管理系统,使用密码机配合统一密码服务系统实现,密码机提供密钥保护、密钥生成、密码运算服务功能,统一密码服务系统连接底层专用硬件设备密码机,实现密钥的管理,并且根据设备信息生成设备需求的根密钥,并对外根据设备的信息提供密钥从密码机的调用,密码机国密算法支持SM2/3/4/9,可以生成芯片需要的各种密钥。实现全国密算法的支持。其中密钥的导入导出都需要进行加密和解密,实现传输过程的加密:具体的利用公钥对根密钥进行加密,密文通过安全信道传输到密码卡,密码卡对利用私钥对加密的根密钥进行解密,解密后得到根密钥的密文,并写入设备端密钥管理中心,完成根密钥写入,流程如图2所示。
(2)透明文件加解密系统,实现在传统的Linux文件系统架构框架内,增加了基础密码算法和一套软件SDK,结合EMMC/UFS芯片内的安全存储区域,结构如图3所示,实现对上层应用无感透明的文件加密存储功能。在不改变接口的情况,应用程序几乎可以无感的操作文件加解密。
加密过程如4所示:首先使用open系统调用打开文件,open的参数中包含文件的路径名和文件名;open所返回的文件描述符作为参数,使用write写入数据;进入内核空间,调用虚拟文件系统和文件系统原有的write方法;再调用驱动层写方法之前,先调用SDK加密流程,并执行一套签名验签流程,确定合法操作,最后再通过驱动写入芯片的安全存储区域;使用完文件之后,用close系统调用关闭文件,避免资源的泄露。
解密过程如图5所示首先使用open系统调用打开文件,open的参数中包含文件的路径名和文件名;open所返回的文件描述符作为参数,使用read读出数据;进入内核空间,调用虚拟文件系统和文件系统原有的read方法;再调用驱动层的读方法之前,调用SDK签名验签流程确定合法操作后,再从芯片的安全存储区域读出数据并解密;使用完文件之后,用close系统调用关闭文件,避免资源的泄露。
(3)密钥分级管理系统,设备端采用密码卡(TEE/加密芯片)作为设备端的密钥管理中心(CKMC),设备安全密钥存储区域作为一个密钥管理中心(CKMC)负责设备端的根密钥的存储,密钥的扩展、密钥的分发、密钥的销毁等整个密钥生命周期的管理。密钥扩展的方式利用真随机数作为种子通过密钥派生函数KDF生成,并输入其他标识信息、随机性信息(salt)、其他信息(例如计数器)生成对应密码算法需要的密钥长度,KDF一般采用对称密钥算法或者杂凑算法实现,本发明使用基于SM3/SM4的国密算法构造KDF算法。
管理密钥的方法使用三层密钥结构“根密钥、密钥加密密钥、数据加密密钥。
主密钥(MasterKey):用于对系统中重要的、关键信息进行签名或加密,位于封闭系统密钥体系的最高层。数量少、周期最长、安全性要求最高。
密钥加密密钥KEK(Key-encryptionKeys):用于加密会话密钥的密钥,位于封闭系统的中间层。数量相对较多,有一定的使用周期,安全性要求较高。
数据密钥(Data-encryption Key):也叫会话密钥,用于对通信内容、数据进行加密,位于密钥层次结构的底层,数量最多,安全性要求一般。
(4)安全芯片分区加密,SACSA是security access control storage area(安全访问控制存储区)的简称,在EMMC/UFS存储芯片内部开辟的一块安全访问控制的存储区域,它通过内置在存储芯片(EMMC/UFS)内部的HMAC、SHA-256算法和Write Counter来保证保存在该区域内部的数据不被非法篡改。在实际应用中,SACSA分区通常用来保存安全相关的数据。该功能为系统提供身份验证和重放保护,提供了对重放保护模块的签名访问,并且系统以授权和重放保护的方式将数据存储到一个专门的区域。身份验证密钥存储在安全区域,调用和算法执行必须在安全的环境下执行,身份密钥用于消息验证码的生成,采用的算法是HMAC-SHA256,使用随机数生成和计数寄存器提供额外的保护防止消息重播。
下面结合具体实施例对本发明的技术方案作进一步描述。
实施例1
芯片加密存储解决方案中,密钥的安全性是数据安全的核心,本发明引入安全的密钥生成机制和密钥管理机制,利用软硬件结合的方式实现高效处理的能力,在存储层划分安全区域结和加密芯片,在适配层通过开发高效的标准算法ASE、基于SHA-256的HMAC、数字签名算法、国密算法SM2/3/4,利用系统处理器调用相应加解密SDK执行加密和解密任务,并根据是否加解密存储在不同的分区。
本发明引入加密芯片或者通过密码机生成然后在设备初始化的时候写入设备,通过真随机数作为种子然后利用伪随机数(PRNG)生成算法生成加密算法需要的密钥。存储到明文存储分区的数据操作流程和原来不变;存储到密文存储分区的数据,都使用加密密钥对数据进行加密,采用对称加密算法,解密密钥和加密密钥相同。采用的加密算法:支持HMAC-SHA256、AES-CBC、AES-XTS、HMAC-SM3、SM4……控制器连接eMMC存储区域和加密算法的输入和输出,加密算法的密钥输入通过从密钥安全存储区域调取。支持分区加密引擎的芯片加密框图如图1所示。
本发明在传统的Linux文件系统架构框架内,增加了基础密码算法和一套软件SDK,结合EMMC/UFS芯片内的安全存储区域,实现对上层应用无感透明的文件加密存储功能。在不改变接口的情况,应用程序几乎可以无感的操作文件加解密。文件系统架构如图3所示。本发明支持的算法包括SM2/3/4、AES、RSA、HMAC以及用户指定的专用加密算法。
文件加密存储写入过程如图4所示:首先使用open系统调用打开文件,open的参数中包含文件的路径名和文件名;open所返回的文件描述符作为参数,使用write写入数据;进入内核空间,调用虚拟文件系统和文件系统原有的write方法;再调用驱动层写方法之前,先调用SDK加密流程,并执行一套签名验签流程,确定合法操作,最后再通过驱动写入芯片的安全存储区域;使用完文件之后,用close系统调用关闭文件,避免资源的泄露。
文件读取解密过程如图5所示:首先使用open系统调用打开文件,open的参数中包含文件的路径名和文件名;open所返回的文件描述符作为参数,使用read读出数据;进入内核空间,调用虚拟文件系统和文件系统原有的read方法;再调用驱动层的读方法之前,调用SDK签名验签流程确定合法操作后,再从芯片的安全存储区域读出数据并解密;使用完文件之后,用close系统调用关闭文件,避免资源的泄露。
加密的文件存储在一个安全控制访问存储区,SACSA是security access controlstorage area(安全访问控制存储区)的简称,在eMMC/UFS存储芯片内部开辟的一块安全访问控制的存储区域,它通过内置在存储芯片(eMMC/UFS)内部的HMAC、SHA-256算法和WriteCounter来保证保存在该区域内部的数据不被非法篡改。在实际应用中,SACSA分区通常用来保存安全相关的数据。该功能为系统提供身份验证和重放保护,提供了对重放保护模块的签名访问,并且系统以授权和重放保护的方式将数据存储到一个专门的区域。身份验证密钥存储在安全区域,调用和算法执行必须在安全的环境下执行,身份密钥用于消息验证码的生成,采用的算法是HMAC-SHA256,使用随机数生成和计数寄存器提供额外的保护防止消息重播。
具体的,制造商会为每一个产品生产一个唯一的256bits的Secure Key,烧写到eMMC的OTP区域(只能烧写一次的区域),同时Host在安全区域中(例如:TEE、加密芯片、加密卡)也会保留该Secure Key。在Emmc/UFS内部,还有一个Write Counter。每进行一次合法的写入操作时,Write Counter就会自动加一。通过Secure Key和Write Counter的应用,SACSA可以实现数据读取和写入的Replay Protect。
SACSA数据读取的流程如图7所示具体如下:
Host向eMMC发起读SACSA的请求,同时生成一个16bytes的随机数,发送给eMMC。
Emmc/UFS将请求的数据从SACSA中读出,并使用Secure Key通过HMAC SHA-256算法,计算读取到的数据和接收到的随机数拼接到一起后的签名。然后,eMMC/UFS将读取到的数据、接收到的随机数、计算得到的签名一并发送给Host。
Host接收到SACSA的数据、随机数以及签名后,首先比较随机数是否与自己发送的一致,如果一致,再用同样的Secure Key通过HMAC SHA-256算法对数据和随机数组合到一起进行签名,如果签名与eMMC发送的签名是一致的,那么就可以确定该数据是从SACSA中读取到的正确数据,而不是攻击者伪造的数据。
通过上述的读取流程,可以保证Host正确的读取到SACSA的数据。
SACSA数据写入的流程如图8所示具体如下:
Host按照上面的读数据流程,读取SACSA的Write Counter。
Host将需要写入的数据和Write Counter拼接到一起并计算签名,然后将数据、Write Counter以及签名一并发给eMMC。
eMMC接收到数据后,先对比Write Counter是否与当前的值相同,如果相同那么再对数据和Write Counter的组合进行签名,然后和Host发送过来的签名进行比较,如果签名相同则鉴权通过,将数据写入到SACSA中。
通过上述的写入流程,可以保证SACSA不会被非法篡改。
如图9消息认证所示:SACSA通过对称密钥进行认证,其中Host和设备中存储和使用相同的认证密钥,因此也有叫共享密钥,在设备初始化时,Host将认证密钥写入设备的安全存储区域,然后Host和设备使用相同的密钥进行签名和认证,对消息进行消息认证码计算。SACSA重放保护的基本思想是确保每一条消息都是唯一的,设备管理一个只读计数器,每写入一条消息计数器自动递增,并且包含在计算消息认证码中。通过HMAC-SHA256计算,其中其输入:密钥、消息、写入计数、随机数。输出一个消息认证码MAC,长度256比特(32字节)嵌入到SACSA中。
系统采用密码机+统一密码服务平台对系统中所有设备根密钥的统一集中管理,包括设备根密钥的生成、下发、注销等生命周期管理。设备端采用密码卡(TEE/加密芯片)作为设备端的密钥管理中心(CKMC),设备安全密钥存储区域作为一个密钥管理中心(CKMC)负责设备端的根密钥的存储,密钥的扩展、密钥的分发、密钥的销毁等整个密钥生命周期的管理。
密钥管理中心的根密钥,需要一个真随机数,对于真随机数的生成,本发明选择使用专用硬件生成根密钥的方式,同时密码芯片或者密码卡具有同样的功能,将真随机数作为设备的根密钥,其中根密钥的保护级别最高,而且根密钥永远不出密钥存储区域,利用根密钥生成用于对称加密、非对称加密、非对称签名、HMAC等需要的密钥,密钥的长度根据算法的需求具有不同的长度。并把生成不同的密钥同步给需要进行密码算法计算的子密钥管理中心。
上述的专用硬件是具有国家密码局认证的密码机,并配合统一密码服务系统实现,密码机提供密钥保护、密钥生成、密码运算服务功能,统一密码服务系统连接底层专用硬件设备密码机,实现密钥的管理,并且根据设备信息生成设备需求的根密钥,并对外根据设备的信息提供密钥从密码机的调用,密码机国密算法支持SM2/3/4/9,可以生成芯片需要的各种密钥。实现全国密算法的支持。其中密钥的导入导出都需要进行加密和解密,实现传输过程的加密:具体的利用公钥对根密钥进行加密,密文通过安全信道传输到密码卡,密码卡对利用私钥对加密的根密钥进行解密,解密后得到根密钥的密文,并写入设备端密钥管理中心,完成根密钥写入,具体流程如图2所示。
密钥扩展的方式利用真随机数作为种子通过密钥派生函数KDF生成,并输入其他标识信息、随机性信息(salt)、其他信息(例如计数器)生成对应密码算法需要的密钥长度,KDF一般采用对称密钥算法或者杂凑算法实现,本发明使用基于SM3/SM4的国密算法构造KDF算法,派生过程如图6所示。
管理密钥的方法使用三层密钥结构如图10所示分别是:主密钥(根密钥)、密钥加密密钥、数据加密密钥。
主密钥(MasterKey):用于对系统中重要的、关键信息进行签名或加密,位于封闭系统密钥体系的最高层。数量少、周期最长、安全性要求最高。
密钥加密密钥KEK(Key-encryptionKeys):用于加密会话密钥的密钥,位于封闭系统的中间层。数量相对较多,有一定的使用周期,安全性要求较高。
数据密钥(Data-encryption Key):也叫会话密钥,用于对通信内容、数据进行加密,位于密钥层次结构的底层,数量最多,安全性要求一般。
数据加密密钥(DEK)通过密钥加密密钥(KEK)进行加密,KEK存储在安全密钥存储区域,该存储区域专门存储密钥的分区。只需要存储少量的KEK就可以管理大量的DEK,针对不同的应用可以使用不同的密钥进行加密也可以使用相同的密钥进行加密,多个用户可以使用同一个DEK加密。DEK通过KEK进行封装,将封装的DEK可以和数据块保存在一起,如果需要对芯片内存储的数据进行加密检索,则可以检索封装的DEK,密钥库可以通过KEK解密DEK,然后得到DEK的明文形式对数据进行解密并验证器完整性。
国际上一般的KEK是通过基于AES-256的伪随机数(PRNG)生成的,同时DEK也采用AES-256或AES-128标准的KEK进行封装,为了安全和国密应用,本发明使用AES-256和SM3/4作为伪随机数生成算法,使用AES-256和SM4对DEK进行封装。
本发明使用一种或者多种加密机制以静态方式对存储在eMMC/UFS内加密区域的数据进行加密。使用上述的数据加密密钥DEK对数据进行加密,然后将密文数据写入eMMC/UFS的加密存储区域。
如图11加密流程图所示:采用AES加密算法对静态数据进行加密,密钥使用DEK,加密算法使用AES-256,并进一步开发国密SM4应用,数据加密过程是应用传输的明文数据通过调用密码算法SDK和DEK对数据进行加密,加密后的数据和DEK密文打包通过安全通道传输的加密存储区域,解密过程是发出调用数据请求,根据索引找到加密存储区域存储的密文,KEK解密出DEK后用DEK对数据进行解密,解密后得到明文返回应用。
如图12解密流程图所示:整个加解密使用多层加密机制来保护数据。这种加密机制提高了数据保护的荣誉度,能够根据应用的需求进行加密方法选择。每个数据都有一个标识,并且利用计数器对存储的次数进行计数。每个应用的数据只能该应用进行访问。加强数据安全性和隐私性。
SACSA采用的安全协议是带有私钥的哈希消息验证码技术,实现对安全区域的所有读写操作进行标记。SACSA使用对称密钥进行身份验证,其中Host和设备中存储和使用相同的认证密钥,因此也有叫共享密钥,在设备初始化时,Host将认证密钥写入设备的安全存储区域,然后Host和设备使用相同的密钥进行签名和认证,对消息进行消息认证码计算。SACSA重放保护的基本思想是确保每一条消息都是唯一的,设备管理一个只读计数器,每写入一条消息计数器自动递增,并且包含在计算消息认证码中。通过HMAC-SHA256计算,其中其输入:密钥、消息、写入计数、随机数。输出一个消息认证码MAC,长度256比特(32字节)嵌入到SACSA中。
eMMC将读取的数据和MAC一起发送给Host,Host接收到消息并使用对称密钥生成一个新的MAC与发送的MAC进行比对,如果完全相同Host才会信任eMMC读取的数据。为了防止重放,在向SACSA写入数据时,会将计数器的计数值一同写入。
对比部分(实验/仿真/其他产品对比/)
现有的存储芯片eMMC/UFS不具备芯片级动态区域划分加密存储功能,本发明提出了一种存储芯片加密,并且加密存储区域可以通过参数动态设置。通常的系统采用同一个密钥对数据进行加解密管理,本发明使用了分层密钥管理机制和密钥派生算法结合,实现了一种管理少量密钥在使用时派生数据加密密钥对数据进行加密和密钥管理,并且对数据使用HMAC进行完整性校验。保证数据的机密性和完整性。
本发明实施例提供一种实施所述芯片级透明文件加密存储系统的芯片级透明文件加密存储方法,该方法包括:
(1)利用云密码管理系统,使用密码机配合统一密码服务系统实现,密码机提供密钥保护、密钥生成、密码运算服务功能,统一密码服务系统连接底层专用硬件设备密码机,实现密钥的管理,并且根据设备信息生成设备需求的根密钥,并对外根据设备的信息提供密钥从密码机的调用,密码机国密算法支持SM2/3/4/9,可以生成芯片需要的各种密钥;进而实现全国密算法的支持;
(2)利用透明文件加解密系统,实现在传统的Linux文件系统架构框架内,增加了基础密码算法和一套软件SDK,结合EMMC/UFS芯片内的安全存储区域,实现对上层应用无感透明的文件加密存储功能,在不改变接口的情况,应用程序几乎可以无感的操作文件加解密;
(3)利用密钥分级管理系统,设备端采用密码卡(TEE/加密芯片)作为设备端的密钥管理中心(CKMC),设备安全密钥存储区域作为一个密钥管理中心(CKMC)负责设备端的根密钥的存储,密钥的扩展、密钥的分发、密钥的销毁等整个密钥生命周期的管理;
(4)利用安全芯片分区加密,SACSA是在EMMC/UFS存储芯片内部开辟的一块安全访问控制的存储区域,它通过内置在存储芯片(EMMC/UFS)内部的HMAC、SHA-256算法和WriteCounter来保证保存在该区域内部的数据不被非法篡改,在实际应用中,SACSA分区通常用来保存安全相关的数据,该功能为系统提供身份验证和重放保护,提供了对重放保护模块的签名访问,并且系统以授权和重放保护的方式将数据存储到一个专门的区域,身份验证密钥存储在安全区域,调用和算法执行必须在安全的环境下执行,身份密钥用于消息验证码的生成,采用的算法是HMAC-SHA256,使用随机数生成和计数寄存器提供额外的保护防止消息重播。
本发明实施例提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述芯片级透明文件加密存储方法的步骤。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
确具备很大的优势,下面内容结合试验过程的数据、图表等进行描述。
本发明具有一定的开创性,市场调研几乎没有类似产品,与本发明功能类似的实现都是通过软件的形式在系统层面实现,例如安卓系统的加密存储;Windows系统的加密硬盘软件,通过对硬盘进行虚拟分区,利用AES对分区内的存储数据进行加密;以上这些都是纯软件的形式实现的加密存储,另外得一微提出支持ASE的AES IP实现对eMMC的加密,但是得一微加密仅支持AES,不能实现对国密的算法的兼容。具体的功能和优缺点比对如下表
目前现有的eMMC加密存储方案很少,少有的几个方案,例如得一微的加密方案仅支持AES加密,本发明方案从密钥生成,密钥扩展,密钥分发,密钥更新的密钥管理全生命周期进行了芯片系统的适配设计,并且加密和解密对于用户层来说是无感的,并且本发明在信创,国产化背景下,实现了国密算法SM4的兼容,并且eMMC中使用的HMAC-SHA-256,我们也进行了SM3的设计兼容,实现了整个存储的机密性和完整性都通过了国密算法的实现。
本发明的实施不仅可以通过加密SDK+硬件加密接口实施,也可以通过IP硬件加密+硬件加密接口实现。上述的方案安全性比较,密码的安全从一个方面讲是密钥的安全,基于软件实现的加密SDK,调用密钥是在系统层级或者应用层级,这样密钥在系统或者应用被攻击后容易泄露,而本发明的密钥是在一个专门的硬件分区上只有固定的硬件指令才能调用密钥,所以密钥的安全性高于安卓加密存储方案和Windows硬盘加密存储方案。
以下是两个具体的实施例:
实施例1:一家金融公司需要保护其敏感数据,如客户信息和交易记录。应用该芯片级透明文件加密存储系统后,金融公司可实现以下功能:
1.通过云密码管理系统,金融公司可以高效地管理密钥,同时支持国密算法(如SM2/3/4/9)以满足不同的加密需求。
2.使用透明文件加解密系统,金融公司可以在不改变现有应用程序接口的前提下,无感地对敏感数据进行加密存储,保护客户信息和交易记录的安全。
3.金融公司可以利用密钥分级管理系统对密钥进行安全和灵活的管理,确保密钥在整个生命周期内得到有效保护。
4.通过安全芯片分区加密,金融公司可以为系统提供身份验证和重放保护,确保敏感数据在安全存储区域内不被非法篡改。
实施例2:一家医疗机构需要确保患者的个人健康信息(PHI)得到充分保护。应用该芯片级透明文件加密存储系统后,医疗机构可实现以下功能:
1.通过云密码管理系统,医疗机构可以集中管理密钥,同时支持国密算法(如SM2/3/4/9)以应对不同加密场景。
2.使用透明文件加解密系统,医疗机构可以在不修改现有应用程序接口的情况下,无感地对患者的个人健康信息进行加密存储,确保数据安全。
3.医疗机构可以利用密钥分级管理系统对密钥进行安全和灵活的管理,保证密钥在整个生命周期内得到妥善保护。
4.通过安全芯片分区加密,医疗机构可以为系统提供身份验证和重放保护,确保患者个人健康信息在安全存储区域内不被非法篡改。
以上实施例展示了该芯片级透明文件加密存储系统在金融公司和医疗机构的应用,它们共同为高效、安全、无感的文件加密存储功能提供了保障。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (8)
1.一种芯片级透明文件加密存储系统,其特征在于,通过密码机配合统一密码服务系统实现,提供密钥保护、密钥生成、密码运算服务功能;在传统的Linux文件系统架构框架内,增加基础密码算法和一套软件SDK,结合EMMC/UFS芯片内的安全存储区域,实现对上层应用无感透明的文件加密存储功能;设备端采用密码卡作为设备端的密钥管理中心,负责设备端根密钥的存储、密钥的扩展、密钥的分发、密钥的销毁等整个密钥生命周期的管理;SACSA分区是在EMMC/UFS存储芯片内部开辟的一块安全访问控制的存储区域,通过内置的HMAC、SHA-256算法和WriteCounter保证数据不被非法篡改;
该系统包括:
云密码管理系统,使用密码机配合统一密码服务系统实现,密码机提供密钥保护、密钥生成、密码运算服务功能,统一密码服务系统连接底层专用硬件设备密码机,实现密钥的管理,并且根据设备信息生成设备需求的根密钥,并对外根据设备的信息提供密钥从密码机的调用,密码机国密算法支持SM2/3/4/9,可以生成芯片需要的各种密钥;进而实现全国密算法的支持;
透明文件加解密系统,实现在传统的Linux文件系统架构框架内,增加了基础密码算法和一套软件SDK,结合EMMC/UFS芯片内的安全存储区域,实现对上层应用无感透明的文件加密存储功能,在不改变接口的情况,应用程序几乎可以无感的操作文件加解密;
密钥分级管理系统,设备端采用密码卡TEE/加密芯片作为设备端的密钥管理中心CKMC,设备安全密钥存储区域作为一个密钥管理中心CKMC负责设备端的根密钥的存储,密钥的扩展、密钥的分发、密钥的销毁等整个密钥生命周期的管理;
安全芯片分区加密,SACSA是在EMMC/UFS存储芯片内部开辟的一块安全访问控制的存储区域,它通过内置在存储芯片EMMC/UFS内部的HMAC、SHA-256算法和WriteCounter来保证保存在该区域内部的数据不被非法篡改,在实际应用中,SACSA分区通常用来保存安全相关的数据,该功能为系统提供身份验证和重放保护,提供了对重放保护模块的签名访问,并且系统以授权和重放保护的方式将数据存储到一个专门的区域,身份验证密钥存储在安全区域,调用和算法执行必须在安全的环境下执行,身份密钥用于消息验证码的生成,采用的算法是HMAC-SHA256,使用随机数生成和计数寄存器提供额外的保护防止消息重播;
所述密钥的导入导出都需要进行加密和解密,实现传输过程的加密:具体的利用公钥对根密钥进行加密,密文通过安全信道传输到密码卡,密码卡对利用私钥对加密的根密钥进行解密,解密后得到根密钥的密文,并写入设备端密钥管理中心,完成根密钥写入。
2.如权利要求1所述芯片级透明文件加密存储系统,其特征在于,所述透明文件加解密系统加密过程具体如下:
首先使用open系统调用打开文件,open的参数中包含文件的路径名和文件名;open所返回的文件描述符作为参数,使用write写入数据;进入内核空间,调用虚拟文件系统和文件系统原有的write方法;再调用驱动层写方法之前,先调用SDK加密流程,并执行一套签名验签流程,确定合法操作,最后再通过驱动写入芯片的安全存储区域;使用完文件之后,用close系统调用关闭文件,避免资源的泄露。
3.如权利要求1所述芯片级透明文件加密存储系统,其特征在于,所述透明文件加解密系统解密过程具体如下:
首先使用open系统调用打开文件,open的参数中包含文件的路径名和文件名;open所返回的文件描述符作为参数,使用read读出数据;进入内核空间,调用虚拟文件系统和文件系统原有的read方法;再调用驱动层的读方法之前,调用SDK签名验签流程确定合法操作后,再从芯片的安全存储区域读出数据并解密;使用完文件之后,用close系统调用关闭文件,避免资源的泄露。
4.如权利要求1所述芯片级透明文件加密存储系统,其特征在于,所述密钥分级管理系统中密钥的扩展的方式利用真随机数作为种子通过密钥派生函数KDF生成,并输入其他标识信息、随机性信息salt、其他信息生成对应密码算法需要的密钥长度,所述其他信息指计数器,KDF一般采用对称密钥算法或者杂凑算法实现。
5.如权利要求1所述芯片级透明文件加密存储系统,其特征在于,所述密钥管理的方法使用主密钥、密钥加密密钥、数据加密密钥;
主密钥:用于对系统中重要的、关键信息进行签名或加密,位于封闭系统密钥体系的最高层,数量少、周期最长、安全性要求最高;
密钥加密密钥:用于加密会话密钥的密钥,位于封闭系统的中间层,数量相对较多,有一定的使用周期,安全性要求较高;
数据加密密钥:也叫会话密钥,用于对通信内容、数据进行加密,位于密钥层次结构的底层,数量最多,安全性要求一般。
6.如权利要求1所述芯片级透明文件加密存储系统,其特征在于,所述安全芯片分区加密引入安全的密钥生成机制和密钥管理机制,利用软硬件结合的方式实现高效处理的能力,在存储层划分安全区域结和加密芯片,实现在适配层通过开发高效的标准算法ASE、基于SHA-256的HMAC、数字签名算法、国密算法SM2/3/4,利用系统处理器调用相应加解密SDK执行加密和解密任务,加密后存储在密文存储区域;
加密算法通常有两个输入:密钥和明文本身;所述密钥只是一个具有预定长度的数字,理想情况下,每个密钥都是真正的随机数TRNG,这意味着任何可能的密钥组合都是同等可能的,并且密钥无法以可预测的方式生成。
7.一种实施如权利要求1-6任意一项所述芯片级透明文件加密存储系统的芯片级透明文件加密存储方法,其特征在于,该方法包括:
(1)利用云密码管理系统,使用密码机配合统一密码服务系统实现,密码机提供密钥保护、密钥生成、密码运算服务功能,统一密码服务系统连接底层专用硬件设备密码机,实现密钥的管理,并且根据设备信息生成设备需求的根密钥,并对外根据设备的信息提供密钥从密码机的调用,密码机国密算法支持SM2/3/4/9,可以生成芯片需要的各种密钥;进而实现全国密算法的支持;
(2)利用透明文件加解密系统,实现在传统的Linux文件系统架构框架内,增加了基础密码算法和一套软件SDK,结合EMMC/UFS芯片内的安全存储区域,实现对上层应用无感透明的文件加密存储功能,在不改变接口的情况,应用程序几乎可以无感的操作文件加解密;
(3)利用密钥分级管理系统,设备端采用密码卡TEE/加密芯片作为设备端的密钥管理中心CKMC,设备安全密钥存储区域作为一个密钥管理中心CKMC负责设备端的根密钥的存储,密钥的扩展、密钥的分发、密钥的销毁等整个密钥生命周期的管理;
(4)利用安全芯片分区加密,SACSA是在EMMC/UFS存储芯片内部开辟的一块安全访问控制的存储区域,它通过内置在存储芯片EMMC/UFS内部的HMAC、SHA-256算法和WriteCounter来保证保存在该区域内部的数据不被非法篡改,在实际应用中,SACSA分区通常用来保存安全相关的数据,该功能为系统提供身份验证和重放保护,提供了对重放保护模块的签名访问,并且系统以授权和重放保护的方式将数据存储到一个专门的区域,身份验证密钥存储在安全区域,调用和算法执行必须在安全的环境下执行,身份密钥用于消息验证码的生成,采用的算法是HMAC-SHA256,使用随机数生成和计数寄存器提供额外的保护防止消息重播。
8.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求7所述芯片级透明文件加密存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310809959.9A CN116886356B (zh) | 2023-07-04 | 2023-07-04 | 一种芯片级透明文件加密存储系统、方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310809959.9A CN116886356B (zh) | 2023-07-04 | 2023-07-04 | 一种芯片级透明文件加密存储系统、方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116886356A CN116886356A (zh) | 2023-10-13 |
CN116886356B true CN116886356B (zh) | 2024-02-02 |
Family
ID=88254048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310809959.9A Active CN116886356B (zh) | 2023-07-04 | 2023-07-04 | 一种芯片级透明文件加密存储系统、方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116886356B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111723383A (zh) * | 2019-03-22 | 2020-09-29 | 阿里巴巴集团控股有限公司 | 数据存储、验证方法及装置 |
CN112000975A (zh) * | 2020-10-28 | 2020-11-27 | 湖南天琛信息科技有限公司 | 一种密钥管理系统 |
CN113420309A (zh) * | 2021-07-01 | 2021-09-21 | 广东工业大学 | 基于国密算法的轻量化数据保护系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8386797B1 (en) * | 2002-08-07 | 2013-02-26 | Nvidia Corporation | System and method for transparent disk encryption |
US8161527B2 (en) * | 2009-01-23 | 2012-04-17 | Edward Curren | Security Enhanced Data Platform |
-
2023
- 2023-07-04 CN CN202310809959.9A patent/CN116886356B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111723383A (zh) * | 2019-03-22 | 2020-09-29 | 阿里巴巴集团控股有限公司 | 数据存储、验证方法及装置 |
CN112000975A (zh) * | 2020-10-28 | 2020-11-27 | 湖南天琛信息科技有限公司 | 一种密钥管理系统 |
CN113420309A (zh) * | 2021-07-01 | 2021-09-21 | 广东工业大学 | 基于国密算法的轻量化数据保护系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116886356A (zh) | 2023-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020238255A1 (zh) | 基于区块链的智能合约管理方法及装置、电子设备 | |
US20200167503A1 (en) | Managing a smart contract on a blockchain | |
CN110032885B (zh) | 区块链中实现隐私保护的方法、节点和存储介质 | |
WO2020233623A1 (zh) | 结合交易类型和判断条件的收据存储方法和节点 | |
CN110266467B (zh) | 基于区块高度实现动态加密的方法及装置 | |
WO2020233638A1 (zh) | 结合代码标注与交易类型的收据存储方法和节点 | |
WO2020233615A1 (zh) | 结合用户类型与事件函数类型的收据存储方法和节点 | |
WO2020233625A1 (zh) | 结合用户类型和判断条件的收据存储方法和节点 | |
WO2020233635A1 (zh) | 结合多类型维度的条件限制的收据存储方法和节点 | |
WO2020233628A1 (zh) | 结合事件函数类型和判断条件的收据存储方法和节点 | |
WO2020233637A1 (zh) | 结合代码标注与用户类型的收据存储方法和节点 | |
WO2020233624A1 (zh) | 结合交易类型和事件函数类型的收据存储方法和节点 | |
WO2020233610A1 (zh) | 结合代码标注与用户、事件类型的收据存储方法和节点 | |
WO2020233630A1 (zh) | 基于用户类型的收据存储方法和节点 | |
JP2020535693A (ja) | 記憶データ暗号化/復号化装置及び方法 | |
CN111612462B (zh) | 区块链中实现隐私保护的方法、节点和存储介质 | |
CN102567688B (zh) | 一种安卓操作系统上的文件保密系统及其保密方法 | |
WO2020233619A1 (zh) | 结合用户类型与交易类型的收据存储方法和节点 | |
WO2020233632A1 (zh) | 基于事件函数类型的收据存储方法和节点 | |
CN112560058B (zh) | 基于智能密码钥匙的ssd分区加密存储系统及其实现方法 | |
WO2020233627A1 (zh) | 多类型维度的收据存储方法和节点 | |
CN110276610B (zh) | 基于交易偏移量实现动态加密的方法及装置 | |
WO2020233634A1 (zh) | 结合交易与事件类型的条件限制的收据存储方法和节点 | |
WO2020233633A1 (zh) | 基于判断条件的收据存储方法和节点 | |
CN110059497B (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 |